Computer Graphics in Processing
Applying computer graphic concepts in Processing using Python.
Ray Tracing
Created a ray racing renderer. This program detects intersections between rays and vertically-oriented cylinders and spheres. Implemented shading functions to include ambient and specular shading as well as cast shadows (via shadow rays) and reflection (via recursive ray casting).
GPU Programming
Created a program that used the GPU (vertex and fragment processors) to carry out various rendering tasks.
Bullseye: Took a translucent blue polygon and modified it so that the polygon has a number of concentric circles. These circles alternate between transparent and opaque.
Horizontal Blue: Performed a blurring of an image in one direction. Wrote a GLSL fragment program to perform a number of texture lookups in order to smear out the color in an image.
Bumps: Wrote a vertex program to modify the geometry of a collection of polygons.
Fractal Set: Drew a fractal that is related to the Mandelbrot Set.
Subdivision Surfaces
Created a program that creates smooth surface creation using Loop subdivision technique. The code will read in polyhedral models (made up of only triangles) and subdivide them.