use cyborg::{pass, scene, Renderer}; use legion::{IntoSoa, World}; use std::sync::{Arc, RwLock}; fn main() { let world = Arc::new(RwLock::new(World::default())); world.write().unwrap().extend( ( vec![scene::MeshComponent {}; 1000], vec![ scene::TransformComponent { transform: glam::Mat4::IDENTITY, }; 1000 ], ) .into_soa(), ); let mut renderer = Renderer::default(); let mesh_pass = pass::mesh::MeshPass::new(world); renderer.add_pass_arc(mesh_pass); let start = std::time::Instant::now(); for n in 0..1000 { println!("Frame #{}:", n); renderer.render(); } println!("Time elapsed: {:?}", start.elapsed()); }