Threejs Debug Profiler
From threejs-game-skills by @majidmanzarpour · View on GitHub
Debug and profile Three.js browser games. Combines scene debugging, render/runtime/loading/animation/resize/mobile input fixes, performance profiling, draw calls, triangles, textures, memory, shader/post-processing cost, bundle size, and mobile DPR/input issues.
This skill ships inside the threejs-game-skills package. Install the package to get this skill plus everything else in the bundle.
sv install majidmanzarpour/threejs-game-skillsThree.js Debug Profiler
Purpose
Find root causes and optimize measured bottlenecks without breaking playability.
Debug Workflow
Load references/debug-profile-checklists.md as the first action when debugging render/runtime/mobile issues, asset loading, audio loading/playback, animation, resize, input, blank canvas, physics/collision bugs, or profiling performance. Track it in a reference ledger with yes/no, path, and failure reason. Do not mark the debug/profile phase complete while this reference is skipped for debug or profiling work.
Load references/checklists/scene-debugging.md for render/runtime bug diagnosis, references/checklists/performance-profile.md for profiling work, and references/checklists/mobile-input.md for mobile render/input issues. Load references/prompt-templates.md only when the user asks for reusable debug/profile prompts or a task template.
- Reproduce locally.
- Read console/page/network errors.
- Check canvas display size and drawing-buffer size.
- Check renderer/context/loop ownership.
- Check camera, aspect, near/far, lights, materials, fog, scene contents, transforms.
- Check asset paths/loaders/CORS/base path.
- Check animation delta units, physics/update order, fixed timestep, collider/body ownership, input listeners, pointer/touch behavior, resize, and audio context unlock/decode errors when audio is involved.
- Fix root cause in owning module.
- Verify browser screenshot, nonblank canvas, console/page errors, and broken path.
Performance Workflow
- Reproduce in correct build mode.
- Record baseline: FPS/frame time, draw calls, triangles, geometries, textures, memory, bundle.
- Identify CPU/GPU/memory/network bottleneck.
- Optimize one thing at a time: instancing, shared resources, culling, LOD, DPR cap, cheaper shadows/post, texture discipline.
- Re-measure same scenario and verify visuals/playability.
Final Response
Lead with root cause or bottleneck. Report the reference ledger, checklist items used, files changed, baseline/post metrics, commands, screenshots/artifacts, broken paths retested, and residual risks.