Ein komfortables Framework für die Spieleentwicklung, das SDL2 und die in C geschriebene Skriptsprache Wren vereint.
Sie können produktionsbereite Binärdateien von unserer Release-Seite herunterladen. Dies ist die empfohlene Methode zur Verteilung und einfachen Entwicklung.
Wenn Sie Homebrew installiert haben (Mac OS X, Linux und WSL), können Sie DOME alternativ mit den folgenden Befehlen installieren:
> brew tap domeengine/tap
> brew install dome
Wenn Sie schließlich DOME selbst bauen möchten, um Änderungen vorzunehmen oder aus anderen Gründen, befolgen Sie stattdessen diese Anweisungen.
Stellen Sie sicher, dass Sie zuerst die gemeinsam genutzten SDL2-Bibliotheken auf Ihrem System installiert haben. Führen Sie dann zum Erstellen Folgendes aus:
> make
Dadurch wird eine ausführbare Datei mit dem Namen ./dome
(unter Mac OS X und Linux) und ./dome-x32.exe
oder ./dome-x64.exe
erstellt.
Führen Sie ./dome [gamefile.wren]
aus, um Ihr Spiel auszuführen. Wenn Ihre ursprüngliche Datei main.wren
heißt, wird sie durch einfaches Ausführen von ./dome
ausgeführt. Ersetzen Sie dome
bei Bedarf durch Ihren erstellten Binärnamen.
Der Einstiegspunkt Ihres Spiels muss eine Game
Variable enthalten, die mindestens die Methoden init()
, update()
und draw(_)
enthält.
import "input" for Keyboard
import "graphics" for Canvas, Color
class Main {
construct new () {}
init () {
_x = 10
_y = 10
_w = 5
_h = 5
}
update () {
if ( Keyboard . isKeyDown ( "left" )) {
_x = _x - 1
}
if ( Keyboard . isKeyDown ( "right" )) {
_x = _x + 1
}
if ( Keyboard . isKeyDown ( "up" )) {
_y = _y - 1
}
if ( Keyboard . isKeyDown ( "down" )) {
_y = _y + 1
}
}
draw ( alpha ) {
Canvas . cls ()
var color = Color . rgb ( 171 , 82 , 54 )
Canvas . rectfill ( _x , _y , _w , _h , color)
}
}
var Game = Main . new ()
DOME bietet die folgenden Funktionen und mehr:
Sie können meine Fortschritte bei der Implementierung von DOME auf meinem Twitter verfolgen.
DOME ist derzeit auf einige Bibliotheken angewiesen, um seine Funktionen zu erfüllen.
Abgesehen von SDL2 sind alle anderen Abhängigkeiten integriert. DOME möchte sowohl minimalistisch als auch plattformübergreifend sein und ist daher auf möglichst wenige externe Komponenten angewiesen.