Spineless Game Engine
Readme
Contents
- `Description`_
- `Requirements`_
- `Installing`_
- `Troubleshooting`_
- `Contact`_
Description
Spineless is a generic cross-platform 3D game engine implemented in Python with Pyrex optimizations. Focus is on flexibility, clean design and ease of use, not pure speed or bleeding edge graphics.
Spineless is released under the BSD license (see COPYING.txt).
Requirements
Spineless is developed using Python 2.3. It won't work on older Python versions since it uses features from 2.3. It is also tested to work on Python 2.4.
The following libraries are required (they might have their own requirements): - Pygame (1.7 or newer)
To compile from sources you also need:
- Pyrex
- GLEW (1.3 or newer)
The following libraries are optional:
- FMOD (for surround sound and better audio in general)
- Psyco (for speedup)
Licenses for these libraries can be found in doc/licenses. Note that FMOD is a closed source library which can be used for free for noncommercial games. See the FMOD web site at http://www.fmod.org/ for details.
Installing
To install Spineless, simply type::
python setup.py install
This will install Spineless to your site-packages. Note that you will get a lot of warning when compiling the extensions. This is "normal" for Pyrex, and unless you get any errors, everything should be ok. To make sure the installation works, open up a Python interpreter and try importing spineless. If no errors occur, you should be all set. Also try running the tests in the test directory.
If you don't want to or can't install Spineless to your site-packages, you can build the extensions in place by typing::
python setup.py build_ext -i
Then add the spineless/source directory to your PYTHONPATH. Remember to add the absolute path of the directory.
Troubleshooting
Q: There's a crash every time I try to display graphics
- If you get the following error: "Couldn't initialize OpenGL extensions", your GLEW version is probably too old. You need at least 1.3. This is a problem specifically on Debian, which comes with an older version of GLEW.
Pygame 1.6 on Windows
The SDL_ttf.dll library which ships with the Windows installer of Pygame 1.6 has a bug which crashes the font module when trying to load a font. I suggest using Pygame 1.7 (or newer) instead.
Pyrex and Python 2.4
The current version of Pyrex is incompatible with Python 2.4. A short explanation and a temporary fix can be found here: http://lists.copyleft.no/pipermail/pyrex/2004-December/001084.html
Building the FMOD Extension
On Windows, the easiest way to let the VC++ compiler locate FMOD is using the INCLUDE and LIB environment variables. Put the FMOD api/inc and api/lib paths in these environment variables, respectively.
On OS X, the setup script assumes that FMOD is installed into the default location, /Developer/FMOD Developers API/. If it's installed elsewhere, you must edit the FMOD_HOME variables in setup.py. I'll accept suggestion on how to auto detect the location of FMOD on OS X.
Contact
Spineless web page is at http://spineless.sourceforge.net/
If you have any comments, suggestions or trouble with Spineless, please send e-mail to selkrank@users.sourceforge.net.
$Revision: 494 $
$Date: 2005-08-17 09:06:55 +0300 (Wed, 17 Aug 2005) $
