> Cinder 0.1.0 documentation: Subsystem guides
> Canonical page: https://cinder.ash10.dev/docs/guides/ · Source: generated by this site (engine commit 47c9352, imported 2026-11-09)
> Index of every page for agents: https://cinder.ash10.dev/llms.txt

# Subsystem guides

One guide per engine module: key types and ownership, setup, per-frame use, threading rules and pitfalls. Each links to its generated API reference.

- [Animation guide (cinder/anim)](https://cinder.ash10.dev/docs/guides/anim.md): cinder/anim is skeletal animation written in Mojo: skeletons built from glTF skins or read from cooked .cskel files, clip sampling into local poses, blend trees evaluated on a shared phase, animators with states, crossfades, events and root motion, and an AnimationSystem that…
- [Application runtime (cinder/app)](https://cinder.ash10.dev/docs/guides/app.md): cinder/app is the top of the engine: App owns every subsystem, runs the fixed-step game loop and renders, either into an SDL window or, with --headless, into an offscreen texture that can be read back. Gameplay implements the Game trait and is called from App.run_frame. The…
- [Assets guide (cinder/assets)](https://cinder.ash10.dev/docs/guides/assets.md): cinder/assets gets content from disk into the renderer. It has two paths:
- [Audio (cinder/audio)](https://cinder.ash10.dev/docs/guides/audio.md): cinder/audio is the engine's sound layer over miniaudio. It provides mixing buses, decoded and streamed sounds, one-shots that clean up after themselves, 3D spatialisation with distance attenuation, a single listener, and an ECS bridge that moves sounds with entities and the…
- [cinder/core guide](https://cinder.ash10.dev/docs/guides/core.md): cinder/core is the lowest Mojo layer of the engine: logging, assertions, a bump arena, generational handles and pools, a bounded ring, byte packing and hashing, file helpers, a monotonic clock with a fixed-step accumulator, CPU images, the job system, Tracy zones, Boxed heap…
- [ECS guide (cinder/ecs)](https://cinder.ash10.dev/docs/guides/ecs.md): cinder/ecs is the archetype entity component system every gameplay-facing module builds on. It sits directly above cinder/core (it uses core/math for Mat4 and core/jobs for the scheduler) and below render, physics, anim, audio, assets and scene, which define their own…
- [cinder/gfx guide](https://cinder.ash10.dev/docs/guides/gfx.md): cinder/gfx is the safe, typed layer over wgpu-native. It owns the wgpu instance, adapter, device and queue (Gfx), keeps every GPU object the engine creates in generational pools behind typed handles (Resources), compiles WGSL with editor-friendly diagnostics and hot reload…
- [Input (cinder/input)](https://cinder.ash10.dev/docs/guides/input.md): cinder/input maps raw platform events to named gameplay controls. A game asks pressed("jump") or axis("move_x") instead of testing scancodes, players can rebind controls at runtime, and the whole map saves to a small text file. The package sits beside audio, physics, anim and…
- [Physics guide (cinder/physics)](https://cinder.ash10.dev/docs/guides/physics.md): cinder/physics is the safe Mojo layer over Jolt. Jolt is reached through joltc inside libcinder_native; the parts of the shim that need C callbacks live in native/src/physics_shim.c (query filters, closest-hit collectors, CharacterVirtual extended update defaults) and…
- [cinder/platform guide](https://cinder.ash10.dev/docs/guides/platform.md): cinder/platform is the thin Mojo layer over SDL3 and the native shim's surface helpers. It loads libcinder_native exactly once, initialises SDL, creates windows, drains SDL's event queue into engine-level Events, opens and closes gamepads as they appear, creates the wgpu…
- [cinder/render: the renderer](https://cinder.ash10.dev/docs/guides/render.md): cinder/render turns a RenderScene (camera, lights, instances, joint palettes, environment) into one submitted command buffer per frame. It is a clustered forward+ renderer with cascaded and atlas shadow maps, GPU-baked image-based lighting, GTAO, physically based bloom, AgX…
- [Scene guide (cinder/scene)](https://cinder.ash10.dev/docs/guides/scene.md): cinder/scene is the layer between the ECS and the rest of the engine's content pipeline. It has three independent parts:
- [Tools: debug overlay, Tracy profiling, headless mode](https://cinder.ash10.dev/docs/guides/tools.md): Cinder's developer tooling is three things: the Dear ImGui debug overlay in cinder/tools, the Tracy client wrapper in cinder/core/profile.mojo, and the --headless mode of cinder/app that lets the same executables run without a display for tests, benchmarks and captures.
