gangsta http://anderslanglands.com/gangsta raytracing development blog Sun, 11 Feb 2007 18:27:04 +0000 http://backend.userland.com/rss092 en Realtime raytracing I’ve taken a break from the main gangsta development to investigate the Bounding Interval Hierachy acceleration structure as a possible alternative to the KD-Tree. The BIH has performance similar to the KD-Tree, but is very quick to build and has a relatively small memory footprint. It’s also an incredibly simple ... http://anderslanglands.com/gangsta/?p=9 Finally! Another huge chunk of development, most of it on support code, but it now allows me to create much more interesting images than yet-another-cornell-box. Rather than just write a scene description format, I took inspiration from some of the stuff we’ve been doing at work and wrote a fairly hefty class ... http://anderslanglands.com/gangsta/?p=7 Big old reorganisation Well it’s taken a long time to get to this stage! That’s not a vaseline lens shader, it’s testing the filtering system with a 3-pixel radius box filter. Although the picture looks not a lot different, a huge amount has changed under the surface. It’s now multi-threaded, and renders in ... http://anderslanglands.com/gangsta/?p=6 Shadows Restructured the scene code to use the kd-tree from pbrt. This scene actually renders slower with the kd-tree than without because of the small number of large triangles. Adding shadows to the point-light shader was pretty trivial. http://anderslanglands.com/gangsta/?p=5 Shaders Got the first light and surface shaders hard-coded in, although it shouldn’t be too much trouble to refactor into the intended plugin system. http://anderslanglands.com/gangsta/?p=4 Cornell box Well after a little bit of laborious typing I got a slightly more intersting scene to work with. Here’s a cornell box, hard-coded into the renderer. The colours here are (s,t)-coordinates assigned to the geometry, to test that the interpolation of variables across the triangle is working http://anderslanglands.com/gangsta/?p=3 First image My first image. Not a lot to look at, but at least it shows the sampling and intersection code is working. The colours here are the barycentric coordinates of the intersection point on the triangle. I’m using Wald’s precomputed intersection method. http://anderslanglands.com/gangsta/?p=2