Older Projects:


I have been involved in a variety of commercial projects, the following videos and images are all from side projects I developed in my spare time.


GCE (GeoCacheEngine) Terrain Rendering:

images/puget1kWF.jpg

I designed the GCE engine to (a) have a flexible continuous level of detail rendering mechanism, and (b) stream in new chunks of data from disk or network as they are needed. At the time I wrote this engine, concepts like terrain mip-mapping and streaming LOD chunks from disk were just getting popular, of course by now those ideas are mainstream.

The system was also designed at the start to use a fixed amount of system memory that was re-used by new data as the viewer moved around, the total amount of this data pool could be dynamically re-sized at runtime (effectively setting a maximum level of detail).

I spent the better part of a year writing the SDK and plugin system, and I eventually integrated Ageia PhysX and a basic character AI and animation system, as well as a number of plugins for "generic" video game style features (sound system, particle system, etc.).

I had a difficult time getting datasets large enough to really push the engine, my main source of test data was public imagery and elevations from the USGS in GeoTIFF format. Datasets can span multiple files which makes it possible to work with extremely large input sources.

The largest set I tested was Dallas, TX, at a bit over 100 GB, this took literally weeks to download in pieces, unfortunately the USGS set (at that time) had a few missing tiles and it was no good for demo purposes when it was finally processed. I had to purchase an additional external hard drive just to store the raw data and final output.

The next largest was Montgomery, AL, I found the best way to convey the sheer size of the data was to do a straight vertical flyup from the center of the terrain and reveal the entire area.



The elevations aren't noticable in this flyup video but they are actively being rendered and seamed together in different levels of detail.

Here is a similar flyup over an area in California:


NOTE: The site "www.gcengine.com" is no longer active.


Ray Tracing:

images/9Minutes.jpg

I have a good understanding of ray tracing and I wanted to have something of my own I could play with for fun, I wrote this ray tracer as a way to test a "generic scenegraph" library I had developed for general usage.

The ray tracer supports a basic text format for the scene description, user-defined material types, textures, OBJ models, and can record/playback camera paths for rendering out to video.

I had fun writing the application and I generated some useful code along the way, but the project is effectively "dead" at this point, I may add stereo support in the future but it's not on my active list.

The following videos show a few different test cases I used during development, I don't have any practical use for a ray tracer so this was all for fun and experimentation:




Procedural Terrain:

images/LitTiger.jpg

I have had an interest in procedural environments since my early programming days, over the years I have written several "core" engines that create a generic space populated by different "modules" (usually script-defined objects or plugins).

I had developed a new terrain paging and rendering system that could have been used as a plugin to the core GCE engine, but I wanted to write a separate engine to test it out (and also utilize my new scene graph library), I decided it would be a great test for a large procedural terrain before importing real data.

The viewer can travel in any direction for literally hours on end. The environment appears similar (due to parameters) but is unique in every location. Fixed gameplay areas of interest can be established at any location, allowing the rest of the environment to be used as a general "surrounding wilderness".

The terrain system obviously worked as expected, and I was able to generate several types of environment from a limited set of parameters. I added some basic grass and billboard trees as filler to test the "object population" scheme and then put the project on hold, I may develop this into a nature/hunting style game in the future.


3D Level Editor - The Old Days:

images/Editor.jpg

I began working in 3D shortly after seeing the game "Quake" for the first time, before that I had worked with 2D scrolling engines and text-based adventure games. Much of my early work involved manual rasterization, manual physics and collision detection, lightmapping, basic game systems, and so on.

I had experimented with pseudo-3D systems before (ray-casting as in the original Wolfenstein, and 2.5D height-levels as seen in the original Doom engine), but Quake changed everything.

My first engines were developed in DOS, I moved to Windows around 1999 so I could start using OpenGL. For the first few years I still used my old DOS-based level editor to create art assets for my Win32 OpenGL engine, around 2002 I decided to write a new editor for personal use.

This was the first finished product I developed non-commercially outside of my regular job, with installer and help documentation.

In the end I never created much more than test levels for my own enjoyment, but the development process itself was my main goal, I don't consider myself an artist and my focus has always been creating the technology vs. using it.


Misc. Info:

Over the last 16 years I have created several programs (professionally and for home use), and I have multiple areas of interest in software development, not just computer graphics. My career path has gone from the initial interest in video games, to tool development, to military simulations, to software architecture and design, and (most recently) to stereo conversion.

Professionally, I have dealt with a number of development scenarios from large projects to custom one-off solutions, and my work experience has required me to interact directly with large teams and also manage remote workers (artists and programmers).

As of this writing I have just wrapped development on the base "Version 1" of S3D. This work is especially exciting for me as I have been fascinated with stereoscopic vision ever since I got my first 3D comic book with the red/blue anaglyph glasses.

At this point I don't know what my next project will be, I have been studying traditional illustration for the last few years (rendering 3D the old fashioned way) and I believe I have a few more years of work in that area.

This is the first public release of my resume information in a long time (almost 5 years), and I am "open for business" if the right work situation comes along, I am generally reclusive and prefer to work from home but I am used to onsite travel as needed (within reason) and I can guarantee the quality of my work.

Thanks in advance for any serious inquiries, if you feel that my skillset may be suited to your project or enterprise feel free to drop me a line at:

gimpelcodeshack@gmail.com

Thanks
-René Gimpel