Home - Forums - Documentation - Gallery - Bugs
(Companions)
Current revision (09:26, 4 April 2012) (edit) (undo)
(Documentation)
 
(8 intermediate revisions not shown.)
Line 24: Line 24:
= Documentation =
= Documentation =
-
Developer-relevant documentation can be found in the '''[http://www.crystalspace3d.org/docs/online/manual-1.0/ 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.
+
Developer-relevant documentation can be found in the '''[http://www.crystalspace3d.org/docs/online/manual-2.0/ 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 '''[http://www.crystalspace3d.org/docs/online/api-1.0/ Public API Reference]''', is available as well.
+
A reference of the entire Crystal Space API, the '''[http://www.crystalspace3d.org/docs/online/api-2.0/ Public API Reference]''', is available as well.
The [[Documentation]] page contains these documentations for other Crystal Space versions, as well as online and offline variants.
The [[Documentation]] page contains these documentations for other Crystal Space versions, as well as online and offline variants.
Line 33: Line 33:
You can find programming and other tutorials in the '''[[Tutorials]]''' section.
You can find programming and other tutorials in the '''[[Tutorials]]''' section.
 +
 +
= Academic papers =
 +
 +
* Jorrit Tyberghein, Eric Sunshine, Frank Richter, Mike Gist, Christian Van Brussel, Developing video games and virtual environments with the Crystal Space engine, DEnG-VE workshop, EICS conference, 2010: [[Image:CrystalSpace-DEnG-VE.pdf|Jorrit Tyberghein, Eric Sunshine, Frank Richter, Mike Gist, Christian Van Brussel, Developing video games and virtual environments with the Crystal Space engine, DEnG-VE workshop, EICS conference, 2010.]]
= Companions =
= Companions =
Line 43: Line 47:
|}
|}
-
== CELstart==
+
== CELstart ==
{|
{|
Line 49: Line 53:
| [[Image:CELstart-rocket.png|left|50px]]
| [[Image:CELstart-rocket.png|left|50px]]
| '''[[CELstart]]''' is a '''CEL'''-based environment for self-contained game packages, allowing ''easy game creation'' via scripting, thereby making the development process easier for those less proficient with C++. The package nature of games also make distribution simple. [[CELstart|Read more.]]
| '''[[CELstart]]''' is a '''CEL'''-based environment for self-contained game packages, allowing ''easy game creation'' via scripting, thereby making the development process easier for those less proficient with C++. The package nature of games also make distribution simple. [[CELstart|Read more.]]
 +
 +
|}
 +
 +
== CrystalCore ==
 +
 +
{|
 +
|-
 +
| [[Image:CrystalCore-compact.png|left|50px]]
 +
| '''[[Crystal Core]]''' is the Crystal Space ''demo game''. It is an single player shooter/quest based game using [[CELstart]] technology. [[Crystal Core|Read more.]]
|}
|}
Line 59: Line 72:
If you want to contribute something, be it a new feature, a bug fix or just a bug report, see the [[Contributing]] page.
If you want to contribute something, be it a new feature, a bug fix or just a bug report, see the [[Contributing]] page.
- 
-
<b>Language:</b>|English|[[Programming-es|Español]]|[[Programming-br|Brazilian]]|
 

Current revision

Contents

Introduction

Crystal Space is primarily a Software Development Kit, a middleware for developing 3D applications. There is a strong focus on games in particular, but Crystal Space itself is not limited to that. Notable features include strong cross-platform support, numerous utilities, and bindings for multiple languages.

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’, essentially providing 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.

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.

The Documentation page contains these documentations for other Crystal Space versions, as well as online and offline variants.

Frequently asked questions are answered in the FAQ.

You can find programming and other tutorials in the Tutorials section.

Academic papers

  • Jorrit Tyberghein, Eric Sunshine, Frank Richter, Mike Gist, Christian Van Brussel, Developing video games and virtual environments with the Crystal Space engine, DEnG-VE workshop, EICS conference, 2010: Image:CrystalSpace-DEnG-VE.pdf

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 making the development process easier for those less proficient with C++. The package nature of games also make distribution simple. Read more.

CrystalCore

Crystal Core is the Crystal Space demo game. It is an single player shooter/quest based game using CELstart technology. Read more.

Support

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

Contributing

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

| Article | Discussion | View source | History |