Einige Entwickler nutzen die Befehlszeile gerne ausgiebig. Godot ist so konzipiert, dass es freundlich zu ihnen ist. Hier sind die Schritte, um vollständig über die Befehlszeile zu arbeiten. Da die Engine fast keine externen Bibliotheken benötigt, sind die Initialisierungszeiten ziemlich schnell, sodass sie für diesen Workflow geeignet ist.
Notiz
Unter Windows und Linux können Sie eine Godot-Binärdatei in einem Terminal ausführen, indem Sie ihren relativen oder absoluten Pfad angeben.
Unter macOS ist der Vorgang anders, da Godot in einem enthalten ist.app
Bundle (das ist einOrdner, keine Datei). Um eine Godot-Binärdatei von einem Terminal unter macOS auszuführen, müssen Sie dies tunCD
in den Ordner, in dem sich das Godotapplication-Bundle befindet, und führen Sie es dann ausGodot.app/Contents/MacOS/Godot
gefolgt von beliebigen Befehlszeilenargumenten. Wenn Sie das Anwendungspaket umbenannt habenGodot
Um einen anderen Namen zu ändern, müssen Sie diese Befehlszeile unbedingt entsprechend bearbeiten.
Befehlszeilenreferenz¶
Allgemeine Optionen
Befehl | Beschreibung |
| Zeigt die Liste der Befehlszeilenoptionen an. |
| Zeigt die Versionszeichenfolge an. |
| Verwenden Sie den ausführlichen Stdout-Modus. |
| Ruhemodus, schaltet Standardnachrichten stumm. Es werden weiterhin Fehler angezeigt. |
Ausführungsoptionen
Befehl | Beschreibung |
| Trennzeichen für vom Benutzer bereitgestellte Argumente. Die folgenden Argumente werden von der Engine nicht verwendet, können aber ausgelesen werden |
| Starten Sie den Editor, anstatt die Szene auszuführen (Ziel=Herausgebermuss benutzt werden). |
| Starten Sie den Projektmanager, auch wenn ein Projekt automatisch erkannt wird (Ziel=Herausgebermuss benutzt werden). |
| Starten Sie den Editor-Debug-Server ( |
| Nach der ersten Iteration beenden. |
| Verwenden Sie ein bestimmtes Gebietsschema. |
| Pfad zu einem Projekt ( |
| Durchsuchen Sie die Ordner nach oben nach der Datei „project.godot“. |
| Pfad zu einer Packdatei (.pck), die geladen werden soll. |
| Render-Thread-Modus („unsicher“, „sicher“, „getrennt“). SehenThread-Modellfür mehr Details. |
| Remote-Dateisystem ( |
| Passwort für das Remote-Dateisystem. |
| Audiotreiber. Verwenden |
| Anzeigetreiber (und Rendering-Treiber). Verwenden |
| Name des Renderers. Erfordert Treiberunterstützung. |
| Rendering-Treiber (abhängig vom Anzeigetreiber). Verwenden |
| Verwenden Sie eine bestimmte GPU (ausgeführt mit |
| Texttreiber („Fonts“, „BiDi“, „Shaping“) |
| Eingabetreiber für das Stifttablett. |
| Headless-Modus aktivieren ( |
| Führen Sie die Engine so aus, dass ein Film geschrieben wird (standardmäßig .avi MJPEG). Feste FPS werden erzwungen, wenn sie aktiviert sind, können aber zum Ändern der FPS von Filmen verwendet werden. Das Deaktivieren von vsync kann das Schreiben von Filmen beschleunigen, erschwert jedoch die Interaktion. |
| Deaktivierung von vsync erzwingen. Führen Sie die Engine so aus, dass ein Film geschrieben wird (standardmäßig .avi MJPEG). Feste FPS werden erzwungen, wenn sie aktiviert sind, können aber zum Ändern der Film-FPS verwendet werden. |
Anzeigeoptionen
Befehl | Beschreibung |
| Vollbildmodus anfordern. |
| Fordern Sie ein maximiertes Fenster an. |
| Fordern Sie den Fenstermodus an. |
| Fordern Sie ein Always-on-Top-Fenster an. |
| Fensterauflösung anfordern. |
| Fensterposition anfordern. |
| Verwenden Sie ein einzelnes Fenster (keine separaten Unterfenster). |
| Wählen Sie den XR-Modus (Standard/aus/ein). |
Debug-Optionen
Notiz
Debug-Optionen sind nur im Editor und in Debug-Exportvorlagen verfügbar (sie erforderndebuggen
oderrelease_debug
Ziele erstellen, sieheZielfür mehr Details).
Befehl | Beschreibung |
| Debug (lokaler Stdout-Debugger). |
| Haltepunktliste als durch Kommas getrennte Quelle::Zeile-Paare, ohne Leerzeichen (verwenden Sie stattdessen %20). |
| Aktivieren Sie die Profilerstellung im Skript-Debugger. |
| Zeigen Sie ein GPU-Profil der Aufgaben an, die beim Frame-Rendering die meiste Zeit in Anspruch genommen haben. |
| Aktivieren Sie die Grafik-APIValidierungsschichtenzum Debuggen. |
| Ein Abbruch bei GPU-Fehlern (normalerweise Fehler auf der Validierungsebene) kann helfen, das Problem zu erkennen, wenn Ihr System einfriert. |
| Remote-Debug ( |
| Beim Ausführen der Szene Kollisionsformen anzeigen. |
| Beim Ausführen der Szene Pfadlinien anzeigen. |
| Zeigen Sie beim Ausführen der Szene Navigationspolygone an. |
| Gibt alle StringName-Zuweisungen nach stdout aus, wenn die Engine beendet wird. |
| Simulieren Sie eine hohe CPU-Auslastung (verzögern Sie jeden Frame um |
| Zeitskala erzwingen (höhere Werte sind schneller, 1,0 ist normale Geschwindigkeit). |
| Deaktivieren Sie die Renderschleife, damit das Rendern nur erfolgt, wenn es explizit vom Skript aufgerufen wird. |
| Deaktivieren Sie den Crash-Handler, wenn dies vom Plattformcode unterstützt wird. |
| Erzwinge eine feste Anzahl von Bildern pro Sekunde. Diese Einstellung deaktiviert die Echtzeitsynchronisierung. |
| Gibt die Bilder pro Sekunde auf der Standardausgabe aus. |
Standalone-Tools
Befehl | Beschreibung |
| Führen Sie ein Skript aus. |
| Nur auf Fehler analysieren und beenden (verwenden mit |
| Exportieren Sie das Projekt mit der angegebenen Voreinstellung und der passenden Release-Vorlage (Ziel=Herausgebermuss benutzt werden). Der voreingestellte Name sollte mit einem in export_presets.cfg definierten Namen übereinstimmen. |
| Wie |
| Wie |
| Projekt von Godot 3.x in Godot 4.x konvertieren. |
| Zeigen Sie, welche Elemente beim Konvertieren eines Projekts von Godot 3.x nach Godot 4.x umbenannt werden. |
| Geben Sie die Engine-API-Referenz auf die angegebene Datei aus |
| Dumping der Basistypen nicht zulassen (verwendet mit |
| Erstellen Sie die Skriptlösungen (z. B. für C#-Projekte,Ziel=Herausgebermuss verwendet werden).Impliziert |
| Generieren Sie die GDExtension-Headerdatei „gdnative_interface.h“ im aktuellen Ordner. Diese Datei ist die Basisdatei, die zum Implementieren einer GDExtension erforderlich ist. |
| Generieren Sie einen JSON-Dump der Godot-API für GDExtension-Bindungen mit dem Namen „extension_api.json“ im aktuellen Ordner(Ziel=Herausgebermuss benutzt werden). |
| Vergleichen Sie die Startzeit und geben Sie sie auf der Konsole aus. |
| Vergleichen Sie die Startzeit und speichern Sie sie in einer bestimmten Datei im JSON-Format. |
Weg¶
Es wird empfohlen, dass sich Ihre Godot-Editor-Binärdatei in Ihrem befindetWEG
Umgebungsvariable, so dass sie einfach von jedem Ort aus durch Eingabe ausgeführt werden kannGodot
.Sie können dies unter Linux tun, indem Sie die Godot-Binärdatei einfügen/usr/local/bin
und stellen Sie sicher, dass es aufgerufen wirdGodot
(Groß-/Kleinschreibung beachten).
Festlegen des Projektpfads¶
Abhängig davon, wo sich Ihre Godot-Binärdatei befindet und welches Ihr aktuelles Arbeitsverzeichnis ist, müssen Sie möglicherweise den Pfad zu Ihrem Projekt festlegen, damit einer der folgenden Befehle ordnungsgemäß funktioniert.
Dies kann durch Angabe des Pfads zum erfolgenproject.godot
Datei Ihres Projekts als erstes Argument, etwa so:
Godot path_to_your_project/project.godot [andere] [Befehle] [Und] [args]
Oder indem Sie die verwenden--Weg
Streit:
Godot --Weg path_to_your_project [andere] [Befehle] [Und] [args]
Der vollständige Befehl zum Exportieren Ihres Spiels (wie unten erklärt) könnte beispielsweise so aussehen:
Godot --Weg path_to_your_project --export-release my_export_preset_name game.exe
Ein Projekt erstellen¶
Sie können ein Projekt über die Befehlszeile erstellen, indem Sie in der Shell an den gewünschten Ort navigieren und ein erstellenproject.godot
Datei.
mkdir neues SpielCD newgametouch project.godot
Das Projekt kann nun mit Godot geöffnet werden.
Ausführen des Editors¶
Das Ausführen des Editors erfolgt durch Ausführen von Godot mit-e
Flagge. Dies muss im Projektverzeichnis oder einem Unterverzeichnis erfolgen, andernfalls wird der Befehl ignoriert und der Projektmanager wird angezeigt.
Godot -e
Wenn eine Szene erstellt und gespeichert wurde, kann sie später bearbeitet werden, indem derselbe Code mit dieser Szene als Argument ausgeführt wird.
Godot -e scene.tscn
Eine Szene löschen¶
Godot ist mit Ihrem Dateisystem befreundet und erstellt keine zusätzlichen Metadatendateien.Verwenden Sierm
um eine Szenendatei zu löschen. Stellen Sie sicher, dass nichts auf diese Szene verweist. Andernfalls wird beim Öffnen des Projekts ein Fehler ausgegeben.
rm scene.tscn
Das Spiel ausführen¶
Um das Spiel auszuführen, führen Sie einfach Godot im Projektverzeichnis oder Unterverzeichnis aus.
Godot
Wenn eine bestimmte Szene getestet werden muss, übergeben Sie diese Szene an die Befehlszeile.
Godot scene.tscn
Debuggen¶
Das Erkennen von Fehlern in der Befehlszeile kann eine schwierige Aufgabe sein, da sie schnell scrollen. Hierzu wird durch Hinzufügen ein Befehlszeilen-Debugger bereitgestellt-D
. Es funktioniert entweder zum Ausführen des Spiels oder einer einzelnen Szene.
Godot -D
Godot -D scene.tscn
Exportieren¶
Das Exportieren des Projekts über die Befehlszeile wird ebenfalls unterstützt. Dies ist besonders nützlich für Continuous-Integration-Setups. Die Headless-Version von Godot (Server-Build, kein Video) ist hierfür ideal.
# „godot“ muss eine Godot-Editor-Binärdatei sein, keine Exportvorlage.# Außerdem müssen Exportvorlagen für den Editor installiert sein# (oder es muss eine gültige benutzerdefinierte Exportvorlage in der Exportvoreinstellung definiert sein).Godot --export-release „Linux/X11“ /var/builds/projectgodot --export-release Android /var/builds/project.apk
Der Voreinstellungsname muss mit dem Namen einer im Projekt definierten Exportvoreinstellung übereinstimmenexport_presets.cfg
Datei. Wenn der voreingestellte Name Leerzeichen oder Sonderzeichen enthält (z. B. „Windows Desktop“), muss er in Anführungszeichen gesetzt werden.
Um eine Debug-Version des Spiels zu exportieren, verwenden Sie die--export-debug
wechselnstatt--Export
. Ihre Parameter und Verwendung sind gleich.
Um nur eine PCK-Datei zu exportieren, verwenden Sie die--export-pack
Option gefolgt vom voreingestellten Namen und Ausgabepfad mit der Dateierweiterung anstelle von--Export
.Die Ausgabepfaderweiterung bestimmt das Format des Pakets, entweder PCK oder ZIP.
Warnung
Bei Angabe eines relativen Pfades als Pfad für--export-release,--export-debugoder--export-pack, der Pfad ist relativ zu dem Verzeichnis, das die Datei enthältproject.godot
Datei,nichtrelativ zum aktuellen Arbeitsverzeichnis.
Ein Skript ausführen¶
Es ist möglich, a auszuführen.gd
Skript über die Befehlszeile. Diese Funktion ist besonders nützlich bei großen Projekten, z. für die Stapelkonvertierung von Assets oder den benutzerdefinierten Import/Export.
Das Skript muss von erbenSzenenbaum
oderHauptschleife
.
Hier ist ein Beispielsayhello.gd
, zeigt, wie es funktioniert:
#!/usr/bin/env -S godot -serweitert SzenenbaumFunktion _drin(): drucken("Hallo!") aufhören()
Und wie man es ausführt:
# Gibt „Hallo!“ aus. zur Standardausgabe.Godot -S sayhello.gd
Wenn neinproject.godot
im Pfad vorhanden ist, wird davon ausgegangen, dass der aktuelle Pfad das aktuelle Arbeitsverzeichnis ist (es sei denn--Weg
angegeben).
Die erste Zeile vonsayhello.gd
oben wird allgemein als ASA bezeichnetMist. Wenn sich die Godot-Binärdatei in Ihrem befindetWEG
alsGodot
Damit können Sie das Skript in modernen Linux-Distributionen sowie in macOS wie folgt ausführen:
# Skript als ausführbar markieren.chmod +x sayhello.gd# Gibt „Hallo!“ aus. zur Standardausgabe../sayhello.gd
Wenn das oben Genannte in Ihrer aktuellen Linux- oder macOS-Version nicht funktioniert, können Sie Godot immer direkt von seinem Speicherort aus wie folgt ausführen lassen:
#!/usr/bin/godot -s