computer linux gamedevelopment qwerkop
3D Engine


This Project is my third approach to developing a 3D engine. After a short try to realize a engine in mode13h I recognized it would be better to use a third party api. The second approach was with DirectX9 but had been stopped after a couple of month depending on the os portability problem. The last and hopefully the best choise was OpenGL. The whole engine is strictly object oriented designed and its target is to provide a solid framework for Graphics in a 3D or even 2D game. The development is still in progress and I have to struggle with some bugs but like the experience show, its just a question of time to fix them. Big thanks goes to nehe and gametutorials.com which gave me the chance learning by doing. The following list shows the features which could be called as stable.

- Easily set up the OpenGL functionality
- Fullscreen / Window Mode
- Various resolutions (640*480 to 1600*1200)
- Color Depth 16, 24 and 32 Bit
- Free Camera Movement (1thPerson, 3thPerson)
- Light (ambient, diffuse)
- A mighty Vector3D and Vector2D class with several methods
- Quaternions (for free axis rotation)
- A matrix4*4 class

- Texture loading class (BMP, JPG (jpglib), TGA, TGA-RLE )
- Several Texture Filters (nearest, linear, mip-mapping)
- Font class (bitmap-font, 3D-font, true-type font)
- Basic 3D Objects ( plane, cube, sphere, disc, cone, cylinder, semi-disc, tube)
- Heightmaps multitextured with detail map (for landscapes)
- Model Loading static 3DS (with several textures, no animation)
- Map Loading static BSP (some features are not implemented jet)
- Curved Surfaces ( in progress )
- Basic Particle System (fire, water, smoke)
- Sphere mapping (to fake simple reflections)
- Waving Textures (for water or flag effects)
- Fog (linear, expotential, expotential^2)
- Very basic morphing effect

I hope that i can find the time in the future to continue this project.