Medial axis
A*
Convex geometry to silhouette converter
Navmesh and pathfinding algorithm utilizing the properties of a polygonal voronoi diagram. Pathfinding uses A* and knows the closest geometrical point along each path, allowing agents of all sizes to navigate the same navmesh. The navmesh generation is in C# and creates a voronoi graph with medial axis that utilize the gpu. My cpu implementation is completely different using local insertion and deletion of cells on the cpu and is in C++. This method updates the voronoi map in near-constant time and can be found here. Main paper used for inspiration here.
Features
A variety of effects with a wide range of techniques using my own CG framework and OpenGL.
Features:
Outline shader
Soft particles
Direction, Spot, and Point lights
Depth of field
Water reflection
Simulated water
Reflection & refraction cube mapping
Shadow mapping
Beers law
HSV correction
Shore softness
Water reflection
Lensflare
Procedural day & night cycle
A rasterization program which simulates the complexity of rendering actual complex 2D/3D geometry. All the rendering is done on the cpu.
Features:
Backface culling
OBB frustum culling
Perspective & sub-pixel/texel correct
Clipping
Inset
Obj loader
Deferred lighting
Forward rendering
Interlaced alpha rendering
Glow
Cubemap reflections
Volumetric light scattering
Custom model format
Directional, Spot, and Point lights
N bones per vertex GPU skinning
Directional lights
Texture masking
Object selection buffer
An OpenGL render engine supporting forward rendering, deferred shading, and deferred lighting rendering pipelines. Each pipeline is measured and documented. In addition to raw performance I also looked at how well certain post processing effects could be integrated for each pipeline. [Link to document]
Features:
Realtime procedural terrain
Perlin noise
Texture blending
Cellular / worley noise
Fractional brownian motion
Procedural spheres & cylinders
Cloth simulation on both cpu and gpu (OpenCL). GUI was done with GWEN.
The cloth uses Verlet integration and iterative constraint satisfaction of structural, shear and bending springs. In the application you can play with certain spring settings, including damping, rest length, spring iterations per cycle, and number of total iterations per cycle.