Skip to content
cccskills
FreePublished on GitHub

3d-object

Create a 3D object with three.js, inspect it from every angle in an interactive viewer, and download it as OBJ + MTL or GLB for use in other 3D applications.

OriginalShow the original description

three.js model, downloadable as OBJ or GLB

Works withBlender
See how to install

Good for

  • Create a 3D object and inspect it from every angle
  • Export a model for further editing in Blender
  • Review an object's silhouette and materials

Files included (1)

  • SKILL.md4.2 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

3D object

Model a 3D object the user can inspect from every angle and download, built with three.js and presented in the three_d_stage starter.

START by calling copy_starter_component with kind: "three_d_stage.js" — it is the whole viewer: studio lighting, ground shadow, orbit controls, an auto-framed camera, and a toolbar that downloads the object as OBJ + MTL or GLB. Read the copied file's usage block and follow its page skeleton exactly. You only write the model-building module script.

Build the page as plain HTML — a .html file with ordinary <script> tags — even when the project's other designs are .dc.html Design Components: DC restricts scripts to <helmet>, which races the stage's mount and can't host this skeleton.

Load three.js ONLY through this exact pinned import map, in <head>, before any module script. Do not change versions, URLs, or hashes, do not add other copies of three.js, and do not import addons beyond the three listed — the map is deliberately a closed set, so anything else fails to resolve rather than loading unverified:

<script type="importmap"> { "imports": { "three": "https://unpkg.com/three@0.184.0/build/three.module.js", "three/addons/controls/OrbitControls.js": "https://unpkg.com/three@0.184.0/examples/jsm/controls/OrbitControls.js", "three/addons/exporters/OBJExporter.js": "https://unpkg.com/three@0.184.0/examples/jsm/exporters/OBJExporter.js", "three/addons/exporters/GLTFExporter.js": "https://unpkg.com/three@0.184.0/examples/jsm/exporters/GLTFExporter.js" }, "integrity": { "https://unpkg.com/three@0.184.0/build/three.module.js": "sha384-8FCZ1eVO6it4+pbec2aDtnTrwjWXZLJRC+MAGCIPDgsYnUrl/E0A2YlF8ioMKI/J", "https://unpkg.com/three@0.184.0/build/three.core.js": "sha384-dw2ooPewaEIrAgl6oFDBmmBWCE9oW9LxRGcfwZ0hLvEprzo202wXl7vCYHRlSnOT", "https://unpkg.com/three@0.184.0/examples/jsm/controls/OrbitControls.js": "sha384-4rziNxOBZKQ69i+w+f89KJ55TCYquwchVbByQwmaOeIOXdOU2PLDn3kOfXHwIJC9", "https://unpkg.com/three@0.184.0/examples/jsm/exporters/OBJExporter.js": "sha384-nbwtoZENJD3Vq+ACK0CuGQdPMuDWHkamC2KJD70EV5nfg6jQjfppKOea07YJN+N3", "https://unpkg.com/three@0.184.0/examples/jsm/exporters/GLTFExporter.js": "sha384-VofkvpG6HERhFCYbsUOHeNXBCqID2nfqkQqnVzE1jc/oPcz+qJ13ADdXH08hE+cQ" } } </script>

Build the model programmatically, as a THREE.Group composed of named parts:

  • Compose primitives (BoxGeometry, CylinderGeometry, SphereGeometry, TorusGeometry, LatheGeometry, ExtrudeGeometry with Shape) before reaching for raw BufferGeometry; real objects decompose into far more primitives than you'd guess.
  • NAME every mesh and every material ("hull", "walnut", "brass") — the names become the o / usemtl entries in the exported OBJ and the node names in the GLB, which is what makes the download usable in Blender.
  • Use MeshStandardMaterial with a small curated palette (3-5 materials, shared across parts); set roughness/metalness deliberately. Textures don't survive the OBJ export — prefer geometry and material color over texture detail.
  • Model in real-world meters, y-up, centered on the origin, base resting at the lowest y. Offset deliberately coplanar faces by ~0.001 so nothing z-fights.
  • Curved surfaces need enough segments to read as smooth at full screen (32+ radial segments on feature surfaces), but don't tessellate what no one will see.

The stage's toolbar gives the user OBJ + MTL (universal, geometry + per-material colors) and GLB (the modern interchange format — keeps the part hierarchy and PBR materials; imports cleanly into Blender, Maya, Cinema 4D, Unity, Unreal). Those two are the export formats on offer — when the user asks for something else (FBX, USDZ, STEP), say plainly that the stage exports OBJ + MTL and GLB.

Iterate with screenshots: the stage keeps its last frame readable, so the ordinary screenshot tools capture the live canvas — no extra steps. After editing a module file, reload with show_html before screenshotting (the iframe caches already-loaded modules). Look at the object from the default framing and refine silhouette, proportion, and material separation — the silhouette carries the object.

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

action-items

FreeSummary

Maintain a private task list with deadlines, next steps, waiting parties, and blockers. Update progress and dependencies, merge duplicate items, and archive closed tasks so ongoing commitments stay clear and easy to follow.

  • Record tasks and commitments with deadlines
  • Track pending replies and reasons work cannot proceed
  • Update task dependencies when prerequisites are completed
asgeirtj/system_prompts_leaks69.9KUpdated Oct 16, 2026

agents

FreeSummary

Coordinate a task from a verifiable goal through completion. Handle work directly or split independent tasks across separate agent sessions, track progress, verify results, and arrange pull request merging when included in the goal.

  • Split independent tasks across agents
  • Check progress across ongoing tasks
  • Resume a previously started project
asgeirtj/system_prompts_leaks69.9KUpdated Oct 16, 2026

animated-video

FreeSummary

Create animated HTML pages with smooth scene transitions and playback controls. An editable timeline lets users adjust scene lengths and speeds, with fixed landscape or portrait layouts prepared for video export.

  • Create an animated product walkthrough
  • Explain a message through moving text and graphics
  • Build a portrait animation for video export
asgeirtj/system_prompts_leaks69.9KUpdated Oct 16, 2026

apple_healthkit

FreeSummary

Review synced Apple Health records, including steps, heart rate, sleep, and workouts. Retrieve daily summaries or detailed samples for a chosen period, and check sync status and missing data before interpreting the results.

  • Review daily steps and heart rate over time
  • Check sleep stages, duration, and awakenings
  • Review workout duration, distance, and calories
asgeirtj/system_prompts_leaks69.9KUpdated Oct 16, 2026

Create and edit Word documents and templates, reorganize text, replace images, and work with tracked changes or comments. Apply proper headings and lists, then render every page to check its appearance before delivery.

  • Create a structured Word document
  • Reorganize content in an existing document
  • Replace images or text in a document
asgeirtj/system_prompts_leaks69.9KUpdated Oct 16, 2026

Create or revise Markdown files for notes, README files, meeting minutes, and documentation. Organize content with headings, lists, and suitable tables, then read the finished file to check formatting and remove unfinished content.

  • Create a project README
  • Turn meeting notes into minutes
  • Revise a Markdown manual
asgeirtj/system_prompts_leaks69.9KUpdated Oct 16, 2026

See all skills by asgeirtj

Report a problem with this skill