The Open-Source Game Development Pipeline

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

And then there was Audio…

Leave a comment

Hello!

I’ve made some more progress with my game engine. I’m currently using OpenAL directly (without ALUT, I might add… >_>), and am trying to create a cross-platform threading interface in order to spawn sounds/music off of the Main Thread. This way it can focus on Drawing instead.

As I’ve begun learning about Windows threads and PThreads (POSIX), I’ve noticed that they both have practically identical interfaces. So, it made me wonder… what’s the point of Windows?

And of course, it hit me. Windows is a reaction to UNIX in the same way that GNU/Linux & FreeBSD are a reaction to UNIX & Windows. I realized that the redundancy served a purpose if it made computers more accessible, which it has.

Even if you’ve got a grudge against Microsoft, you cannot deny that they’ve helped make computers more mainstream. Today’s issues, however, stem from an overabundance of control/monetization (how Microsoft/Apple are acting) in the face of even more-accessible/free alternatives.

So, let me tie this back into a discussion about audio; where the redundancy actually made things less accessible (strangely enough).

At first, I tried using several 3rd-party tools, “CAudio” and “OpenAL Soft”, to name a few. One failed to compile, and the other had a complicated interface. At this point, I decided to simply roll my own wrapper around OpenAL (the implementation of which was far less dense & confusing than when compared to OpenGL, thankfully), and I haven’t looked back. This is why I preach the fundamentals to other computer scientists/software engineers I meet. If you become too reliant upon the work of others, you will eventually encounter an obstacle too daunting for shortcuts.

I implore you to at least make and effort to learn native tools so you can always understand what’s being abstracted, instead of immediately relying upon a 3rd-party solution. More often than not, the problem is something that can be easily overcome if you just do a little bit of homework.

With that said, don’t hesitate to reach out if you’re still trying to learn LMMS, Blender, or GIMP (or any other open-source tools)!

Cheers!

(P.S. I’m currently building my engine so that it will be compatible with Windows, GNU/Linux, & FreeBSD. Expect some articles on how to use FreeBSD in the near-to-distant future.)

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s