This repository contains an implementation of the projects outlined in the Build your own 3D renderer workshop. The implementation is in Javascript, using 2D canvas.
git clone https://github.com/avik-das/build-your-own-raytracer-js.git
cd build-your-own-raytracer-js
# Open in a supported browser
chrome index.html
The implementation uses a number of ES2016 features, including let
, arrow functions, and classes, all without any transpilation. A recent enough browser is needed to support these features.
Each commit of the project implements one of the projects in the workshop. If you wish to implement one of the projects yourself, you can check out the before-project-N
tag, where N
is the project number. This will put you in a state just prior to the implementation of that project, with all previous projects implemented:
# Prepare to implement Project 4
git checkout before-project-4