Real-time Visual Simulation of Smoke on the GPU (C++/OpenGL/GLSL) [Apr 2010]
This is a real-time GPU based implementation of incompressible Navier-Stokes based numerical fluid simulation that I did for my Masters project at UNM. I used 3D textures
for the grids and both simulation and visualization was implemented in shaders. For rendering I used the half-angle volume slicing
algorithm generating nice soft shadows within and outside of the smoke volume.
**Details** *Source code sample*
Shaded a model with multiple energy conserving light sources, translucency & Percentage-Closer Soft-Shadows. Also implemented an algorithm to remove seam artifacts on the model.
**Details** *Source code sample*
Ray Tracer (C++) [2009]
Implemented the nuts & bolts of a ray tracer with sampling, anti-aliasing, texturing, area-lights with Ambient Occlusion, some procedural shaders, post-process tone mapping and distance based light attenuation effects in a composed scene.
**Details & source code**
John Player Gold Leaf - Boat Racing Game (5 Players) [2004]
Worked on the engine and multi-player networking for this game developed at eSophers Ltd, and was
successfully delivered to our client: British American Tobacco, Bangladesh.
We use our own engine Agni written in C++/OpenGL to develop this game, and I used DirectPlay for network functionality.
This game was designed to run on 5 PCs connected via LAN and was used by the client company inside
mini-buses for a special advertising campaign. In this game upto 5 players race though a track though
a vast ocean surface to a finish line in the mountain-side.
This was an implementation of a GPU technique using perlin noise to simulate procedurally generated
clouds on a plain surface. I worked with my friend Mishuk on this one.
Nerve Engine - Bump-mapping
I also worked on a engine (Nerve Engine) with Mishuk to use as a testbed to try out different graphics/games
techiniques. Here I was testing a bump mapping shader on an object.
*Source code sample for handling 3D models and Geometry*.
Java ME 2D Game Experiment
Wrote some Java ME code to experiment with 2D image sprite based games for mobile devices.
*Source code*