I’ve always been fascinated by 3D graphics – there’s just a great intersection between art and algebra there – and in an attempt to better understand how it all works i’ve written a couple of software rasterisers in the past. Here’s a surviving effort that also uses CMake, a cross platform build tool.
Originally this used git modules to include a separate library that contained the geometry or algebra code for matrix multiplication/transform etc. I totally missed this when unearthing this 3 year old project and set about rewriting the missing code… if only i’d documented this project at the time!
Of course along with the rasteriser there’s at least one raytracer lying around in the dumping ground that i’m convinced every developer has on their file server… I hope at some point to integrate the raytracer perhaps as an alternative renderer for the same geometry. But we’ll have to see… I guess at the point i’ll end up splitting the library out again.