| 24 | |
| 25 | impl Renderer { |
| 26 | pub fn new(dimensions: Vec2<usize>, camera: &Camera, scene: &Scene) -> Self { |
| 27 | Self { |
| 28 | cuda: CudaRenderer::new(dimensions, camera, scene) |
| 29 | .expect("Failed to make CUDA renderer"), |
| 30 | cpu: CpuRenderer::new(dimensions, camera, scene), |
| 31 | running_on_gpu: true, |
| 32 | denoise: false, |
| 33 | accumulated_samples: 0, |
| 34 | camera: *camera, |
| 35 | controller: CameraController::new(dimensions), |
| 36 | system: System::new_all(), |
| 37 | use_optix: false, |
| 38 | } |
| 39 | } |
| 40 | |
| 41 | pub fn resize(&mut self, new: Vec2<usize>) { |
| 42 | self.accumulated_samples = 0; |