[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
This section covers all of the Unix-style platforms supported by Crystal Space, including Linux, FreeBSD, NetBSD, Solaris, etc.
Crystal Space's X11 canvas optionally supports the MIT Shared Memory Extension (MIT-SHM). This makes Crystal Space run much faster if your server supports it. The Crystal Space configuration script will detect this extension automatically and use it if present.
A note of caution: Take care when obtaining the Crystal Space source code to ensure that the line-terminators are in Unix format (a single linefeed should terminate each line). This is an especially important consideration when transporting the code from Windows to Unix. Although many Unix tools deal gracefully with Windows line-terminators (a carriage-return follwed by a linefeed), not all tools do so, and may emit apparently inexplicable error messages when encountering files with Windows line-terminators. The official distributions of Crystal Space, including the stable releases and the CVS snapshots, are packaged with Unix line-terminators, which are acceptable on all supported platforms. These virgin packages themselves can be transported between Windows and Unix safely
At this moment we have two completely different renderer architectures in Crystal Space. The old renderer (which is still default) and the new renderer. The new renderer hasn't been made default yet because it is still considered to be experimental and some features haven't been ported yet (like software renderer which works only partially and fog). On the other hand the new renderer supports shaders, stencil shadows, and other advanced OpenGL stuff and for most people it seems to work very well. So we personally recommend trying out the new renderer first. If it doesn't work right for you then you should send us a report and go back to old renderer then. To use the new renderer you should add the `--enable-new-renderer' option to configure below.
Crystal Space can be built with either `make' or Jam (see GettingJam). Both tools work equally well. In the examples below, wherever `make -k' is used, you can instead substitute `jam' if you so desire.
You first need to configure the project for your platform. You do this by running the configuration script. For example, from within the `CS' directory:
./configure |
If you wish to build with debugging information enabled, use this command, instead:
./configure --enable-debug |
If you wish to build with debugging information and for the new renderer architecture you can do:
./configure --enable-debug --enable-new-renderer |
For a list of useful configuration options, invoke:
./configure --help=short |
If the Crystal Space source directory is read-only, if it is shared between several developers, or if you simply dislike building a project within its source tree, you can instead configure and build from a different directory. For instance:
mkdir $HOME/builddir cd $HOME/builddir /path/to/CS/configure --enable-debug |
Now, you can actually build the entire project:
make -k all |
Alternately, if you have Jam installed:
jam all |
The build process will create an executable for each demonstration program or tool, and a dynamic-load-library for each plugin module (with extension `.so' on Linux and most Unix platforms). Plugin modules include 3D renderers, 2D canvases, 3D engine, etc.
Finally, if you want to utilize Crystal Space as a software development kit (SDK), you can install it and then clean up the detritus of the build process:
make install make distclean |
You can now try running the `walktest' demonstration. See section 2.6 Quick Start.
The OpenGL renderer is used by default when you run Crystal Space programs. To select a different renderer, such as the software renderer, you can edit your local configuration file `$HOME/.crystal/Global.cfg'. Add the following line to select the software renderer for all applications:
System.Plugins.iGraphics3D = crystalspace.graphics3d.software |
Alternately, you can choose the software renderer from the command-line:
./walktest -video=software |
The software renderer interacts with X11, placing output on the display indicated by the `DISPLAY' environment variable.
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |