Keless has joined are small band of intreprid coders.
As part of the packaging for the next release, the current build of the engine has been successfully ported to Visual C++ 6 and Visual C++ . NET
This project is still alive and kicking despite the fact that no news has been posted for while. (most discussion for this project happens at www.gametutorials.com). The next release is nearing completion and moves the engine from beign a simple render engine to a complete game engine, including:
Open architecture scene/level management
Entity/Scene Entity/Entity collision detection and avoidance
Entity state machines, animation and AI hooks
Integrated Event processing
User Interface menus + textboxes
Improved BSP support (now loads Quake3 levels) ... read more
Added a ROAM demo to the engine. This is not the final form as it does not comply with our scene graph design , but its a good test of capabilities - and looks pretty cool too!
We can now load basic Quake3 BSP level files. We only support JPG textures, no lightmaps, and no fancy stuff at the moment - but it is a start.
Need I say more? w00t!
Support for multiple DBs added. Resource deletion
Support for transparency masked textures added
The initialisation mechanism of the VertexManager and vertex pools has been significantly enhanced. An unlimited number of pools is now supported. Support for future multitexturing has also been added
Billboarded primitives have ben added and tested!
Primtiives now have a center and an array of normals.
Texture Caching now uses primitive center to determine primitive deph
Rendering of point and line based primitives is now supported
A separate vertex pool for array based rendering has been created
Extra accessors ave been added to materials
The renderer now supports Materials and lights. Materails are changed in a lazy fashion. No material caching is performed (it has be opinioned that Texture swapping is far more expensive than material swapping). However, materials are only swapped when they are different from the current material. To efficiently support this, at creation time or modification time each material is assigned a 32 bit compare value, materials with identical internal values will have the same compare value. Therefore only a simple integer compare needs to be made every primitive draw.
Model compilation now works - hit 'm' in the demo to see the frame rate jump. Also added operators to Matrix and Vector classes. Look,up,right calculation and absolute positioning/orientation to Transform, fixed texture switching and fixed the transparency cache
Basic transparency caching has been added but not tested - other than to ensure that the engine still runs.
I have added a texture cache to the Renderer and enabled the GT_TEX_ORDER mode. Texture caching works but has not been tested for real world cases (need levels)
I've added a small demo to the main.cpp that allows you to turn texture caching on and off
Added caching of vertex manager generated vertex order array to primitives
Changed dynamic arrays to use memcpy for aray operations (faster)
Added a reset() method to Dynamic Array - clears array without releasing memory (faster for reuse)
Added some basic statistics to the Renderer
Font support, ortho mode rendering and a simple FPS counter have been added to the prototype CVS tree to allow us to check the effect mods have on the frame rate. The font support is currently for 256x256 bitmapped fonts only
Keef has spent many days coding the engine prototype, and now is commited to CVS for us all to enjoy and get busy on.
The GTEngine Project on SourceForge begins