2.0 KiB
2.0 KiB
User documentation — WSG
Usage documentation for the wsg-lib crate: how to build a 3D rendering application
without touching wgpu directly. It targets a developer with basic Rust knowledge; no prior
GPU graphics background is required.
Not to be confused: these pages explain how to use the API. The technical documentation (internal architecture, design decisions, future targets) lives in ../tech/, and the exhaustive API reference is generated by rustdoc (
cargo doc -p wsg-lib --no-deps).
Where to start
- Quickstart — your first window and your first object, in ~30 lines.
- Then, at your own pace, depending on what you need:
| Page | Topic |
|---|---|
| Meshes | Geometries: procedural primitives, custom Geometry, entities and Transform |
| Materials & textures | Appearance: the standard shader, unlit mode, diffuse textures |
| Lights | Directional, point, spot, ambient, MAX_LIGHTS |
| Shadows | Shadow mapping: picking the casting light, the packed-index pitfall |
| HDR & tone mapping | Offscreen float render + ACES/Reinhard, opt-in via with_hdr |
| GPU-driven rendering | GPU world matrices + indirect draws, opt-in frustum culling |
| Camera & input | Active camera, orbital controller, unified keyboard/mouse state |
| Examples | The 7 repo examples, the advanced manual workflow, adding your own example |
The pages are cross-linked: each page ends with a link to the next one.
Links
- Technical documentation (architecture): ARCHI_APP · ARCHI_RENDU · ARCHI_CPU_GPU · ARCHI_ARENES · FRAME_LOOP
- Root README · ROADMAP · DRAFT
- Full API reference:
cargo doc -p wsg-lib --no-deps