Skip to content

Following along Jamis Buck's "The Ray Tracer Challenge", using only value semantics and compile-time polymorphism.

Notifications You must be signed in to change notification settings

ulfben/RayTracerChallenge

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

RayTracerChallenge

A side-project for 2023, following along Jamis Buck's "The Ray Tracer Challenge". I'm working in modern C++ and aiming to use only static polymorphism and value semantics throughout (ie: no inheritance or pointers).

Chapter 5:

Coloring pixels.

chapter 5

Chapter 6:

Shading a sphere.

chapter_6

Chapter 7:

Rendering a scene of spheres.

chapter7_1

Chapter 8:

Adding shadows.

chapter8_3_parallel

Chapter 9:

Adding different Shapes. Currently Sphere and Plane.

chapter9_0

Chapter 10:

Adding pattern, poorly for now.

chapter10_0

Chapter 11:

Adding reflections

chapter11_2

And refractions:

chapter11_5

Revisiting chapter 10:

Fixing all patterns and building a better scene to demo patterns, reflection and transparency:

chapter10_4_sRGB

chapter10_5_sRGB

Chapter 12

Adding cubes to the world.

chapter12_1

Revisiting chapter 11:

Re-creating a scene from the book, but in sRGB color space.

Original render from the book: chapter11_bookscene_oracle

My render: chapter11_bookscene_convert_colorspace_on_import

About

Following along Jamis Buck's "The Ray Tracer Challenge", using only value semantics and compile-time polymorphism.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published