A Kotlin implementation of Peter Shirley's 'Ray Tracing in One Weekend' book.
- Overview
- Output An Image
- The vec3 class
- Rays, a Simple Camera, and Background
- Adding a Sphere
- Surface Normals and Multiple Objects
- Antialiasing
- Diffuse Materials
- Metal
- Dielectrics
- Positionable Camera
- Defocus Blur
- Where Next?
- Not optimised for efficiency.
- I use a slightly different method for refraction calculation (see first reference).
Rendered at: 2000px * 1333px, 500 samples/px, maximum depth of 50.
- Rectangular parallelepipeds.
- Triangle support.
- Abstracting the description of scenes (maybe a DSL and custom file-format).