bunny/
bunny.rs

1use lumo::tracer::*;
2use lumo::*;
3
4const BUNNY_URL: &str = "https://www.prinmath.com/csci5229/OBJ/bunny.zip";
5
6fn main() -> Result<(), Box<dyn std::error::Error>> {
7    let camera = Camera::default(1024, 768);
8    let def_color = Color::new(242, 242, 242);
9    let mut scene = Scene::empty_box(
10        def_color,
11        Material::diffuse(Texture::Solid(Color::new(255, 0, 0))),
12        Material::diffuse(Texture::Solid(Color::new(0, 255, 0))),
13    );
14
15    scene.add(
16        parser::mesh_from_url(
17            BUNNY_URL,
18            Material::transparent(
19                Texture::Solid(Color::new(0, 255, 0)),
20                0.1,
21                1.5,
22            ),
23        )?
24        .scale(0.3, 0.3, 0.3)
25        .translate(0.0, -0.65, -1.5),
26    );
27
28    let renderer = Renderer::new(scene, camera);
29    renderer.render().save("bunny.png")?;
30    Ok(())
31}