active-plans/_source-material/asset-pipeline/assetsplanning/pipeline/stolenfromcodex/game-studio/b1986b3d3da5bb8a04d3cb1e69af5a29bb5c2c04/skills/three-webgl-game/SKILL.md
Implement browser-game runtimes with plain Three.js. Use when the user wants imperative scene control in TypeScript or Vite with GLB assets, loaders, physics, and low-level WebGL debugging.
npx skillsauth add chelch5/scafforge three-webgl-gameInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Use this skill for the default non-React 3D path in the plugin. This is not generic WebGL advice. It is an opinionated stack for browser 3D work:
threeGLTFLoader, DRACOLoader, and KTX2LoaderUse this skill when the project wants direct scene, camera, renderer, and game-loop control. If the app already lives in React, route to ../react-three-fiber-game/SKILL.md instead.
For exploration, traversal, and character-control prototypes, start with a sparse shell:
Only add larger UI surfaces when the game loop truly requires them. Journal, quest log, codex, map, and settings surfaces should open on demand, not occupy the viewport by default.
Use the module shape in ../../references/three-webgl-architecture.md, then keep these boundaries clean:
simulation/: rules, progression, state, and AIrender/app/: renderer, scene, camera, resize, context lifecyclerender/loaders/: GLTF, Draco, KTX2, texture, and environment loadingrender/objects/: mesh instantiation and disposalrender/materials/: material setup and shader boundariesphysics/: Rapier world, bodies, colliders, and simulation bridgeui/: DOM overlays and menusdiagnostics/: debug toggles, perf probes, and capture hooksGLTFLoader for shipped 3D content.DRACOLoader or Meshopt-compatible optimization as part of the asset pipeline, not as a random runtime patch.KTX2Loader for compressed textures when the asset pipeline provides them.Do not claim that this plugin offers equal 3D depth to the Phaser track. It supports serious 3D implementation, but the plugin is still 2D-first overall.
../web-game-foundations/SKILL.md../game-ui-frontend/SKILL.md../../references/three-hud-layout-patterns.md../../references/threejs-stack.md../../references/three-webgl-architecture.md../../references/threejs-vanilla-starter.md../../references/gltf-loading-starter.md../../references/rapier-integration-starter.md../../references/web-3d-asset-pipeline.md../../references/webgl-debugging-and-performance.mdtesting
Use when validating Android feature flows in an emulator with adb-driven launch, input, UI-tree inspection, screenshots, and logcat capture.
development
Best practices for Remotion - Video creation in React
development
Set browser-game architecture before implementation. Use when the user needs engine choice, simulation and render boundaries, input model, asset organization, or save/debug/performance strategy.
development
Prepare and optimize browser-game 3D assets. Use when the user asks for GLB or glTF shipping work, including Blender cleanup and export, collision or LOD setup, compression, texture packaging, and runtime validation.