Axiom can be a little daunting when you first start working with it. This guide is designed to get you through the first initial hurdles and get you going on your first project using the library.
A Brief History
Axiom was started in 2003 by Chris McGurk ( leedgitar ) as a port from the popular OGRE project . Chris led the project until 2004, adding many features and providing a solid base from which to continue. I ( borrillis ) became the project lead in September of 2005 after a long pause in the projects progress. Today Axiom is very close to being feature compatible with OGRE. For a full feature list visit the project site. Over the last 5 years, there have been many people who have contributed to the project, providing many useful features and additions.
Before you start creating a new project and using the Axiom SDK, lets make sure that all the required pieces are in place. You’ll need a proper build environment with all the dependencies installed for your project before you start writing code.
Operating System / CLI
The first step is to make sure you have a managed code environment installed. Currently Axiom supports Mono 2.10+ on Windows, Linux and MacOS and .Net 2.0+ on Windows.
Development Environment ( Editor )
Next, make sure you have a supported IDE. The following list is currently the active IDE’s that are supported by the Axiom team:
- Visual Studio 2008, 2010
- Visual Studio C# Express
- MonoDevelop 2.0+
- SharpDevelop 3.0+
- Command Line ( MSBuild / XBuild )
Dependencies ( other libraries )
In order to work properly, Axiom uses several libraries to make it easier to access the underlying hardware. Some of these are included in the downloads, others can’t due to licensing restrictions or it may just be easier to have you install it yourself. Regardless, the libraries you’ll need to install will vary based on your OS, and which rendering API you’ll be using. Axiom has renderers for DirectX 9, OpenGL 2.0 and XNA 3.1 included in the download.
|Operating System ||Rendering API ||Requirements |
|Windows ||XNA ||XNA Game Studio 3.1 |
|Windows ||DirectX ||SlimDX ( June 2010 ) |
|Windows ||OpenGL ||OpenTK |
|Linux / MacOS ||OpenGL ||OpenTK |
In addition to the Rendering API, there are several plugins to Axiom that have additional dependencies. If you intend to use them you’ll have to install these addition dependencies as well, use the following table to identify what else you’ll need.
|Plugin Type ||Plugin ||Requirements |
|Media Codec ||Devil ||DevIL Imaging Library ( libdevil1c2 ) |
| ||System.Media ||.Net/ Mono Framework Support |
| ||FreeImage ||FreeImage Library |
|Miscellaneous ||CgProgramManager ||NVidia CG Toolkit ( nvidia-cg-toolkit ) |
To make this easier, most for the dependencies are included for Windows the exceptions being SlimDX and Xna. The method of how to installing these dependencies will vary based on your operating system. For the most part on Windows, an installer or setup is provided. For Linux and MacOS use your systems package installer ( apt-get, Synaptic, etc )
One last dependency is on FreeType. FreeType is used to render fonts on platforms where we can run native libraries, basically everything except XBox and Windows Phone.
The next post will dive into downloading the SDK and setting up your first project!