- Irrlicht (Engine)
-
Irrlicht Engine
Screenshot eines Beispielprogrammes, welches mit Irrlicht geschrieben wurdeBasisdaten Entwickler Nikolaus Gebhardt Aktuelle Version 1.7.2
(15. November 2010)Betriebssystem Plattformunabhängig Kategorie Grafik-Engine Lizenz zlib/libpng Deutschsprachig Nein, eine deutsche Dokumentation soll aber bald durch die Community entstehen irrlicht.sf.net Die Irrlicht Engine ist eine freie Grafikengine, die von einem kleinen Team um Nikolaus Gebhardt entwickelt wird. Irrlicht ist plattformunabhängig und läuft auf Linux, Mac OS, Sun Solaris und diversen Windows-Versionen.
Inhaltsverzeichnis
Merkmale
Für die grafische Darstellungen werden OpenGL, DirectX oder eines von zwei Programmen zum Rendern genutzt (Software Renderer). Ähnlich wie bei anderen Grafikengines wird ein Szenengraph verwendet. Irrlicht unterstützt den Entwickler von Vertex- oder Pixelshader durch einfache Integration selbiger. Eine eingebaute Partikelengine ermöglicht es einfach eigene Partikeleffekte zu generieren.
Der integrierte XML-Parser, irrXML, kann auch unabhängig von der Engine verwendet werden. Es ist möglich, Dateien aus einer ZIP-Datei wie aus einer normalen Ordnerstruktur zu lesen.
Irrlicht unterstützt auch die direkte Ausgabe von 2D-Grafiken als Sprites und verfügt über eine eigene GUI-Engine. Als Zusatz existieren Klassen und Funktionen für Matrix- und Vektorrechnung und einfache Kollisionsabfrage. Der Quellcode ist offen, in C++ geschrieben und steht unter der zlib-Lizenz, die auch eine Verwendung in kommerziellen Produkten ohne Herausgabe des Quelltextes ermöglicht.[1]
Unterstützte Formate
Irrlicht unterstützt folgende 3D-Formate:
- 3D Studio meshes (.3ds)
- B3D files (.b3d)
- Alias Wavefront Maya (.obj)
- Cartography shop 4 (.csm)
- COLLADA (.xml, .dae)
- LightWave 3D (.lwo)
Irrlicht unterstützt folgende Grafikformate:
- Adobe Photoshop (.psd)
- JPEG File Interchange Format (.jpg)
- Portable Network Graphics (.png)
- Truevision Targa (.tga)
- Windows Bitmap (.bmp)
- Zsoft Paintbrush (.pcx)
- Portable Pixmaps (.ppm)
- Quake 2 textures (.wal)
Es werden folgende Animationsarten unterstützt:
- Morph target animation
- Skeletal animation
Dokumentation
Die Engine hat eine gut dokumentierte API und einige verständliche Tutorials.
Mittlerweile gibt es auch eine (noch unvollständige) deutsche Dokumentation, die als Wiki verfügbar ist.[2]
Community
Irrlicht hat mittlerweile sehr viele Anhänger gefunden. Die englische Community ist die weltweit größte Irrlicht-Community und hat rund 8600 Mitglieder (Stand: Mai 2008). Im Juli 2007 waren rund 7000 Benutzer registriert, im April 2007 ca. 6000. In Deutschland gab es schon früh eine Community, welche sich jedoch im Laufe der Zeit wieder auflöste. Seit März 2007 gibt es eine neue, noch ziemlich junge und kleine deutsche Community. In anderen Ländern, wie z.B. Frankreich und Italien, gibt es ebenfalls Irrlicht-Communitys.
Zukunft
Irrlicht wird ständig weiterentwickelt. Für die Version 1.5 war die Integration von Vertex Buffer-Objekten geplant und an weiteren Features wie beispielsweise einem neuen Licht-Manager zur Verwaltung verschiedener Lichtquellen wird gearbeitet.
Irrlicht-Verwandtschaft
IrrKlang
IrrKlang ist eine leistungsstarke 3D-Soundbibliothek für C++ und .NET-Sprachen. Sie ist für Linux und Windows verfügbar, seit Version 1.0 RC1 (erschienen am 26. Juli 2007) auch für Mac OS X. Für nicht-kommerzielle Nutzung ist die Engine kostenlos, für kommerzielle Projekte muss eine kleine Gebühr entrichtet werden. IrrKlang erschien zum ersten Mal in der Version 0.1 am 23. September 2006 und wurde seitdem bis zur aktuellen Version 1.3.0 ständig weiterentwickelt.[3]
IrrXML
IrrXML ist ein schneller und frei verfügbarer XML-Reader für C++, der in Irrlicht schon integriert, aber auch separat verfügbar ist. Wie Irrlicht selbst auch, ist IrrXML Plattformunabhängig. IrrXML ist unter der zlib/libpng-Lizenz veröffentlicht und daher frei nutzbar. Weiterentwickelt wird IrrXML nicht mehr, aktuell ist die Version 1.2.[4]
IrrEdit
IrrEdit ist ein freier 3D-Welteneditor. Er kann die Welten in das Irrlicht-eigene .irr-Format exportieren, was die Zusammenarbeit mit Irrlicht erleichtert. Es können alle für eine Szene erforderlichen Elemente, wie zum Beispiel Lichter, Partikelsysteme, Animationen etc. gesetzt werden. Das Erstellen von 3D-Objekten ist aber (bis auf einzelne grafische Primitive) nicht möglich.
3D-Objekte müssen durch andere Anwendungen erstellt werden, IrrEdit kann diese dann importieren. Irrlicht unterstützt viele 3D-Formate, die auch von preiswerter und kostenloser 3D-Modelling Software unterstützt wird, so zum Beispiel: .3ds (3ds Max), .blend (Blender), .x (Milkshape) und .obj (Delgine DeleD)
IrrEdit wird aktiv entwickelt und ist aktuell als Version 1.5 verfügbar.[5]
Anwendung
Projekte, die Irrlicht einsetzen, sind z. B.:
- Bolzplatz 2006 von Xenoage Software, ein Fußballspiel im Comicstil das mit Irrlicht und Jirr (einer Java-Schnittstelle zu Irrlicht) entwickelt wurde.
- Eve, ein Robotersimulator der Biologically Inspired Robotics Group (BIRG) am Swiss Federal Institute of Technology in Lausanne.
- Galactic Dream: Rage of War von Evolution Vault, ein kommerzielles Weltraum-Strategiespiel.
- Gekkeiju Online, ein kostenloses Fantasy-Multiuser-Rollenspiel, das seit 2003 läuft.
- H-Craft Championship, ein kommerzielles Science-Fiction-Rennspiel.
- Amulet of tricolor, ein 2D-Spiel
- SuperTuxKart (ab Version 0.7), ein 3D Kart Rennspiel
Literatur
- Spiele aufbauen mit Open Source Engines – iX 09/2006 Seite 52
Weblinks
Commons: Irrlicht Engine – Sammlung von Bildern, Videos und AudiodateienWikibooks: Irrlicht - from Noob to Pro – Lern- und Lehrmaterialien- Offizielle Webpräsenz (englisch)
- Deutsche Community (deutsch)
- Deutsche Dokumentation als Wiki (deutsch)
- Blog von Nikolaus Gebhardt (englisch)
- Wiki (englisch)
- irrXML-Webseite (englisch)
- irrEdit-Webseite (englisch)
- irrKlang-Webseite (englisch)
Quellen
Kategorien:- Freie Spiel-Engine
- Grafikbibliothek
- Linux-Software
- Mac-OS-Software
- Solaris-Software
- Windows-Software
Wikimedia Foundation.