Skip to content

Raytracing Show and Tell

Paul Mucur edited this page May 22, 2019 · 6 revisions

We began our meeting in our new home: the Yellowstone meeting room of Future Learn. We were greeted by @tomstuart, two loaves of bread, a rather blunt bread knife, a selection of beverages and a strange waiting room with a towel in it.

@tuzz kicked things off by composing a Computation Club theme song on the spot:

After some obligatory faffing with HDMI cables and USB-C dongles, we began to review what the club had been up to both inside and outside of our recent meetings on raytracing, initially based on Matt Pharr, Wenzel Jakob and Greg Humphreys' "Physically Based Rendering: From Theory To Implementation".

In @leocassarani's absence, @tomstuart showed us the club's first attempt at a raytracer: Raymond and Tom's fork of it with a minimap. We recapped that this was based on our reading of the introduction from the book and featured a few fundamental concepts:

  • The eye
  • The film
  • Light sources
  • Spheres

We heard that the club had since gone on to mob a new raytracer called "raze" which formed the basis of all subsequent experiments including implementing reflections and materials with different reflective properties.

With that, @tuzz took to the screen and ran us through the various projects he had built along the way.

He began with a faithful translation of the book's pbrt program in Rust called ray-tracer. He explained how he had used this to improve his idiomatic Rust knowledge but also to try to remain close to the book's implementation. He highlighted his implementation of typed vectors of various sizes as something he was keen to explore in Rust.

However, having been dazzled by @leocassarani's more visual efforts, @tuzz then switched:

Clone this wiki locally