After almost 10 years of development we finally release Crystal Space and Crystal Entity Layer 1.0! Together with this we also launch a new web site based on MediaWiki. It should be clearer and easier to navigate. Read more for full details on this release.
Here is the 1.0 release for Crystal Space and Crystal Entity Layer.
Crystal Space is an Open Source and portable 3D engine framework which runs on GNU/Linux, Windows, and MacOS/X and is written in C++. Here is a list of some of the most important features:
- Support for OpenGL rendering with CG and ARB shaders (both vertex and fragment shaders). Some standard shader features that are included are specular, parallax, bumpmapping, glow, ...
- Support for lightmaps or hardware based lighting and shadows.
- Powerful terrain engine with support for dynamic LOD and material blending.
- Skeletal animation system using the CAL3D library or with built-in system.
- Physics using ODE library.
- 3D sound system.
- Scripting system with support for Python, Perl, and Java. You can access the full Crystal Space API from those languages.
- Powerful plugin system allowing you to make your own extensions to Crystal Space.
- Optional visibility culling system based on coverage maps.
- Optionally you can use portals to subdivide your maps. Portals can also 'warp space'. By using this trick you can (for example) make mirrors.
- Optional software renderer.
- Built-in window system based on CEGUI.
- Very good support for Blender through the Blender2crystal exporter plugin: http://b2cs.delcorp.org
- Good support for 3dsMax.
- Lots of other features like procedural textures, font system, various image loaders (jpg, png, mng, tga, ...), XML format, virtual file system, input/output console, ...
Crystal Entity Layer is an Open Source 3D game framework which sits on top of Crystal Space and adds the notion of 'game entities' or 'game objects'. Here is a list of some of the most important features:
- Support for dynamic entities with property classes that you can add and remove on the fly. That means the characteristics of an entity can change at runtime at any time you want.
- First/third person camera with smooth transitions.
- Zone manager to load/unload parts of the world as the player moves.
- Quest manager to handle story elements in the game. Quests can be big story elements (like player has to get item X from some NPC and then has to put that item in some magic chest after which some door will magically open) but also smaller things (like push a button to open a door).
- Very good support for Python scripting.
- CEL can be driven totally with XML. There is an XML scripting language and all features (entities, property classes, ...) can be controlled from within XML files. You can write a full 3D game using only XML.
- Various other things like projectiles, timers, spawn points, area triggers, physics, movement system, property system, sound, damage system, ...
Based on Crystal Space and Crystal Entity Layer there is also the CelStart Project which is a scripting game environment. In this environment you can easily make games using only XML or Python scripting. There is no need for even a C++ compiler as this is a binary release.
You can download the source of Crystal Space and Crystal Entity Layer (and in the near future binary SDK's) at the following location:
If you have a problem with Crystal Space or Crystal Entity Layer you can do one of the following:
- Report the bug at: Crystal Space bug tracker or Crystal Entity Layer bug tracker.
- Post a message on the forums at: The Crystal Space Forums.
- Ask a question on the IRC channel #CrystalSpace (on the irc.freenode.net network)
- Post a message on the mailing lists at: SourceForge Mailing Lists.