|
3884 | 3884 | ...
|
3885 | 3885 |
|
3886 | 3886 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ C++ highlight
|
3887 |
| - void final_scene(bool high_quality) { |
| 3887 | + void final_scene(int image_width, int samples_per_pixel, int max_depth) { |
3888 | 3888 | hittable_list boxes1;
|
3889 | 3889 | auto ground = make_shared<lambertian>(color(0.48, 0.83, 0.53));
|
3890 | 3890 |
|
|
3947 | 3947 |
|
3948 | 3948 | camera cam;
|
3949 | 3949 |
|
3950 |
| - cam.aspect_ratio = 1.0; |
3951 |
| - cam.background = color(0,0,0); |
| 3950 | + cam.aspect_ratio = 1.0; |
| 3951 | + cam.image_width = image_width; |
| 3952 | + cam.samples_per_pixel = samples_per_pixel; |
| 3953 | + cam.max_depth = max_depth; |
| 3954 | + cam.background = color(0,0,0); |
3952 | 3955 |
|
3953 | 3956 | cam.lookfrom = point3(478, 278, -600);
|
3954 | 3957 | cam.lookat = point3(278, 278, 0);
|
|
3957 | 3960 |
|
3958 | 3961 | cam.aperture = 0;
|
3959 | 3962 |
|
3960 |
| - if (high_quality) { |
3961 |
| - cam.image_width = 800; |
3962 |
| - cam.samples_per_pixel = 10000; |
3963 |
| - cam.max_depth = 50; |
3964 |
| - } else { |
3965 |
| - cam.image_width = 400; |
3966 |
| - cam.samples_per_pixel = 250; |
3967 |
| - cam.max_depth = 4; |
3968 |
| - } |
3969 |
| - |
3970 | 3963 | cam.render(world);
|
3971 | 3964 | }
|
3972 | 3965 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ C++
|
|
3975 | 3968 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ C++ highlight
|
3976 | 3969 | switch (0) {
|
3977 | 3970 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ C++
|
3978 |
| - case 1: random_spheres(); break; |
3979 |
| - case 2: two_spheres(); break; |
3980 |
| - case 3: earth(); break; |
3981 |
| - case 4: two_perlin_spheres(); break; |
3982 |
| - case 5: quads(); break; |
3983 |
| - case 6: simple_light(); break; |
3984 |
| - case 7: cornell_box(); break; |
3985 |
| - case 8: cornell_smoke(); break; |
3986 |
| - ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ C++ highlight |
3987 |
| - case 9: final_scene(true); break; |
3988 |
| - default: final_scene(false); break; |
| 3971 | + case 1: random_spheres(); break; |
| 3972 | + case 2: two_spheres(); break; |
| 3973 | + case 3: earth(); break; |
| 3974 | + case 4: two_perlin_spheres(); break; |
| 3975 | + case 5: quads(); break; |
| 3976 | + case 6: simple_light(); break; |
| 3977 | + case 7: cornell_box(); break; |
| 3978 | + case 8: cornell_smoke(); break; |
| 3979 | + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ C++ highlight |
| 3980 | + case 9: final_scene(800, 10000, 40); break; |
| 3981 | + default: final_scene(400, 250, 4); break; |
3989 | 3982 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ C++
|
3990 | 3983 | }
|
3991 | 3984 | }
|
|
0 commit comments