The Open-Source Game Development Pipeline

Providing the means and education to create games using free/libre open-source tools.

Leave a comment

It’s Aliiiiiiiiiiiive

Howdy, folks! 🙂

Just posting to demonstrate the progress I’ve made with my C-based software renderer. It is currently churning out several thousand-triangle meshes (with perspective texture-mapping and shading at 720p resolution) at ~80 fps. It has yet to be properly parallelized, so that number may increase.

I’m currently getting meshes to transform inappropriately due to Blender being a Z-up right-handed coordinate system, and my scene graph a Y-up left-handed coordinate system. I’ve already gotten my COLLADA importer to work, but just need to make some final adjustments before models are correctly brought into the scene. As you can see below, Suzanne is being rendered, but with her face pointing downward… I don’t want her to keep kissing the floor! 😡

Software renderer in action! Poor Suzanne… 😦

I will keep updating this blog with further progress as ORConf gets closer. Stay tuned!

In other news, the Godot Engine just had another maintenance release recently. You can download version 2.1.3 here.

Cheers! 🙂

Leave a comment

Update: 9-17-14


Tonight I’m going to discuss interchange formats for a moment.

As of now, I’m currently getting my hands dirty with the Irrlicht-1.8.1 rendering engine. But, unlike its well-known rival (Ogre3D), it doesn’t have its own format for animated meshes. So, what’s a plucky soon-to-be 3D animator to do?

Well, if you take a look at Irrlicht’s supported animated formats here, you’ll see that only a handful are actually useful (or mature enough) for games. So, without further ado, here’s a link to a Blitz3D exporter that you can use for Blender (the open-source 3D animation software I recommend you use as part of the pipeline).

Blitz3D is a binary interchange format which specializes in skinned, bone-based animation. In the last article, I showed you some Blender tutorials regarding a gingerbread man. Given that the model was rigged and animated using bones, you’ll want to use this format to represent it as a 3D game asset.

You can begin to bring the exporter into Blender by going to File > User Preferences, clicking on the “Import-Export” tab on the left-hand side (so you can see what formats are currently installed/enabled), and continue by clicking on “Install from File” at the bottom. From there, you’ll just need to navigate to the zip file, select it, and then click on the “Install from File” button in the upper right. If everything goes well, you should now be presented with the option to export the Blitz3D format. (Don’t forget to check the box to the right of the add-on description so it gets enabled!)

Now that you have this new tool in your arsenal, feel free to start creating lots of animated characters for your game. The sky’s the limit! 🙂

That’s it for now! I’ll continue to keep you posted as I make more progress with my game design efforts.