forked from brown-cs-224/Path-Stencil
-
Notifications
You must be signed in to change notification settings - Fork 0
/
README
58 lines (37 loc) · 2.34 KB
/
README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
PATH README
All final output images are in the folder "final output images." My path tracer can be run with the standard command line arguments: "./example-scenes/CornellBox.xml ./out.png" and outputs files in PNG format. To change the scene, you can go into the CornellBox.xml file and specify which obj file to read. Extra features can be toggled on using the #define statements at the top of pathtracer.cpp. Running as is will be the vanilla path tracer.
Note: My output images have relatively low numbers of paths per pixel (esp. the refraction image, due to the internal reflection recursions), because my computer could not handle very high pp's. If anything fails to write to file, lowering pdf_rr and pp (at the top of pathtracer.cpp) should fix it.
Here is the list of which images in the final output images folder demonstrate which features of my path tracer:
Standard features:
Diffuse BRDF:
out-diffuse-final.png (50 pp, pdf_rr=0.7)
Glossy/specular BRDF:
out-glossy-final.png (40 pp, pdf_rr=0.7)
Mirror BRDF:
out-mirror-glass-final.png (15 pp, pdf_rr=0.5)
out-mirror-final.png (40 pp, pdf_rr=0.7)
Refraction+reflection BRDF:
out-mirror-glass-final.png (50 pp, pdf_rr=0.7)
Soft shadows/Russian roulette termination:
all images
Indirect illumination:
out-diffuse-indirect-final.png (50 pp, pdf_rr=0.7)
(Event splitting in all other images)
Extra features:
Depth of field:
(focal length = 3.35, aperture size = 0.5)
out-dof-final.png (compare with out-diffuse-final.png) (50 pp, pdf_rr=0.7)
BRDF sampling:
Diffuse: out-diffuse-impsamp-final.png (compare with out-diffuse-final.png) (50 pp, pdf_rr=0.7)
Glossy: out-glossy-impsamp-final.png (compare with out-glossy-final.png) (40 pp, pdf_rr=0.7)
Stratified sampling:
(7x7 grid, one random sample from each)
out-strat-gloss-final.png (compare with out-gloss-49.png) (49 pp, pdf_rr=0.7)
out-diffuse-strat-final.png (compare with out-diffuse-49.png) (49 pp, pdf_rr=0.7)
(The differences are difficult to see unless you zoom in, possibly due to the number of samples. Can compare the smoothness of the red reflections on the glossy sphere and tall box.)
References:
Depth of field:
https://medium.com/@elope139/depth-of-field-in-path-tracing-e61180417027
https://www.keithlantz.net/2013/03/path-tracer-depth-of-field/
BRDF importance sampling:
https://www.cs.princeton.edu/courses/archive/fall16/cos526/papers/importance.pdf