mod cube;
mod particles;
mod shader_playground;
pub use cube::CubeScene;
pub use particles::ParticlesScene;
pub use shader_playground::ShaderPlaygroundScene;
use crate::scene::Scene;
pub fn scene_for_type(
name: &str,
device: &wgpu::Device,
width: u32,
height: u32,
) -> Result<Box<dyn Scene>, String> {
if let Some(result) =
flutter_wgpu_texture_core::scene_from_registry(name, device, width, height)
{
return result;
}
match name {
"particles" => Ok(Box::new(ParticlesScene::new(device)?)),
"shader_playground" => Ok(Box::new(ShaderPlaygroundScene::new(device)?)),
_ => Ok(Box::new(CubeScene::new(device, width, height)?)),
}
}