Skills for Real Engineers. Straight from my .agents directory.
threejs-performance
Agent skill fromstaruhub/ClaudeSkills
Three.js 性能优化指南。当 Three.js/React Three Fiber 项目出现掉帧、内存增长、加载缓慢、绘制调用过多,或需要迁移 WebGPU、实现大规模粒子/实例化渲染、配置资源压缩管线时使用。触发关键词:"Three.js 优化"、"WebGPU"、"draw calls"、"内存泄漏"、"TSL"、"InstancedMesh"、"R3F 优化"等。不用于:通用 React 性能问题(用 vercel-react-best-practices)、WebGL/Three.js 入门教学、3D 美术资产的制作本身。
How to install threejs-performance
npx skills add staruhub/ClaudeSkills# or add only this skill to Claude Code: copy the folder
skills/Geek-skills-threejs-performance/
# into
~/.claude/skills/Geek-skills-threejs-performance/ (all projects)
.claude/skills/Geek-skills-threejs-performance/ (one project)
1# Three.js 性能优化指南23## 黄金法则45**绘制调用 < 100 次/帧。** 三角形数量不如绘制调用数量重要;超过 500 次绘制调用,强大 GPU 也会吃力。用 `renderer.info.render.calls` 监控(完整监控代码见 `references/examples.md`)。67## 诊断决策树89| 症状 | 先查 | 深入 |10|------|------|------|11| 掉帧、卡顿 | `renderer.info.render.calls` 是否 >100 | 实例化/合批(下文),后处理链 |12| 内存持续增长 | `renderer.info.memory` 的 geometries/textures 计数是否只增不减 | dispose 铁律(下文),`references/examples.md` 完整清理代码 |13| 加载慢、显存爆 | 模型是否未压缩 | `references/assets.md` 压缩管线 |14| 粒子/物理瓶颈 | CPU 粒子是否 >5 万 | WebGPU 计算着色器,`references/webgpu.md` |15| R3F 项目莫名重渲染 | useFrame 里是否 setState | R3F 三规则(下文) |1617## 各领域规则速查1819### WebGPU:何时迁移20绘制调用密集掉帧 / 需要计算着色器做物理粒子(CPU 约 5 万上限,GPU 可达数百万)/ 复杂后处理链卡顿。21`WebGPURenderer` 必须 `await renderer.init()`。TSL 写一次自动编译 WGSL/GLSL。22浏览器支持下限(记录时点数据,现查 caniuse 为准):Chrome/Edge 113+,Firefox 141+,Safari 26+。23初始化回退、TSL 完整指南、计算着色器示例:`references/webgpu.md`。2425### 绘制调用优化26- 大量**相同**几何体(树、石头)→ `InstancedMesh`:1000 棵树 = 1 次绘制27- 多个**不同**几何体共享材质 → `BatchedMesh`28- 静态小物件 → `mergeGeometries` 合并29- 材质**共享复用**,永远不要在循环里 `new Material`3031### 资源压缩(收益数字)32- Draco 几何体压缩:体积减 90-95%33- KTX2 纹理:GPU 内存约降 10 倍34- 一条命令:`gltf-transform optimize model.glb out.glb --texture-compress ktx2 --compress draco`35- 解码器路径配置与 Meshopt/Draco 选型:`references/assets.md`3637### 内存铁律38**Three.js 不会自动回收 GPU 资源。** 移除对象必须:geometry.dispose() + 遍历 material 的所有 texture 属性逐个 dispose + material.dispose();GLTF 的 ImageBitmap 还要 `texture.source.data.close()`。频繁增删对象用对象池。完整代码:`references/examples.md`。3940### 着色器三规则41…
Excerpt shown under the repository's MIT license.
More skills in ClaudeSkills
Similar skill repositories
An agentic skills framework & software development methodology that works.
Public repository for Agent Skills
An AI skill that provides design intelligence for building professional UI/UX across multiple platforms.
Persistent Context Across Sessions for Every Agent – Captures everything your agent does during sessions, compresses it with AI, and injects relevant context back into future sessions. Works with Claude Code, OpenClaw, Codex, Gemini, Hermes, Copilot, OpenCode + More
Production-grade engineering skills for AI coding agents.
