How meshy-dev/threert works
ThreeRT is a three.js-style scene and game runtime backed by a real-time GPU path tracer. The main workflow is to author a scene or game, bind its scene graph to an engine, and render it in a native or browser runtime; gameplay and voxel systems extend that workflow. The README documents these capabilities, while sampled source confirms the scene-binding and browser-engine boundaries. Several renderer and gameplay internals are unsampled, so their connections are shown only where the index or README supports them.
Main entry points: lib.rs Renderer Runtime · core.ts Scene API · engine.ts Scene Binding · game.ts Gameplay Runtime
Components 27
Scene and Gameplay
- Scene API
packages/scene/src/core.ts - Scene Binding
packages/scene/src/engine.ts - Scene Math
packages/scene/src/math.ts - Gameplay Runtime
packages/gameplay/src/game.ts - World Handlers
packages/gameplay/src/world.ts - Game Host
packages/gameplay/src/host.ts
Rendering Engine
- Renderer Runtime
renderer/src/lib.rs - GPU Path Tracer
renderer/src/gpu.rs - Render Scene
renderer/src/scene.rs - Embedded Script
renderer/src/script.rs - Render World
renderer/src/world.rs - Physics World
renderer/physics-core/src/world.rs - Voxel Rendering
renderer/src/voxel.rs
Voxel Systems
- Voxel Toolkit
packages/voxel/src/native.ts - Voxel Geometry
packages/voxel/src/geometry.ts - Voxel Destruction
packages/voxel/src/explosions.ts
Runtime Clients
- Browser Engine Adapter
renderer/web/www/engine.ts - WebAssembly Engine
renderer/web/src/lib.rs - Native Renderer Client
renderer/src/main.rs - Playground Editor
playground/host/src/main.rs - Editor UI
playground/ui/main.tsx - Three.js Adapter
tools/three/engine.ts
Scenes and Games
- Scenes
scenes/sun-room.ts - Games
games/light-room/light-room.game.ts - Voxel Level Demo
games/voxel-level/level-destruction.game.ts
Other components
- Scene Author
- Rendered Frames
Connections 27
- Scene Author → Scenes: authors
README.md - Scenes → Scene API: uses API
README.md - Games → Scene API: uses API
README.md - Games → Gameplay Runtime: uses runtime
README.md - Scene API → Scene Math: uses math
packages/scene/src/core.ts - Scene Binding → Scene API: syncs graph
packages/scene/src/engine.ts - Scene Binding → Embedded Script: calls engine
packages/scene/src/engine.ts - Gameplay Runtime → World Handlers: uses handlers
- Gameplay Runtime → Game Host: runs through
- Voxel Level Demo → Voxel Toolkit: uses toolkit
games/voxel-level/level-destruction.game.ts - Voxel Level Demo → Gameplay Runtime: uses runtime
games/voxel-level/level-destruction.game.ts - Voxel Toolkit → Voxel Geometry: uses geometry
- Voxel Toolkit → Voxel Destruction: supports blasts
- Renderer Runtime → GPU Path Tracer: uses GPU
renderer/src/lib.rs - Renderer Runtime → Render Scene: uses scene
renderer/src/lib.rs - Renderer Runtime → Embedded Script: uses scripts
renderer/src/lib.rs - Renderer Runtime → Render World: uses world
renderer/src/lib.rs - Renderer Runtime → Voxel Rendering: uses voxels
renderer/src/lib.rs - Renderer Runtime → Physics World: uses physics
- Embedded Script → Scene Binding: installs engine for
packages/scene/src/engine.ts - Browser Engine Adapter → WebAssembly Engine: dispatches calls
renderer/web/www/engine.ts - Scene Binding → Browser Engine Adapter: uses browser binding
- Native Renderer Client → Renderer Runtime: runs runtime
- Playground Editor → Renderer Runtime: uses renderer
playground/host/src/main.rs - Editor UI → Playground Editor: sends commands
- Three.js Adapter → Scene API: implements API
tools/three/engine.ts - GPU Path Tracer → Rendered Frames: traces frames
README.md