Wiki › Project

Ray Tracing in One Weekend

Project · study · 2024

Ray Tracing in One Weekend is his working-through of Peter Shirley's free book of the same name, in C++. The book builds a ray tracer from nothing, one feature at a time.

The final scene
The final scene

Progress through the book

The repository keeps an image for each stage, from a plain gradient to the final scene:

  • rays, a camera and a background;
  • spheres, surface normals and antialiasing;
  • diffuse, metal and glass materials;
  • a movable camera with field of view, zoom and depth of field.

The ray tracer writes PPM files, which his PPM to PNG converter turns into PNGs. CMake and a Makefile build it, and scripts render the scenes.

The series

See also

In the knowledge graph

Ray Tracing in One Weekend and the 11 things it is linked to. Open any dot for its page, or explore it in the full graph.

When
2023202420252026
Jul 2024 · 1 commits

As data

Everything on this page is read from triples in the knowledge graph. These are the 24 it states about Ray Tracing in One Weekend, and 2 more its ontology implies; the console runs SPARQL over the whole graph, here in your browser.

Download
@prefix id: <https://ask.chaipat.cc/id/> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix cj: <https://ask.chaipat.cc/ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .

id:RTWeekend
    a cj:Project ;
    rdfs:label "Ray Tracing in One Weekend" ;
    cj:description "Study implementation of Peter Shirley's “Ray Tracing in One Weekend”." ;
    cj:context id:OpenSource ;
    cj:repository "https://github.com/AppleBoiy/RTWeekend"^^xsd:anyURI ;
    cj:firstCommit "2024-07-09"^^xsd:date ;
    cj:lastCommit "2024-07-09"^^xsd:date ;
    cj:commitCount 1 ;
    cj:kind "study" ;
    cj:archived true ;
    cj:theme id:ThemeSystems ;
    cj:uses id:CPP ,
            id:RayTracing ,
            id:CMake ,
            id:Make ;
    cj:tier 3 ;
    cj:handles id:PPMFormat ;
    cj:partOf id:RayTracingSeries ;
    cj:succeededBy id:RTNextWeek ;
    cj:mentions id:PPM2PNG , id:RTRestOfLife ;
    cj:article "https://ask.chaipat.cc/wiki/RTWeekend"^^xsd:anyURI ;
    cj:activeIn id:Y2024 ;
    cj:activity _:b145 .