Crystal Space
Crystal Space is a framework for developing 3D applications written in C++ by Jorrit Tyberghein and others. The first public release was on August 26, 1997. It is typically used as a game engine but the framework is more general and can be used for any kind of 3D visualization. It is very portable and runs on Microsoft Windows, Linux, UNIX, and Mac OS X. It is also free and open-source software, licensed under the GNU Lesser General Public License, and was SourceForge.net's Project of the Month for February 2003.Engine design
Crystal Space is programmed in object oriented C++. It is very modularly built with a number of more or less independent plugins. The client programs use the plugins, such as the OpenGL 3D renderer, by registering them via Crystal Space's Shared Class Facility.Features
Crystal Space has modules for 2D and 3D graphics, sound, collision detection and physics through ODE and Bullet.
- Graphics:
- *OpenGL rendering
- *Supports hardware acceleration from all major card vendors
- *Allows use of shaders
- *Library of common shaders like normal mapping, parallax mapping and hardware skinning
- *Supports software rendering with limited features
- Mesh objects:
- *Plugin-based mesh system
- *Triangle-based meshes with frame and bone animation support
- Collision detection and dynamics:
- *ODE and Bullet dynamics
- *Simplified collision detection when full dynamic simulation is not needed
Reception and usage
The engine was for instance used for the OpenOutcast and PlaneShift projects.