Skip to content
Back to skills

Threejs Primitive Reconstructor

ASecurity

create robust, browser-runnable three.js primitive reconstructions from static low-poly, voxel, isometric, or stylized game-art reference images. use when the user asks to turn an image or prompt into a three.js/html asset, generate a primitive-only scene, debug non-rendering three.js output, or produce a reusable prompt/template for low-poly three.js reconstruction.

  • 1,587 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added May 26, 2026
developmentpythonreactrailsdebugging

Security analysis

A100/100

Pro scans all 5 files and shows the line behind each finding

Scanned May 27, 2026

npx -y skills add jasonkneen/tiny-world-builder --skill threejs-primitive-reconstructor --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Threejs Primitive Reconstructor?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Threejs Primitive Reconstructor
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/jasonkneen-threejs-primitive-reconstructor/badge)](https://www.skillsdirectory.com/skills/jasonkneen-threejs-primitive-reconstructor)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: threejs-primitive-reconstructor
description: create robust, browser-runnable three.js primitive reconstructions from static low-poly, voxel, isometric, or stylized game-art reference images. use when the user asks to turn an image or prompt into a three.js/html asset, generate a primitive-only scene, debug non-rendering three.js output, or produce a reusable prompt/template for low-poly three.js reconstruction.
---

# Three.js Primitive Reconstructor

## Core workflow

Use this skill to generate a reliable single-file Three.js HTML scene from a low-poly, voxel, isometric, or stylized 3D reference image.

1. Inspect the reference image visually before coding.
2. Produce a short analysis inventory in the response and include the same inventory as a comment block at the top of the script.
3. Generate one plain `.html` file, not React, JSX, iframe, or `srcDoc`.
4. Use only primitive geometry: `BoxGeometry`, `CylinderGeometry`, `ConeGeometry`, `SphereGeometry`, `Group`, and `MeshStandardMaterial`.
5. Use the import-map loading pattern from `assets/threejs-scene-template.html`.
6. Keep objects aligned to integer or half-integer tile coordinates when reconstructing grid-based scenes.
7. Add soft shadows, matte materials, and an immediate camera view where the asset is visible without user adjustment.
8. When the user reports a loading or rendering error, first replace CDN/import patterns and wrappers with the robust plain HTML template in `assets/threejs-scene-template.html`.

## Required analysis inventory

Before the code, summarize:

1. Camera and framing: projection feel, camera type, azimuth/elevation, crop/centering.
2. Palette: 8-15 hex colors visible in the reference.
3. Ground/podium: grid size, tile size, base thickness, grass variation, water/path positions.
4. Structures: type, grid position, footprint, height, wall/roof colors, distinguishing features.
5. Nature: trees, bushes, flowers, rocks, grass tufts, size variation.
6. Farm/details: crops, stairs, doors, windows, fence rails, small props.
7. Sky/atmosphere: sky color, fog, clouds/smoke.
8. Animation: optional rotation, drifting clouds, rising smoke, water shimmer.

## Coding rules

- Use one self-contained `.html` file.
- Use an import map with `unpkg.com` exactly as shown in `assets/threejs-scene-template.html`.
- Import with `import * as THREE from 'three'` and `OrbitControls` from `three/addons/controls/OrbitControls.js`.
- Do not use `esm.sh`, `cdn.jsdelivr`, relative Three.js module paths, React, JSX, iframe, or `srcDoc`.
- Do not use external assets, textures, GLTF, OBJ, FBX, SVG, or postprocessing.
- Use `MeshStandardMaterial` throughout; default `roughness: 1` and `metalness: 0`.
- Set `renderer.outputColorSpace = THREE.SRGBColorSpace`.
- Enable `renderer.shadowMap.enabled = true` and `THREE.PCFSoftShadowMap`.
- Add a resize listener.
- Append `renderer.domElement` directly to `document.body`.
- Keep comments sentence case.
- Keep the generated file under roughly 500 lines unless the user asks for more detail.

## Reference and template files

- Read `references/reconstruction-prompt.md` when the user wants the reusable prompt or prompt wording.
- Use `assets/threejs-scene-template.html` as the starting point for generated HTML.
- Use `scripts/write_scene_from_template.py` only when a quick local template copy is useful; customize the copied file afterward.

## Debugging non-rendering output

If a generated scene does not render:

1. Remove React, JSX, iframe, and `srcDoc` wrappers.
2. Replace module imports with the import-map pattern in the template.
3. Confirm the file is served through a local server, for example `python3 -m http.server 8000`, then opened at `http://localhost:8000/scene.html`.
4. Confirm `renderer.domElement` is appended to `document.body`.
5. Confirm the camera points at the asset and the object is near the origin.
6. Simplify animation until a static render works.

## Cottage reference shortcut

For the cropped cottage reference, reconstruct:

- A 5 by 5 floating grass tile island with a brown dirt base.
- A front-left water strip slightly below grass level.
- One warm yellow cottage centered slightly back-left.
- A bright blue hipped roof with dark blue ridge/caps.
- A tall chimney with four rising smoke puffs.
- A brown front door, cyan windows with dark frames, and exterior stone stairs on the right.
- A wooden fence around the front/right/back of the yard.
- Grass tufts, small white/yellow flowers, sky-blue background, soft shadows, and matte materials.

Files in this skill

  • SKILL.md4.4 KB
  • agents/openai.yaml206 B
  • assets/threejs-scene-template.html5.2 KB
  • references/reconstruction-prompt.md4.6 KB
  • scripts/write_scene_from_template.py687 B

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.