Upcoming Events
Unite 2010
11/10 - 11/12 @ Montréal, Canada

GDC China
12/5 - 12/7 @ Shanghai, China

Asia Game Show 2010
12/24 - 12/27  

GDC 2011
2/28 - 3/4 @ San Francisco, CA

More events...
Quick Stats
84 people currently visiting GDNet.
2406 articles in the reference section.

Help us fight cancer!
Join SETI Team GDNet!
Link to us Events 4 Gamers
Intel sponsors gamedev.net search:

Open Source and the Gaming Industry


How Open Source Helps the Gaming Industry

Information Sharing

Many think that the single greatest element in the rapid advancement of the gaming industry is the wide-open exchange of knowledge. There are many websites with gaming information, source code for games being released to be examined and studied, magazines and books giving anyone the ability to understand game making techniques. Open source also encourages and promotes this same information sharing.

Reduced Overhead

You could lower the cost of the development of a project by using a pre-existing open source game library.

Do you need a game engine? You could use the Crystal Space engine (www.crystalspace.org). Is there a need to write a scripting language when you could get Python (www.python.org)? If you need an audio library then you could use OpenAL (www.openal.org). Is it completely necessary to write a model editor when OpenFX (www.openfx.org) might work for you?

Development Speed

Imagine the ego trip for a hard core gamer to be able to say that he contributed code to the newest RPG on the market. This alone will draw a number of programmers to an open source game project, especially if the programmers get some credit in the finished game.

Having additional coders for fixing or improving code after an alpha or beta stage can be a great benefit to the project. Often times as the project comes to a close, there is great pressure to hurry up and get the product finished. This is an area where open source can also be a benefit. The additional coders working on your project will be anxious to see the project finish and potentially increase their productivity.

I did an informal survey of developers on a couple of open source project. Here's what I found. On average, the programmers that responded to the survey spent 87 hours a month writing code for various open source project, the time spent ranged from 10 hours a month to about 350 hours a month. Look at it this way; if you had 4 outside developers (which is very realistic) spending an average of 87 hours a month on your project, you have picked up the equivalent of a full time programmer for the project without the added cost.

Additionally, just over half of those who responded say they make sure the code compiles and cleans up minor errors on a daily or bi-daily basis. Also, many developers spend time on documentations and product support.

Reduce Redundancy

In writing a 3ds importer for the Crystal Space library, I felt like there could be a savings in time if I could find someone who had already done the dirty work of translating the 3ds information. I found lib3ds (http://sourceforge.net/projects/lib3ds), which suited my needs, however I found that the I/O interface was specifically for disk access. Crystal Space uses a Virtual File System making it incompatible with lib3ds.

I sent an email to JE Hoffman, project leader of lib3ds and told him my dilemma. He gladly rewrote the interface to use any data format and it was integrated into Crystal Space. However, the story doesn't end here. Lib3ds was known to work only on Windows and Linux. Crystal Space covers many more platforms. I sent an email to the Crystal Space list asking for help for lib3ds to get it to work on other platforms. A Crystal Space developer Eric Sunshine responded and helped out on making lib3ds available for more platforms.

This was a win-win situation. Crystal Space got an importer; lib3ds was made available on more platforms. The programming community also benefits with having a more versatile library.

While this may not seem like the greatest example, how many trivial programming tasks consume parts of your day? Do you really need to write a compression library or will zlib (http://www.gzip.org/zlib/) work just as well for you?

Project Stability

Project stability could be the greatest case for using open source software. Open source software has been peer reviewed every step of the way. It has been tried in a number of environments and under a number of conditions. Just think of the number of machines with the wide variety of configurations that will be testing the product.

Mature open source code is as bulletproof as software ever gets. Why? It's always being looked over and compiled and tested. In my survey of open source developers, a number of developers spent a sizable percentage of their time making sure the code was in tip-top shape.

Broader Market

Why do game companies limit the number of platforms for which the product is available? Is it because they don't want that market share? Of course not. The reason is that that market share doesn't cover the costs of developing for that platform.

Would that platform be profitable, if it could be added for next to nothing? Absolutely. This is another added benefit of open source; end users are often more than willing to do the necessary work to make a game work on their platform. Each added port is an added market for the game.

The additional exposure for the game generate by being an open source project can also help the project gain a greater market share. Anyone contributing code to the project would have an additional incentive to purchase the finished game.

Opportunity for Lone Gunman

There have been many lamentations lately for the solo game developer. Oh, the good ol' days of the past when you could write a game yourself put it in a zip-lock bag and sell it at computer show. I don't believe days of the solo developer have to be a distant memory of the past.

Granted, it will take more work, more planning and a lot more ingenuity however, if someone can think outside of the box, it can be done. Open source software can go a long way toward making that happen.





Making Money with Open Source


Contents
  Introduction
  How Open Source Helps the Gaming Industry
  Making Money with Open Source
  Downsides

  Printable version
  Discuss this article