stephen-w-choo / ray-tracer-browser

3d renderer for the browser. A personal project to practice linear algebra, test-driven development and TypeScript.
0 stars 0 forks source link

ray-tracer-browser

A 3d renderer for the browser.

A personal project to practice linear algebra, test-driven development and optimisation.

Current milestones

ezgif-3-5b96601414 bouncing

It's not much, but I'm pretty proud of what I've been able to do so far!

How?

I'm using Jamis Buck's 'The Ray Tracer Challenge' as my guide for this. The book contains no code at all - just tests that you have to pass, so it's language agnostic. It's pretty fun!

I've chosen TypeScript here just because I wanted something that is able to run in the browser. In hindsight, this was probably not the best choice. It's not fast, and doesn't have operator overloading. In order to run within the browser at anything approaching a respectable speed I'm going to have to target WASM (which I'm going to do in the future with AssemblyScript), and if I was going to target WASM to begin with I should have picked a compiled language.

Regrets/issues I've run into so far