threejs
Use when building or debugging interactive 3D scenes on the web with Three.js (scene/camera/renderer, lights/materials, GLTF loading, controls, performance). Helpful for designers shipping 3D UI moments.
DeepseekModel
官方收录技能
质量 优秀 · 90
v1.0.0
获取
https://deepseekmodel.com/api/download.php?id=mengto-skills-agent-skills-web-design-threejs-skill-md&format=skill
下载 .skill
标准格式,含 system_prompt 与 model_config,导入任意 Agent 框架即可使用
.skill 文件中 system_prompt 字段的实际内容。
name threejs description Use when building or debugging interactive 3D scenes on the web with Three.js (scene/camera/renderer, lights/materials, GLTF loading, controls, performance). Helpful for designers shipping 3D UI moments. Three.js — WebGL 3D Scenes Skill When to use Real 3D: product spins, interactive hero scenes, shaders/material effects, 3D data viz You need full control beyond “background effects” You can budget time for asset pipeline + performance tuning Core mental model Create: Scene (root graph) Camera (Perspective/Orthographic) Renderer ( WebGLRenderer ) Mesh = Geometry + Material Lights (if using non-unlit materials) Render loop: requestAnimationFrame(animate) Update time-based animations, controls, mixers, then renderer.render(scene, camera) Key APIs/patterns Setup: const renderer = new THREE.WebGLRenderer({ canvas, antialias, alpha }) renderer.setSize(width, height, false) renderer.setPixelRatio(Math.min(window.devicePixelRatio, 2)) Camera: camera.aspect = width / height; camera.updateProjectionMatrix() Scene graph: scene.add(object) / object.position/rotation/scale Loading assets: GLTFLoader (models), TextureLoader (images), DRACOLoader (compressed glTF) Controls (common): OrbitControls (debug/product), PointerLockControls (FPS), custom pointer handlers Cleanup (important in SPAs): geometry.dispose() , material.dispose() , texture.dispose() , renderer.dispose() Remove event listeners; cancel RAF. Common pitfalls Not handling resize → stretched/cropped rendering Too high devicePixelRatio → mobile GPU meltdown Leaking WebGL resources (not disposing) → crashes after route changes Loading huge textures/models → slow start; use compressed textures, Draco/KTX2, smaller maps Using too many lights/shadows → expensive; fake lighting with baked textures when possible Quick recipes 1) Minimal spinning cube import * as THREE from "three" ; const canvas = document . querySelector ( "#c" ); const renderer = new THREE . WebGLRenderer ({ canvas, antialias : true , alpha : true }); const scene = new THREE . Scene (); const camera = new THREE . PerspectiveCamera ( 45 , 1 , 0.1 , 100 ); camera. position . set ( 0 , 0 , 4 ); const geom = new THREE . BoxGeometry ( 1 , 1 , 1 ); const mat = new THREE . MeshStandardMaterial ({ color : 0x7c3aed }); const mesh = new THREE . Mesh (geom, mat); scene. add (mesh); scene. add ( new THREE . AmbientLight ( 0xffffff , 0.8 )); const dir = new THREE . DirectionalLight ( 0xffffff , 0.8 ); dir. position . set ( 2 , 2 , 2 ); scene. add (dir); function resize ( ) { const w = canvas. clientWidth ; const h = canvas. clientHeight ; renderer. setSize (w, h, false ); renderer. setPixelRatio ( Math . min ( window . devicePixelRatio , 2 )); camera. aspect = w / h; camera. updateProjectionMatrix (); } window . addEventListener ( "resize" , resize); resize (); function animate ( t ) { mesh. rotation . y = t * 0.0006 ; renderer. render (scene, camera); requestAnimationFrame (animate); } requestAnimationFrame (animate); 2) Respect reduced motion If prefers-reduced-motion: reduce , render a still frame (no RAF) or slow updates. What to ask the user Is this decorative (hero) or functional 3D (product viewer)? Target devices: mobile? older iPhones? Asset format availability (glTF, HDRI, textures) and file size constraints Accessibility/reduced motion requirements
Agent 识别该技能的关键词,点击任意一个即可复制。
该技能未提供触发词。
下载的 .skill 包内含以下字段。
| 字段 | 说明 |
|---|---|
| format | 格式标识(skill/v1) |
| skill_id | 技能唯一 ID |
| name | 技能名称 |
| version | 版本号 |
| description | 技能描述 |
| category | 所属分类(数组) |
| trigger_words | 触发词列表 |
| tags | 标签列表 |
| source | 来源标识 |
| source_url | 来源链接(本页地址) |
| exported_at | 导出时间(每次下载生成) |
| system_prompt | 系统提示词正文 |
| model_config | 模型参数:provider / model / temperature / max_tokens / top_p |
| examples | 示例 |
| install_guide | 各平台导入说明(Coze / Dify / Claude / 自定义框架) |