Adventures in Game Development
Aries Engine… dead?

If your wondering why I haven’t made any posts relating to the development of Aries Engine lately, it’s because Aries Engine is… well… dead. Kinda.

The engine still exists, and it is semi-capable of rendering COLLADA models. I say “semi” because there seems to be some discrepancies between COLLADA files, produced by different 3D modelling software packages, that Aries Engine cannot handle. Specifically in the way textures are specified. It can, however, render some COLLADA files perfectly - including texturing and normal mapping.

There also appears to be a hidden memory leak in the application that is proving almost impossible to debug with XCode. This causes the engine to crash randomly when being launched - sometimes it works fine, sometimes it crashes on launch. When the new version of XCode is released, maybe I can rectify this.

Due to these issues, and the fact that I managed to get it to a semi-capable state, I am currently writing this off as a proof-of-concept.

Despite all this, I am very proud of what I was able to achieve in the short time I spent developing this engine, and it has in no way deterred me from wanting to continue along the game development path.

[Flash 10 is required to watch video]

Texturing is finally working! This is an example with a simple diffuse light source placed in the scene. This video also demonstrates the different drawing modes available (Vertex, Wireframe and Polygon).

What was the problem I hear you cry? The depth buffer was set to 0 bits!! It’s now set to a 16-bit depth buffer, which has fixed the “culling” issues (It was actually z-fighting, not culling).

Wireframing is fun!

Wireframing is fun!

Third attempt at texturing, and we are pretty much there! There are still some slight culling issues to fix.
The problem? My texture was loading in flipped in the Y axis! Doh!

Third attempt at texturing, and we are pretty much there! There are still some slight culling issues to fix.

The problem? My texture was loading in flipped in the Y axis! Doh!

Second attempt at texturing… Partially there, although it seems to be culling some of the front faces for some reason… Hmm…

Second attempt at texturing… Partially there, although it seems to be culling some of the front faces for some reason… Hmm…

First attempt at nailing the texture mapping code… Fail.

First attempt at nailing the texture mapping code… Fail.

[Flash 10 is required to watch video]

A quick demonstration of the current 3D model loading capabilities of Aries Engine (The cross-platform, open-source, 3D game engine I am working on).

I’ll be working on implementing texturing next.

If your curious, the engine loads models in the Collada format (.DAE). Collada is an open, XML based schema for 3D scenes/models. Almost all major 3D modeling applications can now export to this format, which makes it a great format to choose to support in my opinion.

Props go to the developers of RapidXML for their awesome, lightweight and blazingly fast C++ XML parsing library which is what I am using to parse Collada file data into my own class/object structure.