# CLAUDE.md

Pure Rust game: SDL3 windowing, wgpu rendering, rapier3d physics, low-res retro aesthetic with dithering. Content created in Blender 5.0 (glTF meshes + EXR heightmaps).

## Code Style

- **NO inline comments unless ABSOLUTELY necessary** — code must be self-documenting
- Doc comments (`///`) only for public APIs and complex algorithms
- Run `cargo fmt` before committing (`brace_style = "AlwaysNextLine"`, `control_brace_style = "AlwaysNextLine"`)
- **NO inline paths** — always add `use` statements at the top of files, never inline
- **NO `use` statements inside functions or impl blocks** — all `use` must be at the file (module) level

## Architecture

Pure ECS: entities are IDs, components are plain data in `HashMap<EntityHandle, T>` storages, systems are functions receiving `&mut World`. No `Rc<RefCell<>>`.
