Quake 3 BSP loader demo
This demo loads and renders Quake 3 BSP files. It uses multithreading to load the textures. When you select a map to load the data gets loaded and you can begin to navigate in the map while the textures are loading in a low priority thread. The result is faster loading time and this concept could be expanded without much effort to almost completely eliminate a loading screen in applications.
Mandelbrot demo
This is a simple multithreaded Mandelbrot rendering demo.
Voxel Rendering
This is a WIP demo of my voxel rendering engine. No hardware acceleration is used in this version and the model does not consist of polygons.
JKulki
JKulki is a small Java game where the goal is to get five or more balls of the same color to form a line. In order to run the game you will need to have Java installed. You can also download the games source code here.
3D Engine Demo
After nine months of working on and of, writing over 36 000 lines of code I finally have a small demo done using my 3D engine. I am sorry that my modeling skills do not go beyond creating cubes and spheres but nevertheless here is a demo. My goal was to create a somewhat of a Doom 3 engine clone that I could put in my programming-portfolio. It features complex physics, shadows, bump-mapping, lightmaps, environmental audio, Quake 3 BSP file support, Doom 3 level support, Doom 3 MD5Mesh support and many more pointless stuff like that.
Fur Rendering
I made this demo for the book "More OpenGL Game Programming". Included are two demos that use the fur rendering technique I described in the book. The first demo uses the technique to simulate fur on a bear model and the other demo uses the technique to simulate hair on a human head model.
Projected Omnidirectional Texture Shadow
This demo demonstrates projected texture shadows, a technique that is used in Half Life 2. (the demo was tested and should work on a computer that has an GeForce 4 Ti or better/equal graphics card and has the latest Cg DLL files installed).
Open Dynamics Engine (ODE) Demo
This demo uses ODE as the physics engine. It includes some cubes and spheres that fall to the ground and collide with the environment.
Engine Test
In this demo you will see a ball bouncing around. You can press R to reset the scene, E to enable/disable wireframe rendering and Esc to quit. I created this small demo using my own engine. Part of the engine source code and the programs source code are included with the demo.
Lights Demo
This demo does not show of any fancy rendering technique, however it's purpose is to show how we can combine Visual Basic and C++ by creating a DLL file in C++ and using the exported functions in Visual Basic. (the demo was tested and should work on a computer that has an GeForce FX or better/equal graphics card and has the latest Cg DLL files installed, if you should have any problems with the shaders then remove/rename the shader folder and the demo should work).
Dynamic 2D Shadows Demo
This little demo shows how 2D shadows can be created only using a shader and one heightmap. I haven't researched heavily on this subject, it has just been one of those things that you code at 3 AM. This demo does not include it but one could easily expand it so that a shadows length of cast is proportional to the value in the height map. Another possible improvement would be to run it on a shader model that supports loops.(You will need a GeForce FX or better/equal graphics card and the latest Cg DLL files installed to run this demo).
Vertex Displacement Demo
This demo was created to demonstrate that we can effectively move the vertex texture look up from the GPU to the CPU by simply making a function that does the look up and sends it as a variable to the GPU. It is very useful when you need to perform vertex texture look up but do not have the hardware that supports shader model 3.0. (You need a graphics card that supports shader model 3.0 or better and the latest Cg DLL files installed to run this demo).
Omnidirectional Shadow Maps
Normally shadow maps are flat 2D textures that are projected only in one direction in a scene. This demo uses cubemaps in order to generate an omnidirectional shadow map, this way shadows can be projected in all directions. (You will need a GeForce FX or better/equal graphics card and the latest Cg DLL files installed to run this demo).
Spheres
This is a cell phone game aimed for phones that support Java. The game has been specifically made for LG's G7100 cell phone but should work for any cell phone that has a color display with a minimum resolution of 128x138. You can download the source code for this game here.
Normalmap Viewer
This progam enables you to load ASE models and view them with normal and specular maps. You will need a GeForce 4 or better/equal graphics card to run this program.
Height To Normalmap Converter
This little program converts an image from a heightmap to a normalmap.
