- A customized json file to display the output of assignment 3 on the wind-dragon.stl
- The current code runs significantly faster than the base assignment 3 we started with Time taken to produce a complex ppm from a complext stl has been reduced from several hours to days has been reduced to several minutes to hours.
- It combines the blinn-phong model and reflection from assignment 3. In the meantime, it uses AABB tree to find ray hits. This improves ray hit lookup from O(n) to O(log (n))
- The read_json is modified to load soups as triangles.
- Triangles, planes and spheres are also changed to adapt the interface from Object in Assignment 4
- An external complex stl has been used to test the program. It is wind-dragon.stl
- used imagemagick to render final ppm file to a png file
- used openmp parallelization in compiler flags to speed up rendering in main.cpp
Acknowledgements:
- CF Wind Dragon
- Assignment 3
- Assignment 4
- Eigen library submodule
- nlohmann json used in Assignment 3
- imagemagick