Skip to main content

awsm_renderer_scene/
lib.rs

1//! `awsm-renderer-scene` — the lean, canonical **runtime** scene schema for the
2//! awsm-renderer player: a [`Scene`] (`scene.toml`) + an `assets/` directory,
3//! all by-id. The player and renderer touch only this crate.
4//!
5//! Authoring lives elsewhere: the modifier stack + per-vertex overrides + the
6//! editor's `Mesh = base + edits` are in `awsm-renderer-meshgen` (recipe types) and
7//! `awsm-renderer-editor-protocol` (the `EditorProject` document + `EditorCommand`/
8//! `EditorQuery`), which depend on this crate and reuse its core types. The
9//! editor's bake step lowers authoring → runtime (`MeshDef` → [`mesh::MeshBlob`]).
10//!
11//! Coordinate convention: right-handed, Y-up, meters. Rotations are unit
12//! quaternions stored as `[x, y, z, w]`.
13
14pub mod animation;
15pub mod assets;
16pub mod camera;
17pub mod collider;
18pub mod curve;
19pub mod decal;
20pub mod dynamic_material;
21pub mod environment;
22pub mod instances;
23pub mod light;
24pub mod line;
25pub mod material;
26pub mod mesh;
27pub mod particle;
28pub mod primitive;
29pub mod project_dir;
30pub mod scene;
31pub mod shadows;
32pub mod sprite;
33pub mod transform;
34pub mod tree;
35
36pub use animation::*;
37pub use assets::*;
38pub use camera::*;
39pub use collider::*;
40pub use curve::*;
41pub use decal::*;
42pub use dynamic_material::*;
43pub use environment::*;
44pub use instances::*;
45pub use light::*;
46pub use line::*;
47pub use material::*;
48pub use mesh::*;
49pub use particle::*;
50pub use primitive::*;
51pub use project_dir::*;
52pub use scene::*;
53pub use shadows::*;
54pub use sprite::*;
55pub use transform::*;
56pub use tree::*;