NASA SAFER Simulation
A simulation of the SAFER astronaut jet-pack.
Intubation Simulation
A simulation of an intubation medical procedure.
Helicopter Weather Simulation
A helicopter flight simulation with realistic weather effects and controls.
Astronomy Atlas
An interactive atlas of our space enironment depicting the universe at various scales.
Magnetic Field Simulation
This is a simulation of a magnetic field used for plasma confinement.
Galactic Supercluster Visualization
This is a visualization of galactic supercluster data that I worked on in correspondence with Dr. Margaret Geller.

3D Graphics and Simulation

3D graphics and simulation are entirely responsible for drawing me into the world of computers and technology. Thoughtout my career, I've been fortunate to have had a chance to work in most areas of computer graphics from photorealistic rendering to real-time simulations.


I started out doing 3D graphics on an Apple IIe when a single wireframe image would take overnight to render and a simple animation would take a week. Since that humble beginning, I've explored a myriad of aspects of computer graphics and simulation including the following:

Interactive Simulation

  • Designed 3D scripting languages for specifying behavior and interaction
  • Experienced working with physics engines (Bullet), collision detection
  • Implemented various direct manipulation techniques
  • Created several hundred interactive simulations for a wide range of applications (see portfolio below)

Real-time Rendering

  • Expert in OpenGL (my work is featured in the Red Book, Chapter 14 - Finding Interference Regions)
  • Progressive rendering and hybrid rendering techniques
  • Experienced working with scene graphs and other data structures (bounding volumes, octrees etc.) for real-time rendering.
  • Simulation performance tuning using level of detail and other optimization schemes.

Photorealistic Rendering

  • Extensive experience writing ray-tracing software
  • Have written flat, gouraud and phong shading software renderers
  • Have implemented parallel ray-tracing techniques
  • Created shading language extensions for ray tracing

Lighting and Shading

  • Experienced writing shaders, have written my own shading language
  • Have implemented various lighting models
  • Experienced working with fixed pipeline material models
  • Experienced with texture, stencil, gloss, and bump mapping techniques

3D Modeling

  • Curve and surface modeling (bicubic, quadric, NURBs)
  • Mesh modeling (using various connected and unconnected mesh representations)
  • Volumetric modeling (have implemented marching cubes isosurface generation algorithms
  • Procedural modeling (using scripting languages of my own design)
  • Comfortable with 3D vector, transformation, and projection algebra
  • Have basic experience with 3D modeling tools (Autodesk 3ds Max, SketchUp, Maya)

Training Simulations

Any time you have complex physical equipment, processes, or procedures that needs to be explained, 3D simulation is a potential solution.

I've built training simulations for such tasks as:

  • Training NASA crew members on how to use spaceflight hardware including scientific payloads, robotic arms, and exercise treadmills
  • Training Navy helicopter pilots to better cope with inclement weather conditions
  • Training people how to install and maintain electronic equipment for companies like Cisco Systems.

Whether you need to train astronauts or network engineers, 3D simulation can help to explain complex spatial relationships quickly and intuitively.


Educational Simulations and Games

3D simulation is great for educational simulation because it allows the creation of extremely engaging, interactive content. Using a simulation, a student can experiment with and experience rather than just view a concept.

Over the years, I have created dozens of educational simulations, mostly focused upon science education. I have built simulations to teach concepts in many disciplines including:

  • Physics
  • Chemistry
  • Astronomy
  • Mathematics
  • Genetics
  • Archeology

I started building simulation tools while I was an undergraduate student to make it easier for me to understand my physics and math classes. Unfortunately, simulation has yet to make a significant impact upon mainstream education. Hopefully, that that will change within my lifetime.

Scientific Visualizations

3D simulation is an ideal way to intuitively and effectively communicate scientific information. Since scientific data is often three dimensional or multidimensional in nature, it can most effectively be analysed and understood using 3D visualization techniques.

I have built software for visualizing multidimensional data using a variety of different graphing and visualization techniques including:

  • 3D isosurface and volume rendering
  • 2D isobar generation and rendering
  • Vector field line rendering
  • 3D bar chart and grid rendering
  • 3D point cloud / sprite rendering


Medical Simulations

3D visualization is useful for illustrating the anatomy and physiology of the human body and also for medical procedures, medical equipment, and processes.

While I am not a 3D medical illustrator myself, I have worked with 3D medical illustrators to create interactive and animated simulations of the human body and I have also created medical visualizations using medical imaging data such as MRI data. I have even created 3D simulations that take you on a first person voyage into the human body as in the classic film "Fantastic Voyage".

Architectural Visualizations

3D simulation and visualization is an ideal way to intuitively and effectively communicate architectural design information and architects have been primary users of each of the software packages that I've developed. My first computer related job while I was still in college was at a CAD company called "Point Line CAD" where I wrote a ray tracing visualization system. During my work with Hypercosm, we partnered with Google and with Autodesk to create software that was used by hundreds of architects. I've built architectural simulations for a variety of applications including:

  • Walkthrough visualizations
  • Interactive animated construction sequences
  • Interactive configurator applications
  • Urban planning
  • Marketing and communications
  • Security systems
  • Warehouse information systems
  • Geovisualization