jME unter Eclipse einrichten

Ich beschreibe hier eine einfache möglichkeit jME unter Windows und Eclipse einzurichten. Ich weis nicht ob es der Optimale weg ist, aber er funktioniert. 

Als Voraussetzung müssen erfüllt sein:
Betriebssystem Windows, installierte JRE und JDK sowie Eclipse.

Folgende Schritte sind zum Einrichten notwendig:

  • Download der jMonkeyEngine

    Diese kann unter http://code.google.com/p/jmonkeyengine
    heruntergeladen werden. Ich empfehle jME_2.0_Complete_(r4093) für GameDeveloper. Und entpacken sie die Zip-Datei in ein beliebiges Verzeichnis.
     
  • Anlegen eines neuen Projekts in Eclipse

    File -> New Project -> Auswählen des Menüpunkts „Java Project“, Projektnamen eingeben und bestätigen.

  • Erstellen Sie nun eine neue Java-Main Klasse.

    Rechtsklicken Sie auf das gerade erstellte Project, dann Properties. Im nun erscheinenden Menü müssen unter dem Punkt JavaBuildPath-> Libraries die JARS aus der JME-Zip-Datei hinzugefügt werden (Siehe Screenshot 3).Des Weiteren müssen unter Run / Debugg Settings die Einstellungen der Main Datei angepasst werden. Unter dem Reiter „Argument“s muss im Feld "VM Arguments" der Pfad zum lib\\natives Ordner aus dem Zip-Archiv angegeben werden (siehe Screenshot 1 und 2).
     

CrazyBump & ShaderMap - BumpMaps einfach erstellen

Wer schon einmal versucht hat ohne besondere Hilfsmittel eine Normal - oder Specular-Map zu erstellen weis wie schwierig das ist. Momentan gibt es zwei bekannte Produkte die einem bei der Erstellung unter die Arme greifen können. CrazyBump ist hierbei wahrscheinlich das bekanntere der beiden. CrazyBump macht das Bumpmapping zum Kinderspiel. Einfach Textur laden ein paar einfache Einstellungen treffen und fertig. Leider sind die kostenlosen Beta-Versionen von CrazyBump nicht mehr erhältlich (und auch nicht merhr Lauffähig), da die Entwicklung abgeschlossen ist. Allerdings kann man sich immer noch eine kostenlose zeitlich begrenzte Demoversion auf der Homepage herunterladen. Die Vollversionen die ebenfalls über die Homepage bezogen werden kann Kostet zwischen 69 $ und 299$. Ein nicht ganz so komfortabler weg ist das Tool „ShaderMap“, in der Command-Line-Version ist dieses für den privaten Einsatz kostenlos.

Erstellen eines Irrlicht Projekts mit Dev-C++

Da ich im Offiziellen englischen Tutorial einen Fehler gefunden habe, habe ich beschlossen ein eigenes zu schreiben.

Es sind nicht viele Schritte notwendig um Irrlicht in Dev-C++ lauffähig zu machen. Ich werde im weiteren Verlauf des Tutorials die erweiterte Dev-C++ Version wxDev-C++ verwenden. Allerdings existieren bei der Irrlicht-Konfiguration keinerlei unterschied zwischen beiden Versionen.

Es wird davon ausgegangen das die Entwicklungsumgebung bereits installiert ist. Da Dev-C++ über einen Windows-Installer verfügt sollte das auch keine Schwierigkeiten bereiten.

Mit „Irrlicht“-Verzeichnis ist das Verzeichnis eurer Irrlicht Installation gemeint.

  1. Das Projekt
    Als erstes muss man über „Datei->Neu->Projekt“ ein neues Projekt anlegen, dabei sollte man als Vorlage eine Konsolenanwendung verwenden.
  2. Hinzufügen der Header
    Über „Projekt->Projektoptionen“ gelangt ihr in zu den Projektoptionen. Wählt hier den Reiter „Verzeichnisse“. Hier fügt ihr unter „Include Verzeichnisse“ den Pfad zu euerm „Irrlicht/include“-Verzeichnis hinzu.
  3. Hinzufügen der Lib
    Jetzt müsst ihr im Reiter „Zusätzliche Kommandozeilen Optionen“ über „Bibliothek/Objekt hinzuf.“ Die Datei „libIrrlicht.a“ aus euerm „Irrlicht/lib/Win32-gcc“-Verzeichnis hinzufügen.
    Damit habt ihr alle Einstellungen vorgenommen. Jetzt kann’s losgehen!
  4. Der Quellcode
     
          #include <irrlicht> 
          #include <iostream> 
            
           using namespace irr; 
           using namespace core; 
           using namespace scene; 
           using namespace video; 
           using namespace io; 
           using namespace gui; 
            
           #pragma comment(lib, "Irrlicht.lib") 
            
           int main(int argc, char *argv[]){ 
            
             //Initialisieren von Irrlicht (die GCC-Irrlicht.dll unterstützt nur OpneGL) 
             IrrlichtDevice *device = createDevice(EDT_OPENGL, core::dimension2d<s32>(640, 480)); 
             IVideoDriver* driver = device->getVideoDriver(); 
             ISceneManager* smgr = device->getSceneManager(); 
            
             //Laden der Quake3 Map 
             device->getFileSystem()->addZipFileArchive("cht3.pk3"); 
            
             //Map  
             IAnimatedMesh* mesh =smgr->getMesh("cht3.bsp"); 
             smgr->addAnimatedMeshSceneNode(mesh); 
            
            
             //Hinzufügen einer FirstPersonShooter-Kamera 
             smgr->addCameraSceneNodeFPS(); 
            
             //Hauptschleife 
             while(device->run()){ 
            
               driver->beginScene(true, true, video::SColor(0,200,200,200)); 
               smgr->drawAll(); 
            
               driver->endScene(); 
            } 
           } 
     
  5. Das Programm
    Um das Programm zu kompilieren müsst ihr einfach auf den Kompilieren-Knopf drücken. Das Programm wird nach dem kompilieren automatisch gestartet. Allerding bekommt man noch einen Fehler „Die Anwendung konnte nicht gestartet werden, weil Irrlicht.dll nicht gefunden wurde. Neuinstallation der Anwendung könnte das Problem behebe“ um dieses Problem zu beseitigen müsst ihr einfach die „Irrlicht.dll“ aus eurem Irrlicht Verzeichnis in das Verzeichnis der kompilierten Exe-Datei kopieren. Da ihr den GCC –Compiler verwendet braucht ihr die Dll aus dem „irrlicht\\bin\\Win32-gcc“-Verzeichnis. Das Standard Ausgabeverzeichnis des Compilers befindet sich unterhalb euers Projektverzeichnisses im Ordern „Output\\MingW“. In diesem Verzeichnis muss sich auch die zu ladenende Quake-Map befinden wenn ihr keine Pfadangaben machen wollt.

    Das war`s. Wenn ihr noch Fragen oder Hinweise habs schreibt einfach einen Kommentar.

Irrlicht - eine freie einfach zu lernende 3D Engine

Irrlicht ist eine freie in reinem C++ geschriebenen 3d-Engine. Neben C++ kann Irlicht auch aus .NET angesprochen werden. Irrlicht bietet auch einige passende Erweiterungen wie IRRKlang (Sound-Bibilothek) , IRREdit (MapEditor) und IRRXML (XML-Bibilothek). Irrlicht unterstützt OpenGL und DirectX (nur unter Windows) und ist für die Systeme Windows, Linux und MacOs verfügbar. Die Engine ist einfacher zu lernen und zu handhaben als Ogre.

Die Engine kann ohne Probleme mit Visual Studio oder GCC kompiliert werden. Allerdings ist es nur mit Visual Studio möglich die DirectX-Programme zu erstellen. GCC unterstützt nur OpenGL und den Software Renderer.

Features:
  • Dynamische Lichter
  • Bump-Mapping
  • Parallax-Mapping
  • Light-Maps
  • Dynamische Schatten
  • usw...

Blender Game-Engine

Mit dem Opensource-Modeling-Programm Blender ist es auch möglich Spiele zu erstellen. Blender bietet bereits eine Echtzeit 3D-Grafik-Engine mit integrierter Physik-Engine. Die eigentliche Spielelogik muss in Python programmiert werden.


Leider habe ich keine ausführlichen Tutorials gefunden. Aber wie ich gehört habe, soll es einige sehr gute Bücher zu diesem Thema geben. Es beleibt zu sagen: Interesannte Sache die man auf jeden Fall im Auge behalten sollte.

Blender Wiki:
www.wiki.blender.org

jmonkeyengine - 3D mit Java

jmonkeyengine ist eine freie Java-3D-Engine welche vor kurzem in der Version 1.1 erschienen ist. Mit jmonkeyengine ist es auch Java-Entwicklern möglich ansprechende 3D-Inhalte zu generieren und einzubinden. Hierbei wird eine große Auswahl an 3D-Formaten unterstützt, auch sind schon einige Erweiterungen wie eine Physik-Engine und ein Editor verfügbar. Auf der Homepage von jmonkeyengine gibt es eine beträchtliche Anzahl von Grafikdemos. Damit mausert jmonkeyengine sich zum Game-Development-Toolkit für Java Entwickler.