Kompilieren für das Web
Siehe auch
Diese Seite beschreibt, wie man HTML5-Editor und Exportvorlagen-Binärdateien aus den Quellen kompiliert. Wenn Sie Ihr Projekt stattdessen nach HTML5 exportieren möchten, lesen Sie Exportieren für das Web.
Anforderungen
Zum Kompilieren von Exportvorlagen für das Web ist Folgendes erforderlich:
SCons 4.0+ build system.
Siehe auch
Um den Godot-Quellcode zum Kompilieren zu erhalten, siehe Beschaffung des Quellcodes.
Eine allgemeine Übersicht über die Verwendung von SCons für Godot finden Sie unter Einführung in das Buildsystem.
Exportvorlagen erstellen
Bevor Sie beginnen, stellen Sie sicher, dass emcc in Ihrem PATH verfügbar ist. Dies wird normalerweise durch das Emscripten-SDK konfiguriert, z.B. beim Aufruf von emsdk activate und source ./emsdk_env.sh/emsdk_env.bat.
Öffnen Sie ein Terminal und navigieren Sie zum Stammverzeichnis des Quellcodes der Engine. Dann weisen Sie SCons an, die Web-Plattform zu bauen. Spezifizieren Sie target entweder als template_release für einen Release-Build oder template_debug für einen Debug-Build:
scons platform=web target=template_release
scons platform=web target=template_debug
Standardmäßig wird das JavaScriptBridge Singleton in die Engine eingebaut. Offizielle Exportvorlagen haben auch das JavaScript Singleton aktiviert. Da eval() Aufrufe ein Sicherheitsproblem sein können, kann die javascript_eval Option verwendet werden, um ohne das Singleton zu bauen:
scons platform=web target=template_release javascript_eval=no
scons platform=web target=template_debug javascript_eval=no
Standardmäßig ist die Unterstützung für WebWorker-Threads aktiviert. Um sie zu deaktivieren und nur einen einzigen Thread zu verwenden, kann die Option Threads verwendet werden, um die Webvorlage ohne Thread-Unterstützung zu erstellen:
scons platform=web target=template_release threads=no
scons platform=web target=template_debug threads=no
Die Engine wird nun von Emscripten in WebAssembly kompiliert. Sobald die Kompilierung abgeschlossen ist, wird die resultierende Datei im Unterverzeichnis bin abgelegt. Ihr Name ist godot.web.template_release.wasm32.zip für Release oder godot.web.template_debug.wasm32.zip für Debug.
Schließlich benennen Sie das Zip-Archiv in web_release.zip für die Release-Vorlage um:
mv bin/godot.web.template_release.wasm32.zip bin/web_release.zip
Und web_debug.zip für die Debug-Vorlage:
mv bin/godot.web.template_debug.wasm32.zip bin/web_debug.zip
GDExtension
Die Default-Exportvorlagen enthalten aus Performance- und Kompatibilitätsgründen keine GDExtension-Unterstützung. Siehe die Export-Seite für weitere Informationen.
Sie können die Exportvorlagen mit der Option dlink_enabled=yes erstellen, um die GDExtension-Unterstützung zu aktivieren:
scons platform=web dlink_enabled=yes target=template_release
scons platform=web dlink_enabled=yes target=template_debug
Wenn Sie fertig sind, wird die resultierende Datei in das Unterverzeichnis bin gelegt. Ihr Name wird mit _dlink ergänzt.
Am Schluss benennen Sie die Zip-Archive in web_dlink_release.zip und web_dlink_release.zip für die Release-Vorlage um:
mv bin/godot.web.template_release.wasm32.dlink.zip bin/web_dlink_release.zip
mv bin/godot.web.template_debug.wasm32.dlink.zip bin/web_dlink_debug.zip
Bauen des Editors
Es ist auch möglich, eine Version des Godot-Editors zu erstellen, die im Browser ausgeführt werden kann. Die Editor-Version wird gegenüber dem nativen Build nicht empfohlen. Sie können den Editor bauen mit:
scons platform=web target=editor
Sobald Sie fertig sind, wird die resultierende Datei im Unterverzeichnis bin abgelegt. Ihr Name ist godot.web.editor.wasm32.zip. Sie können den Zip-Inhalt auf Ihren Webserver hochladen und ihn mit Ihrem Browser besuchen, um den Editor zu benutzen.
Siehe die Export-Seite für die Anforderungen an den Webserver.
Tipp
Das Godot-Repository enthält ein Python-Skript zum Hosten eines lokalen Webservers. Dieser kann verwendet werden, um den Webeditor lokal zu testen.
Nachdem Sie den Editor kompiliert haben, entpacken Sie das ZIP-Archiv, das im Ordner bin/ erstellt wurde, und führen dann den folgenden Befehl im Godot-Repository-Stammverzeichnis aus:
# You may need to replace `python` with `python3` on some platforms.
python platform/web/serve.py
This will serve the contents of the bin/ folder and open the default web
browser automatically. In the page that opens, access godot.editor.html
and you should be able to test the web editor this way.
Beachten Sie, dass dieser auf Python basierende Webserver nicht für Produktionszwecke verwendet werden sollte. Stattdessen sollten Sie einen etablierten Webserver wie Apache oder nginx verwenden.