Home - Forums - Documentation - Gallery - Bugs
Line 26: Line 26:
See the [[Documentation]] for online and offline versions of these documentations for the different Crystal Space versions.
See the [[Documentation]] for online and offline versions of these documentations for the different Crystal Space versions.
-
= Crystal Entity Layer =
+
Frequently asked questions are answered in the [[FAQ]].
 +
 
 +
More HOWTOs can be found in the [[HowTo]] section.
 +
 
 +
= Companions =
 +
 
 +
== Crystal Entity Layer ==
{|
{|
|-
|-
Line 33: Line 39:
|}
|}
-
= CelStart =
+
== CelStart ==
{|
{|
Line 41: Line 47:
|}
|}
-
= FAQ =
+
= Support =
-
Frequently asked questions are answered in the [[FAQ]].
+
-
= HowTo =
+
Check the [[Community]] page for the various options of community-provided support.
-
The [[HowTo]] section gives details on various smaller tasks.
+
-
= Found a Bug? =
+
= Contribution =
-
Found a bug? Please [[Bugs|report]] it:
+
-
{{BugReporter}}
+
If you want to contribute something, be it a new feature, a bug fix or just a bug report, see the [[Contribute]] page.

Revision as of 22:53, 30 December 2006

Contents

Introduction

Crystal Space is primarily a Software Development Kit, a middleware for developing cross-platform 3D applications (there is a strong focus on games in particular, but Crystal Space itself is not limited to that).

Features

Development-relevant features include basic helper classes (such as e.g. containers), abstraction of platform-specific details (often requiring none to very little platform-specific code in client applications), a plugin system (for extensibility, customizability and versatibility) and even a custom build system (that can also be used for client applications and provides conveniences such as generation of Visual C++ projects).

While the “heart” of Crystal Space are the ‘engine’ and ‘renderer’ (roughly, management of what should be rendered, and actual rendering), there are also helper plugins providing and abstracting file input/output, audio output, physics, input from joysticks, and GUIs.

However, it does not provide any game-specific logic, such as entity management. For this look at Crystal Space's companion project CEL.

Platforms

Crystal Space is a cross-platform SDK and is known to work on all current major platforms - Windows, Linux, MacOS/X operating systems and x86, AMD64, PowerPC processors. Also see the list of reportedly working platforms.

Languages

Crystal Space itself is written in C++ - this being Crystal Space's “native” language it's also recommended when all features should be exhausted to their fullest. Nevertheless, bindings are also available for Python (currently the best supported), Perl and Java.

Documentation

Developer-relevant documentation can be found in the User's Manual. It contains information on how to build Crystal Space from source (“Building and Installing”), tutorials, HOWTOs, descriptions of SDK components (all in “Using Crystal Space”) as well as internal details (“Internal Project Structure”). The section “Working with Engine Content”, while being aimed at artists, also contains technicalities that are relevant to developers that also deal with artwork.

A reference of the entire Crystal Space API, the Public API Reference, is available as well.

See the Documentation for online and offline versions of these documentations for the different Crystal Space versions.

Frequently asked questions are answered in the FAQ.

More HOWTOs can be found in the HowTo section.

Companions

Crystal Entity Layer

CEL (Crystal Entity Layer) is a companion to Crystal Space, adding entity management and thus providing a game engine. Read more.

CelStart

CELstart is a CEL-based environment for self-contained game packages, allowing easy game creation via scripting, thereby easing the development process for those less proficient with C++. The package nature of games also make distribution easy. Read more.

Support

Check the Community page for the various options of community-provided support.

Contribution

If you want to contribute something, be it a new feature, a bug fix or just a bug report, see the Contribute page.

| Article | Discussion | View source | History |