first implementation, clamp seems to be off?
This commit is contained in:
parent
7a58ba9733
commit
b581364f5a
8 changed files with 157 additions and 132 deletions
src/scene
|
@ -22,8 +22,10 @@ pub fn generate_test_scene(scene: &mut Scene, data: &mut AppData) -> Result<(Poi
|
|||
let mut rng = rand::thread_rng();
|
||||
let grid_size = CHUNK_SIZE as i32;
|
||||
|
||||
let mut oct_tree1: OctTree<Cube> = OctTree::create(CHUNK_SIZE)?;
|
||||
let mut oct_tree2: OctTree<Cube> = OctTree::create(CHUNK_SIZE)?;
|
||||
let scale = 1.0;
|
||||
|
||||
let mut oct_tree1: OctTree<Cube> = OctTree::create(CHUNK_SIZE, scale)?;
|
||||
let mut oct_tree2: OctTree<Cube> = OctTree::create(CHUNK_SIZE, scale)?;
|
||||
|
||||
for x_index in 0..grid_size {
|
||||
for y_index in 0..grid_size {
|
||||
|
@ -89,24 +91,24 @@ pub fn generate_test_scene(scene: &mut Scene, data: &mut AppData) -> Result<(Poi
|
|||
};
|
||||
oct_tree2.set_cube(cube.clone());
|
||||
|
||||
scene.point_lights.push(Rc::new(RefCell::new(PointLight { pos: vec3(11.0 + grid_size as f32, 11.0 + grid_size as f32, 11.0), color: vec3(1.0, 1.0, 1.0), memory_start: 0 })));
|
||||
scene.point_lights.push(Rc::new(RefCell::new(PointLight { pos: vec3(9.0 + grid_size as f32, 9.0 + grid_size as f32, 11.0), color: vec3(0.5, 0.5, 0.5), memory_start: 0 })));
|
||||
scene.point_lights.push(Rc::new(RefCell::new(PointLight { pos: vec3(11.0 + grid_size as f32, 11.0 + grid_size as f32, 11.0) * scale, color: vec3(1.0, 1.0, 1.0), memory_start: 0 })));
|
||||
scene.point_lights.push(Rc::new(RefCell::new(PointLight { pos: vec3(9.0 + grid_size as f32, 9.0 + grid_size as f32, 11.0) * scale, color: vec3(0.5, 0.5, 0.5), memory_start: 0 })));
|
||||
scene.directional_lights.push(Rc::new(RefCell::new(DirectionalLight { direction: vec3(1.0, 1.0, -1.0), color: vec3(0.1, 0.1, 0.1), memory_start: 0 })));
|
||||
|
||||
let cube = Cuboid {
|
||||
pos: vec3(11.0 + grid_size as f32, 11.0 + grid_size as f32, 11.0),
|
||||
pos: vec3(11.0 + grid_size as f32, 11.0 + grid_size as f32, 11.0) * scale,
|
||||
color: vec3(1.0, 1.0, 1.0),
|
||||
tex_coord: vec2(0.0, 0.0),
|
||||
size: Vector3 {x: 0.5, y: 0.5, z: 0.5}
|
||||
size: Vector3 {x: 0.5, y: 0.5, z: 0.5} * scale
|
||||
};
|
||||
let index = scene.sized_vertices.len();
|
||||
cube.draw(&data.topology, index, scene);
|
||||
|
||||
let cube = Cuboid {
|
||||
pos: vec3(9.0 + grid_size as f32, 9.0 + grid_size as f32, 11.0),
|
||||
pos: vec3(9.0 + grid_size as f32, 9.0 + grid_size as f32, 11.0) * scale,
|
||||
color: vec3(1.0, 1.0, 1.0),
|
||||
tex_coord: vec2(0.0, 0.0),
|
||||
size: Vector3 {x: 0.5, y: 0.5, z: 0.5}
|
||||
size: Vector3 {x: 0.5, y: 0.5, z: 0.5} * scale
|
||||
};
|
||||
let index = scene.sized_vertices.len();
|
||||
cube.draw(&data.topology, index, scene);
|
||||
|
@ -122,6 +124,8 @@ pub fn generate_test_scene(scene: &mut Scene, data: &mut AppData) -> Result<(Poi
|
|||
pub fn generate_test_scene2(scene: &mut Scene, data: &mut AppData, chunk_num_x: usize, chunk_num_y: usize, chunk_num_z: usize, num_gaussians: usize) -> Result<(Point3<f32>)> {
|
||||
let mut rng = rand::thread_rng();
|
||||
|
||||
let scale = 1.0;
|
||||
|
||||
let grid_size = CHUNK_SIZE as i32;
|
||||
|
||||
let max_x = chunk_num_x * grid_size as usize;
|
||||
|
@ -152,7 +156,7 @@ pub fn generate_test_scene2(scene: &mut Scene, data: &mut AppData, chunk_num_x:
|
|||
for y in 0..chunk_num_y {
|
||||
oct_trees[z].push(vec![]);
|
||||
for x in 0..chunk_num_x {
|
||||
oct_trees[z][y].push(Rc::new(RefCell::new(OctTree::<Cube>::create(CHUNK_SIZE)?)));
|
||||
oct_trees[z][y].push(Rc::new(RefCell::new(OctTree::<Cube>::create(CHUNK_SIZE, scale)?)));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue