All rendering code is commented out for now. It will need to be largely rewritten after this refactor is done, most likely. This commit gets the basic new scene parsing working, with the basic new data structures.
20 lines
403 B
Rust
20 lines
403 B
Rust
mod assembly;
|
|
mod world;
|
|
|
|
use std::collections::HashMap;
|
|
|
|
use crate::{camera::Camera, shading::SurfaceShader};
|
|
|
|
pub use self::{
|
|
assembly::{Assembly, Object, ObjectData},
|
|
world::World,
|
|
};
|
|
|
|
#[derive(Debug)]
|
|
pub struct Scene<'a> {
|
|
pub camera: Camera<'a>,
|
|
pub world: World<'a>,
|
|
pub shaders: HashMap<String, Box<dyn SurfaceShader>>, // Name, Shader
|
|
pub root_assembly: Assembly<'a>,
|
|
}
|