jMonkeyEngine

Mit libGDX hatte ich vor einem Jahr bereits eine Game Engine für Java vorgestellt. Daneben existieren natürlich noch weitere Game Engines. Eine dieser Engines ist die jMonkeyEngine, welche seit 2003 entwickelt wird. Technisch basiert der SDK-Editor auf NetBeans-Plattform. Die Engine selbst nutzt OpenGL für die Darstellung der Grafik und verfügt über unterschiedlichste Features wie die Unterstützung für Beleuchtung, die Nutzung von Shadern, eine Reihe von Filtern und Effekten und eine Physikunterstützung. Daneben werden auch andere Dinge wie die Eingabe des Nutzers von der Engine abstrahiert.

Das jMonkeyEngine SDK

Lizenziert ist jMonkeyEngine unter der BSD-Lizenz und damit freie Software. Der Quelltext kann über GitHub bezogen werden. Die offizielle Seite des Projektes ist unter jmonkeyengine.org zu finden.

Tomb Raider in Open Source

Das 1996 erschienene Tomb Raider, mit Lara Croft in der Rolle der taffen Archäologin, galt und gilt als Meilenstein des Action-Aventure. Seitdem sind etliche weitere Teile entstanden. Auch die alten Teile sind bei vielen Fans immer noch sehr beliebt.

Die Projektseite von Open Tomb

So existieren einige Open Source-Projekte rund um Tomb Raider. Eines dieser Projekte ist Open Tomb, welches unter opentomb.github.io zu finden ist. Das Ziel des Projektes ist eine Reimplementation der Engine welche für Tomb Raider 1 – 5 genutzt wurde. Lizenziert ist das Projekt unter der LGPL3 und damit freie Software.  

Neben dem OpenTomb-Projekt existieren weitere Projekte, wie das OpenLara-Projekt, welches die Engine im Browser nachbaut. Eine spielbare Demo existiert auf der Projektseite; der Quelltext ist auf GitHub zu finden. Lizenziert ist OpenLara unter der BSD-Lizenz, in der Zwei-Klausel-Version.

JavaScript-Bibliothek für interaktive Karten

Interaktive Karten im Browser darzustellen ist sicherlich kein seltener Anwendungsfall im Web. Für die eigentliche Darstellung der Karten existieren unterschiedlichste Frameworks bzw. Bibliotheken wie z.B. OpenLayers.

Eine mit Leaflet realisierte Kartenapplikation

Daneben existiert seit 2011 die JavaScript-Bibliothek Leaflet. Mit dieser leichtgewichtigen Bibliothek, können interaktive Karten schnell aufgesetzt werde. Dabei werden TileMaps ebenso wie Web Map Services als Quelle für die eigentliche Karte unterstützt. Neben Features wie Overlays und der Unterstützung unterschiedlicher Projektionen ist Leaflet für die Nutzung auf dem Desktop und auf mobilen Endgeräten ausgelegt.

Der Quelltext der Bibliothek ist auf GitHub zu finden. Lizenziert ist Leaflet unter der BSD-Lizenz in der Zwei-Klausel-Variante und damit freie Software. Die offizielle Seite des Projektes ist unter leafletjs.com zu finden.

jar-Datei in eine exe-Datei verpacken

Bei der Entwicklung von Java-Applikationen kommt am Ende meist eine jar-Datei (die Kurzform von Java Archive) heraus. Soll diese Datei an Otto Normalverbraucher unter Windows ausgeliefert werden, so wundert sich dieser sicherlich etwas. Immerhin erwarten die meisten Normalverbraucher eine ausführbare Datei in Form einer exe-Datei. Mit Hilfe des Tools Launch4j ist das genau das möglich. Launch4j wrappt die jar-Datei und erzeugt eine ausführbare exe-Datei. Daneben kann Launch4j einfache Starter erzeugen, ohne das ganze in eine ausführbare Datei zu wrappen.

Die Projektseite von Launch4j

Launch4j erzeugt zwar ausführbare Dateien für Windows, allerdings kann das es selber neben Windows auch unter macOS und Linux genutzt werden. Die offizielle Seite des Projektes ist unter launch4j.sourceforge.net zu finden. Lizenziert ist Launch4j unter der BSD-Lizenz und damit freie Software. Der Quellcode ist auf SourceForge zu finden, daneben existiert ein Mirror auf GitHub.

sprintf Implementation für JavaScript

Für ein kleines Projekt an dem ich zur Zeit arbeite war ich mal wieder auf der Suche nach einer sprintf Implementation für JavaScript. Und wieder wurde ich bei der gleichen Implementation – wenn auch erheblich weiterentwickelt – fündig. Seit 2007 arbeitet Alexandru Marasteanu an seiner Implementation der sprintf Funktion für JavaScript. Mit der Hilfe dieses Funktion wird so sprintf-like aus einem:

sprintf("%2$s %3$s a %1$s", "cracker", "Polly", "wants")

ein:

Polly wants a cracker

Der Quelltext ist auf GitHub zu finden. Die Implementation ist freie Software und unter der 3-Klausel-BSD-Lizenz lizenziert.