Building a Basic Ray Tracer
Throughout the semester we'll be building a basic Ray Tracing framework in Java and posting the results of our checkpoints here.
Jump to a completed checkpoint:
Final Output - Let's Have a Little Fun With It.
With the ray tracer finished we decided to go a little ham.
This next image has 10 reflective surfaces (the floor is two polygons),
1 pure transmissive surface, and three surfaces that are both reflective
and transmissive.
The image is 3840x2160 and was rendered
with 50 samples per pixel. We had to cut it back from 200 samples per pixel,
actually, because it would have taken several days.
For tone reproduction, we
used the Ward operator at 700 nits. As it is, this image took over 12 hours to render
(That's what we get for not rendering this on the GPU).
[Dear god, why did we make that floor reflective? - Isaac 07/21/14]
Now that we are finished, our source code will be made available by request
(we can't just make it public because of potential academic dishonesty issues
if an RIT
student copies our code for an assignment). To request access to our repository, please
email isb4190[at]rit[dot]edu or bmj8778[at]rit[dot]edu.