Add example to lower system load
This commit is contained in:
parent
560b921b3a
commit
30b972ce5c
1
.gitignore
vendored
1
.gitignore
vendored
@ -3,3 +3,4 @@
|
||||
.idea
|
||||
*.iml
|
||||
.vscode/
|
||||
*.png
|
||||
|
@ -117,6 +117,7 @@ fn cornell_box() -> Scene {
|
||||
)));
|
||||
|
||||
// Boxes
|
||||
|
||||
let rotated1 = RotateY::new(
|
||||
Cuboid::new(
|
||||
Point3::new(0.0, 0.0, 0.0),
|
||||
@ -144,7 +145,6 @@ fn cornell_box() -> Scene {
|
||||
);
|
||||
world.push(Arc::new(box2));
|
||||
|
||||
|
||||
let look_from = Point3::new(278.0, 278.0, -800.0);
|
||||
let look_at = Point3::new(278.0, 278.0, 0.0);
|
||||
let focus_dist = 2.0;
|
||||
@ -493,6 +493,7 @@ fn main() {
|
||||
let image_height: usize = (IMAGE_WIDTH as f64 / scene_setup.cam.aspect_ratio()) as usize;
|
||||
let mut pixels = vec![0; IMAGE_WIDTH * image_height * 3];
|
||||
let bands: Vec<(usize, &mut [u8])> = pixels.chunks_mut(3).enumerate().collect();
|
||||
//rayon::ThreadPoolBuilder::new().num_threads(3).build_global().unwrap(); // Enable, to reduce load
|
||||
let count = Mutex::new(0);
|
||||
bands.into_par_iter().for_each(|(i, pixel)| {
|
||||
let row = image_height - (i / IMAGE_WIDTH) - 1;
|
||||
|
Loading…
Reference in New Issue
Block a user