» projects » misc

Computer Graphics

These are pictures rendered with code I wrote for various graphics courses I took when I was a student at Brown.



Every computer science student -- at Brown or anywhere else -- has to, at some point, write a raytracer capable of rendering a marble on a chess board. My raytracer was special.

CS224 Assignments


obligatory cs224 metropolis light transport rendered table. if i'd let it run longer it would have looked better.


colorize was an algorithm for generating color images from grayscale images using an image of similar things as an example, in this case, colorizing trees and sky based on a picture of other trees.

CS224 Final Project


the next few pictures are from my cs224 group project. we ({ahp|ekern|jdfunaro|roth} implemented Fedkiw's smoke simulation siggraph paper; my section was the volumetric photon map renderer. the full "pipeline" here consists of:

simulated smoke rising through two tori. (divx movie)


various shapes rendered using only the photon map. shows indirect illumination and color bleeding pretty well. also shows how horrible the variance is in images rendered using only the photon map. in practice, the photon map is only used for caustics (which can't be raytraced) and as an approximation of radiance when the path contains at least one diffuse bounce.


first volume caustic success: point light -> glass ball -> box of smoke
photons are cast from the light, concentrated by the glass ball, absorbed by the smoke, and stored in the volumetric photon map. (which is stored in a KD-Tree) when ray-marching through the smoke, the rendered takes the proximal concentration of volumetric photons into account and thus is able to render the caustic.

© 2000-now