Crystal Space

Crystal Space
Crystal Space
Entwickler Jorrit Tyberghein et al.
Aktuelle Version 1.4.0
(28. November 2009)
Betriebssystem Windows, Linux, Mac OS X
Programmier­sprache C++
Kategorie 3D-Grafik-Software
Lizenz GPL (Freie Software)
www.crystalspace3d.org

Crystal Space ist ein freies und portables Framework und SDK mit einer 3D-Engine für die Darstellung von 3D-Welten für Computerspiele und andere Anwendungen virtueller Realität. Es ist in der Programmiersprache C++ geschrieben und unter den Bedingungen der GNU Lesser General Public License (LGPL) als Freie Software verbreitet.

Crystal Space unterstützt zur Zeit GNU/Linux, Unix, Windows und Mac OS X. Optional kann es OpenGL (alle Plattformen), SDL (alle SDL-Plattformen), X11 (Unix oder GNU/Linux) und SVGALIB (GNU/Linux) verwenden. Es kann auch als Assembler-Framework mit NASM und MMX verwendet werden.

Crystal Space ist ein Open-Source-Projekt mit ungefähr 700 Beteiligten. Initiiert wurde das Projekt von Jorrit Tyberghein im Jahr 1997. Nach zehn Jahren Entwicklungszeit wurde am 15. Januar 2007 die Version 1.0 freigegeben.

In den Jahren 2006 und 2007 wurden mit der „Crystal Space Conference“ an der RWTH Aachen eigene Entwicklerkonferenzen abgehalten.

Inhaltsverzeichnis

Verwendung

Das MMORPG „PlaneShift“ basiert auf der CS-Engine.[1] In dem Apricot-Projekt wurde im Rahmen der praktischen Umstetzung eines 3D-Spieles an der Weiterentwicklung von Blender und Crystal Space gearbeitet. Das aus dem Apricot-Projekt entstandene Jump’n’Run-Spiel „Yo Frankie!“ verwendet alternativ entweder Crystal Space oder die Blender-Engine. Crystal Core ist ein spielbares Demo-Spiel zu der Engine, ein modularer, erweiterbarer Egoshooter.[2]

Merkmale

Die Rendering-Engine ist modular und erweiterbar und mit einer Physik- und 3D-Sound-Engine ausgestattet.

Crystal Entity Layer (CEL) ist eine Abstraktionsschicht für die Steuerung des Geschehens in der virtuellen Welt. Sie dient zum Beispiel als Schnittstelle für Scripting, berechnet Bewegungspfade durch Gelände und künstliche Intelligenz.

Allgemeine Architektur

Dieser Artikel oder Abschnitt besteht hauptsächlich aus Listen, an deren Stelle besser Fließtext stehen sollte.
  • Engine mit sechs Freiheitsgraden mit beliebig geformten Polygonen (arbitrary sloped convex polygons).
  • Flexibles Plugin-System, das es Modulen erlaubt, andere Skriptsprachen einzufügen. Python, Perl und Java werden bereits unterstützt. Ebenso existieren Zusatzmodule für Schriftarten, Musik, Physikberechnungen sowie das Aufzeichnen und Abspielen von Filmen.
  • Crystal Space verwendet SCF (Shared Class Facility) für die Kommunikation zwischen verschiedenen Schichten (zum Beispiel zwischen der Grafik-Engine und dem 3D Rasterizer). Dadurch lässt sich ein Plug-and-Play-Konzept umsetzen.
  • Unterstützung von 15/16-Bit- und 24/32-Bit-TrueColor-Anzeige und verschiedenen Auflösungen (640×480, 800×600, …).
  • Crystal Space lässt sich gut über die Kommandozeile und durch Konfigurationsdateien konfigurieren.
  • Der C++-Quellcode und Assemblercode ist verfügbar. Crystal Space steht unter der LGPL, einer GNU-Copyleft-Lizenz mit weniger restriktiven Ansatz als die GPL.

Texturen und Texture-Mapping

  • Texturen können jede Größe besitzen, die 2x entsprechen. Sie müssen nicht quadratisch sein.
  • Crystal Space unterstützt Texturen mit folgenden Formaten:
  • Es ist möglich, eine Textur auf verschiedene Arten auf ein Polygon aufzuzeichnen (gedreht, skaliert, gespiegelt, …).
  • Transparente und semi-transparente Texturen erlauben durchsichtige Wasseroberflächen und Fenster.
  • Unterstützt dynamische Texturen, die wie einfache Texturen behandelt werden können.
  • Der neue Renderer unterstützt fortschrittliche Shader, um Effekte zu erzeugen. Shader können CG benutzen, Vertex-Programme, Fragment-Programme und andere.

Engine-Merkmale

  • Dynamisch schattierte, mehrschichtige Halbkugeln (SkyDome) für einen sehr realistischen Himmel. Die Bewegung der Sonne kann in Echtzeit erfolgen, um Farbänderung hervorzurufen.
  • Landschaftsgenerator mit Unterstützung von:
  • Luftperspektive, Nebel
  • Texturerzeugung
  • Level of Detail (LOD)
  • Blanke, reflektierende Oberflächen
  • Vorberechnete statische Beleuchtung (Light-Mapping) mit echtem Schatten
  • Statischer LOD
  • Dynamisch gefärbte Lichter mit weichem Schatten
  • Geometrisch korrekter Schatten (Stencil-Shadow)
  • Animation durch Schlüsselbilder
  • Skelett-Animation (Bones) mit Cal3D
  • Partikelsystem

Dateikonverter

Die Software beinhaltet Dateikonverter für:

Portabilität

Crystal Space wurde portiert für

Optionale OpenGL-Hardware-Beschleunigung unter Windows, GNU/Linux und Macintosh OS X sowie Linux (Mesa)

  • Unterstützung von Prozessorerweiterungen (zum Beispiel MMX).

Unterstützte Dateiformate

Crystal Space kann folgende 3D-Objekte direkt laden und abhängig von der Entfernung in unterschiedlicher Auflösung darstellen (LOD):

  • 3DS
  • ASE
  • MDL
  • MD2
  • OBJ
  • POV.
  • Die zu erschaffende Welt lässt sich durch XML-Dateien beschreiben.
  • Levels, bestehend aus Welten und Bereichen, können als gezipptes Paket vorliegen.
  • Es ist möglich, Bibliotheken von Objekten, Texturen und andere Dingen, die ein Spiel braucht, in separaten ZIP-Dateien abzulegen.
  • Ein Konvertierer um MAP-Dateien (von Quake/Half-Life) nach Crystal Space zu konvertieren, ist enthalten. Spielabschnitte, die mit QuarK/Worldcraft gestaltet wurden, lassen sich ebenfalls konvertieren.
  • Konventierer für:
    • Maya (Modelle und Levels)
    • Milkshape (Modelle und Levels)
    • 3DS (Modelle und Levels)
  • Etliche Blender-Skripte (Python) sind dabei, um aus Blender die Modelle und Levels zu exportieren.

Verschiedene andere Merkmale

  • Das Font-System-Plugin unterstützt folgende Fonttypen:
  • Bewegte Objekte
  • Reihenfolgenmanager mit Auslösern erlaubt die Definition von Objektinteraktionen im Level selbst.
  • Kollisionserkennung, hierarchische Sichtbarkeitsprüfung.
  • Eine mächtige Physik-Bibliothek ist bereits integriert. Sie ist eine dynamische Modellierungs- und Simulations-Engine.
  • 3D-Sound folgender Standards:
  • Audioformate:

Für In-Game-Menüs ist bereits ein Fenstersystem enthalten. Eine Unterstützung für eine Eingaben- und Ausgabenkonsole, wie sie zum Beispiel in Quake benutzt wird, existiert auch.

Literatur

  • Oliver Grau: Antriebsmotoren: Spiele aufbauen mit Open-Source-Engines. In. iX 09/2006, Seite 52

Weblinks

Quellen

  1. http://crystalspace3d.org/downloads/conference_2006/planeshift_conf.pdf
  2. http://crystalspace3d.org/main/Crystal_Core

Wikimedia Foundation.

Игры ⚽ Нужен реферат?

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Crystal Space — Developer(s) Jorrit Tyberghein et al. Stable release 1.4.0 / January 25, 2010; 20 months ago ( …   Wikipedia

  • Crystal Space — Saltar a navegación, búsqueda Crystal Space es un framework para el desarrollo de aplicaciones 3D escrito en C++ por Jorrit Tyberghein. Fue fundado el 26 de agosto del 1997. Crystal Space se usa típicamente como motor de juego pero el framework… …   Wikipedia Español

  • Crystal Space — Тип 3D движок Разработчик Jorrit Tyberghein и другие. Написана на C++ Аппаратная платформа Кросс платформенная Последняя версия 2.0 (2012.07.03) Лицензия GNU …   Википедия

  • Crystal Space — es un framework para el desarrollo de aplicaciones 3D escrito en C++ por Jorrit Tyberghein. Fue fundado el 26 de agosto del 1997. Crystal Space se usa típicamente como motor de juego pero el framework es más general y puede ser usado para… …   Enciclopedia Universal

  • Crystal Space — est un kit de développement logiciel (SDK) pour créer des applications de graphisme en 3 dimensions (3D) écrit en C++ par Jorrit Tyberghein et d autres contributeurs. Il a comme objectif d être multiplate forme et modulaire (plugins). Il est… …   Wikipédia en Français

  • Crystal Entity Layer — Infobox Software name = Crystal Entity Layer caption = developer = Open Source latest release version = latest release date = latest preview version = latest preview date = operating system = Windows, Linux, UNIX, Mac OS X genre = Game Engine… …   Wikipedia

  • Crystal — Cette page d’homonymie répertorie les différents sujets et articles partageant un même nom. Sur les autres projets Wikimedia : « Crystal », sur le Wiktionnaire (dictionnaire universel) Crystal est la graphie anglaise du mot cristal …   Wikipédia en Français

  • Space manufacturing — is the production of manufactured goods in an environment outside a planetary atmosphere. Typically this includes conditions of microgravity and hard vacuum.Manufacturing in space has several potential advantages over Earth based industry.# The… …   Wikipedia

  • Crystal radio — Crystal set redirects here. For the Australian rock band, see The Crystal Set. A modern reproduction of an antique crystal set. It is tuned to different stations by moving the sliding contact (right) up and down the tuning coil (red). The device… …   Wikipedia

  • Crystal Dynamics — Type Subsidiary of Square Enix Industry Computer and video games Founded 1992 Headquarters Redwood City, California, U.S …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”