One of the hardest parts of game development is simply getting started. This is something people ask us about a lot on meebo. Just setting up your workstation with all the proper tools can be overwhelming. There are far too many choices, and all the most professional looking apps are extremely expensive. Luckily, for any given commercial resource, there is usually a free, open source version that is almost as good and sometimes even better. Of course, these free alternatives tend to have very little money for marketing, so they can be hard to find. To help orient aspiring developers to these free resources, we've started a list of some of our favorites. You can click on each item to bring up a brief description and a link to further information.
Assets |
Applications |
Web Resources |
3D Art |
Blender
Blender is an open source, cross-platform suite of tools for all levels of 3D modeling and animation.
Link
|
www.polycount.com
Polycount is an active community of 3D video game artists.
Link
|
2D Art |
The Gimp
The Gimp is like Photoshop, except free, open source, and cross-platform :).
Link
|
www.conceptart.org
conceptart.org is a great community of people sharing their 2D art and ideas.
Link
www.cgtextures.com
cgtextures.org is a thorough repository of free textures.
Link
|
Sound |
Audacity
Audacity is an open source, cross-platform application for recording and editing sounds.
Link
|
|
Engine |
Libraries |
Web Resources |
Graphics |
OpenGL
OpenGL is a standard, core graphics library. It's what we use in the Phoenix engine.
Link
FreeImage
FreeImage provides very convenient reading and writing of just about any conceivable image format. With FreeImage in the Phoenix engine, we no longer have to worry about which image formats we might have to support down the line; they are simply already all supported.
Link
|
nehe.gamedev.net
NeHe is a classic series of OpenGL tutorials. It's how most of us at Wolfire got our start on OpenGL.
Link
Useful geometry site
There are thousands of pages like this on the web. I've found this to be one of the clearest and most useful. See the list of links at the bottom for lots of common problems in graphics programming.
Link
|
Physics |
Open Dynamics Engine
ODE is like Havok, except instead of costing thousands of dollars, it costs nothing (granted, it doesn't have as many bells and whistles). ODE powers the physics in the Phoenix engine.
Link
|
|
Sound |
OpenAL
OpenAL is a cross-platform 3D sound library. We will use it in Overgrowth to power our sound engine.
Link
|
|
Device Input |
Simple DirectMedia Layer
SDL provides a cross-platform way of accessing hardware devices that would normally have to be handled in platform specific manners. We primarily use SDL to read in keyboard and mouse input.
Link
|
|
Miscellaneous |
Boost C++ Libraries
Boost is a very large collection of cross-platform utility libraries for C++. We use Boost for threading, random number generation, and some linear algebra. But our uses only barely scratch the surface.
Link
|
|
Development |
Applications |
Web Resources |
IDE |
XCode
XCode is Apple's free development environment for Mac OS X. It comes with a few nifty tools like Instruments and Shark that help quite a bit with code profiling and optimization.
Link
Eclipse
Eclipse is a free, cross-platform IDE. I've happily used it in the past for java coding, and I just found out that, through plug-ins, it also supports C/C++ and a bunch of other languages! Link
Code::Blocks
Another free, cross-platform IDE. This was suggested by a bunch of people in the comments below. Link
Visual Studio Express
Visual Studio is Microsofts huge code development tool. We use non-free versions for most of our coding at Wolfire, but an 'Express' version is available for free, even for commercial use. I'm always a bit wary of watered-down free versions of commercial products, since sometimes you'll run into frustrating limitations. But people are vouching for it in the comments, so I'd just say check this page before using it. Also keep in mind that that page is not comprehensive. For example, it doesn't mention that Express and Standard lack OpenMP support, which was a stumbling block for me awhile back. Link
|
|
Version Control |
Subversion (SVN)
SVN is a widely used, lightweight application for controlling revisions made as a project evolves.
Link
TortoiseSVN
TortoiseSVN is a graphical SVN client implemented as a windows shell extension. This means you can right-click in Windows and all your version control options will be immediately available. I find it quite convenient.
Link
|
|
Bug Tracking |
Trac
Trac is a clean, web-based app for bug tracking and revision review. We recently set up an SPF Trac server for crowd-sourced bug reports. It's been very helpful so far. Thanks to all the contributors!
Link
|
|
General Game Dev |
|
www.gamedev.org
www.idevgames.com
www.gamasutra.com |
As you can see, there are quite a few blank spaces above, and this is still a work in progress. I'm sure there are many more great resources that should be added to the list. If you guys can think of any, please let us know in the comments!
Update: I've begun adding some of your suggestions to the list! I'll continue to do so, and perhaps bring this back as a more comprehensive list in the future. Thanks for the ideas!