Friday, November 3, 2017

Ray Tracing and College

Working on a ray tracer has been quite fun, especially when debugging it when the image doesn't come out right.

I don't think that box is supposed to be cut off.
This was a bug with transforming the bounding box with a rotation.
It's mainly based off of Peter Shirley's raytracer in the Ray Tracing in One Weekend series of books, just implemented in Java. It's certainly not fast, but that's not really a big issue since I'm treating this renderer mostly as toy to learn more about the fundamentals of ray tracing.

Teapot! This uses a rather inaccurate model of glossy surfaces
but looks nice.


Right now I'm just trying to fully understand the Cook-Torrance BRDF so that my implementation isn't gross. I tried to just go in head first but my code just ended up being a mess of things that didn't work. I backed up to just test the specular component:

Y-axis is increasing metallic-ness and x-axis is increasing roughness. 
This specular test doesn't follow the BRDF structure setup by the book (so we can't do importance sampling on lights) since I computed the ray, BRDF, and pdf for the ray all in one method. Will need to restructure later.

That aside, now that I'm in college it's time to step it up and start completing somewhat more meaningful projects and develop more formal skills.
Things to do:
  • Finish implementing the Cook-Torrance BRDF model for the Java raytracer
  • Get better at programming in C and C++
  • Learn Verilog (need to come up with a project for this so that I have something to work towards)
  • Maybe go back to finish the camera timelapse setup (at least one axis)

No comments:

Post a Comment