Sick Kreation’s End Game Engine…

Filed Under (Engine) by Ruben on 14-08-2012

Hello Everyone, my name is Kevin and I am the programmer and founder of Sick Kreations Studios.
I want to take a moment and describe the current state of our game engine for anyone that is interested.
The End Game Engine has evolved a lot since the release of KGB in January of 2010. It is built on XNA and the core of the engine is completely propietary C# code. Here is a quick overview of the engine.

Core
Multi-Threaded, running three threads each on their own core on the Xbox 360, separating the ‘Update’, ‘Physics’ and ‘Draw’ task. This allows the End Game Engine to utilize the full power of the Xbox 360 PowerPC and achieve frame rates of 60 frames a second while rendering geometry consisting of hundreds of thousands of vertices’s and hundreds of textures such as the End Of Days Level.

Rendering
Fully deferred rendering at 1280 x 720 HD resolution
Gamma correction on textures for accurate linear lighting
Deferred lighting supports one directional and hundreds of point lights
Baked lighting exported from authoring tools to get highest quality
Dynamic shadow mapping used for FPS player hands and weapons.
Post processing Bloom, Blur and HDR

Collision
Triangle level collision for ray cast at the highest level of detail of the render-able geometry and low polygon mesh collision for FPS character movement in levels. Triggers for running events and moving FPS character on objects such as ladders

Shader
Every render-able model can have Diffuse, Normal , Specular, Emissivity, Reflection and Alpha Blending maps applied

Audio
All sound is authored in XACT3

Optimization
If you are familiar with XNA and C# then you know that a big caveat with frame rate and smooth performance is the Garbage Collector. While developing KGB:Episode One, I found that I was going to have to abandon elegant program code for a mass of ugly public and static variables to avoid garbage collecting hic-cups. The single biggest fix for this was in the “Skinned Model” sample from the XNA tool set. My animation code is based on that example and moving all the base “classes” to “structures” significantly improved garbage collection performance.
Another performance optimization built into the engine is vertex compression. Nuclear Wasteland 2030 was vertex bound and that is why it was released at 30 frames per second. Although the XBox360 can process hundreds of thousands of vertices blazing fast, I ran into a bottleneck in NW 2030 with grass. So immediately after NW 2030 was released I added the vertex compression and tripled the number of vertices that could be processed thus allowing for many model assets to be added to End Of Days.

Since releasing End Of Days I have spent time on two significantly new features; Navigation Mesh based on Recast/Detour for pathing AI and a .DLL that I wrote to support Modifiers in 3DS Max. The Recast/Detour is nice…I wrote an export routine for the Recast demo to save the navigation mesh data in an XBox360 format for the game engine and ported the “detour” part of the code to C# to run in managed XNA. I have also added deferred lighting shaders that output HDR.
Except for a few thousand other small details that I left out, the End Game Engine is running extremely fast, has a very promising future and is allowing us to quickly develop beautiful looking games that are fun to play. We currently cannot offer to sell or share the engine even though we would love to due to the fact that we do not have time to offer support for it. Hopefully in the future we will be able to share our engine with other developers.
If anyone has any questions or comments regarding the End Game Engine then please do not hesitate to leave a comment and I will answer as soon as I can.
~ Thanks, Kevin ~

New Update…

Filed Under (End of Days) by Ruben on 07-08-2012

Hello Everyone! It has been quite a long time since we last posted any new information or updates. This is for various reasons.
First I want to let everyone know where we stand on fixing the remaining bugs. We spent a whole year writing code for this game wrestling with limitations to just make the End of Days game possible. We then spent an additional 3 months fixing any hidden bugs and releasing new weapons and content. We have now spent a couple extra months trying to fix some of the remaining bugs and we believe that we know how to do that however it means we have to rewrite about 15 months of code without any guarentees that it will work. We are torn between doing a whole rework of the game and giving the majority what they have asked for…SURVIVOR MODE!! There are quite a few things that I am excited about on Survivor mode that I want to share but I have to keep silent on until we are closer to releasing it which I hope will be very soon. We have split our time between End of Days Survivor and trying to fix the remaining bugs along with another new project. This new project includes our previous Art Director Jon Conelea who worked on our most successful game, Nuclear Wasteland 2030!! We are happy to have him back and we will be releasing a teaser within a week about this new project.