The Open-Source Game Development Pipeline

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

Leave a comment

Getting Started with Irrlicht: Let There Be Eerie Light


As an active member of the Irrlicht renderer community, I recently posted an article on how to set this robust, graphical framework up inside of the Eclipse Integrated Development Environment.

You can view my post on the official forums here.

After reading, since you will now have a basic understanding of how to get your development sandbox ready, you can start fiddling with the rendering engine via these tutorials. These are the same lessons that I used to ramp up on my knowledge of Irrlicht.

Let me know if you have any questions!

Cheers! 🙂

Leave a comment

The Colors on the Pallette: A Comparison of Linux Distributions


Tonight, I’m going to be writing about my recent experience with Red-Hat-based GNU/Linux distributions, and whether or not they apply to what you’re looking for in an operating system.

As I’ve written previously, I believe that Debian GNU/Linux is a must-have for any Linux-For-Desktop environment. The reasons for this are as follows:

-Package stability (package sources go through a rigorous testing process before they are accepted and passed along to various versions of Debian, i.e. “Stretch”/”Jessie”)

-Access to more recent versions of the kernel (through the “testing” environment)

-Ease of source compilation (most CMake configuration files are written with Debian-based distributions in mind)

-Popularity for desktop usage (to the point where Valve has built their SteamOS on top of it)

Debian is also one of the first GNU/Linux distributions to come into being, so it’s had plenty of time to cement itself within the open-source/free software ecosystem.

So, what about these “Red Hat” distributions, then?

I’ve spent the last month becoming familiar with CentOS 7 and Fedora 22. CentOS is the “free” version of Red Hat Enterprise Linux. Usage of RHEL isn’t free, but you’ll receive official, on-the-spot support from the Red Hat community.

If you install CentOS, you’ll also notice that the kernel is a bit old. CentOS 7 currently sports the 3.10 version of the Linux kernel. Red Hat has, of course, added drivers and packages to make the kernel more flexible with regards to different hardware offerings, but, upon immediately loading it up on a new budget machine of mine, the touchpad wouldn’t work. As a result of this, I threw the operating system onto a spare Ivy-Bridge laptop I had laying around, and didn’t see the same issue…

Instead, however, I had to go buy a new wireless USB adapter because it wouldn’t recognize the WIFI capabilities of the chip! 😡

Installing Fedora, on the other hand, was flawless. Everything worked right out of the box! The benefit of Fedora is that it has the latest upstream of the kernel, which, as a result, makes it much more accommodating for different types of hardware. On the software side, though, things are a little rough.

I spent several hours over the weekend trying to get both Blender and LMMS to compile, and both were unsuccessful. I made some comments about this over on the Fedora packages website.

Without the ability to compile from source, you’re left with whatever packages are available by default on the Fedora package manager (which now utilizes the “dnf” command, instead of “yum”, like CentOS). To give you an example, Blender is only at version 2.74 through the Fedora 22 package manager. I was pretty annoyed because Blender version 2.75 is a H-U-G-E upgrade! Given that I’m (at this very moment), writing this article on a laptop with a built-in AMD GPU, having that OpenCL Cycles support is a big advantage.

The other package in question, Linux MultiMedia Studio, however, was the latest version. Unfortunately, though, the package maintainer compiled it without SDL (Simple DirectMedia Layer) support. The problem with this is that sometimes certain audio effects/instruments don’t get along with ALSA (Advanced Linux Sound Architecture). And while ALSA may be less resource-intensive than SDL, SDL is guaranteed to give you the appropriate sound quality you’re expecting. This was a let down, to say the least. 😦

So, my verdict for Red-Hat-based distributions (so far) is that they aren’t appropriate for Linux-For-Desktop computing.


If you want a very stable server environment that utilizes Python 2.7.5 (CentOS 7), MySQL, Apache-anything, etc., then, hey, go nuts! All Red-Hat-based distributions are built with Linux-For-Server in mind. Fedora even has an ARM version for those of you interested in running it on a Raspberry Pi! Even I’m thinking about doing that at some point, albeit in a clustered environment.

As always, my job is to help readers learn how to navigate the world of GNU/Linux. If you’re looking for a desktop OS that will also provide you with the freedom to compile your own software with minimal effort, Debian-based distributions are your best bet. If you’re looking for a stable server environment for distributed computing, or even just a hobby project, anything Red-Hat-related will do just fine. The cool part about working with either family of distributions is that, besides the package manager, pretty much everything is the same. There’s very little you’d need to “re-learn” if you wanted to hop around.

Feel free to post any questions or comments if you think there’s something I missed. 🙂


Leave a comment

Update: 8-18-15


I’ve recently finished the implementation of my 3D Audio framework, which has been built on top of OpenAL. You can perform two-dimensional and three-dimensional audio tasks with relative ease.

I’m currently looking into creating a Networking solution for my framework at the moment. My plan is to utilize BSD sockets, and for this portion of the framework to be client-side only. There are numerous server-side solutions available, so there’s no need to add another wheel to the tire yard.

I know that part of the purpose of this blog is to educate readers about game development, and not simply write about getting a decent computer (and what software to put on it). I apologize for how long it’s taken me to write a tutorial about the subject. One of the reasons I’m making this framework is to create an easy-yet-comprehensive environment for aspiring game developers; so they can iterate quickly while still becoming educated about languages, patterns, and algorithms. At the end of the day, game development is just another form of software engineering.

As for the tools, I’ll endeavor to find suitable sources to whet your appetite in the meantime. Something like Linux MultiMedia Studio will require a comprehensive introduction in order to guarantee that a wide audience will begin to understand the application (Blender as well). I personally don’t think there’s much of a learning curve… but you never know.

In more familiar news :P, I bought a budget computer for under $400.00 USD that hits all of the bullet-points in my criteria! I’ll post a link to it in my next budget computer update.

Until next time! 🙂

Leave a comment

The Algorithm of “Choice”: Buying a New PC

So, I know I’ve written a lot of these “posts” regarding laptops and such, but I feel I’ve covered more of the budget end of the spectrum. Out of respect for those of us who want a little more “oomph”, I’ve got an equation I’d like you to follow.

First off, take a look at this laptop here.

It’s a MSI laptop with a Haswell Quad-Core (four cores, eight threads) 2.6 GHz CPU and a NVIDIA GTX 965M 2 GB GDDR5 GPU. It’s got 8 GB of RAM, 1 TB of storage, and a 1080p Matte display.

Next, take a look at this GPU benchmarking site, here.

You’ll notice that the GTX 965M is over halfway up on the list of Tier. 1 GPUs. So, about $1100.00 USD nets you an extremely powerful laptop. I’m going to call this the “entry-level” gaming rig you should buy.

So, now that we have our entry-level computer, where do we go from here?

Take a look at this machine. I call this a machine, because… well… it IS a machine. This MSI gaming Frankenstein is the opus of laptop gaming power! It has a Broadwell Quad-Core (four cores, eight threads) 2.9 GHz CPU, NVIDIA GTX 980M 8 GB GDDR5 GPUs in SLI configuration (16 GB total), 24 GB of RAM (I don’t like that it isn’t a power of two, but w/e… buy another 8 GB memory module), 1TB physical storage, and 256 GB of solid-state storage.

It is also $3700.00 USD. Quite a bit expensive, if you ask me… >_>

Return to that GPU benchmarking site, and you’ll see that the GTX 980M GPU in SLI configuration is ranked at the tippy-top of the list. Now you have your maximum.

So our model is currently $1100.00 for entry-level and $3700.00 for top-shelf gaming.

Now that we know this, what do I do if I’m somebody who doesn’t want entry-level performance, but also doesn’t need the excess of the Dom Perignon of laptops? Where’s the middle ground?

Take a look at this specimen here.

It’s a laptop made by a company called “Aorus” (which is owned by Gigabyte; makers of motherboards, and other electronic/computer-related goodies). At $1700.00 USD you get a pretty decent setup: Quad-Core 2.4 GHz CPU (four cores, eight threads), 16 GB RAM, 1 TB physical storage, 256 GB solid-state storage, and two GTX 860M 4 GB GDDR5 GPUs in SLI configuration (8 GB total). This unit also has a 17″ screen. Not bad.

Jump back to that benchmarking website again. You’ll see that an additional six-hundred dollars bumped you up fifteen places on the list. Again… not bad.

However, the 860M is the first NVIDIA Maxwell GPU ever made, and a single GTX 965M GPU has only 256 less Shader Arithmetic Logic Units than it (1024 vs 1280). So… is spending that extra six-hundred dollars really worth it? You’d get more memory for textures, sure, but the architecture (bare computing power) isn’t that much of a stretch.

Oy! Now what?

So… how about this one? Yet another Aorus machine.

For roughly one-thousand dollars more than our entry-level gaming laptop, we get: a Broadwell Quad-Core (four cores, eight threads) 2.7 GHz CPU, 16 GB RAM, 1 TB physical storage, 512 GB solid-state storage (two 256 GB M.2 SSDs), and two NVIDIA GTX 965M 4 GB GDDR5 GPUs in SLI configuration (8 GB total). All of this comes at a total price of $2300.00 USD.

Let’s (once again) return to our benchmarking website. You’ll see that a GTX 965M SLI configuration is 8 steps down from our previously-mentioned, top-of-the-line gaming rig. That means, for $2300.00, you’ll have a laptop that’s in the top 10th percentile of performance! Not too shabby. 🙂

Also, I forgot to mention this, but this Aorus also comes with a 3K display in a 15″ form factor. Yet a little more “oomph” for those who need a smoking gun. 😛

So, the moral here is: if you’re only looking to spend one-thousand dollars, there’s something out there for you. Two-thousand, same. Three-thousand… of course! 😀

But, more importantly… regardless of our research, the true answer to this post’s title is: “whatever makes you happy”. (I still recommend the $2300.00 Aorus, though… >_>)