Nach 10 Monaten Entwicklung wurde die freie Spiel-Engine veröffentlicht , geeignet zur Erstellung von 2D- und 3D-Spielen. Die Engine unterstützt eine einfach zu erlernende Script-Sprache für Spiel-Logik, eine grafische Umgebung für das Game Design, ein One-Click-Deployment-System, umfangreiche Animationsmöglichkeiten und physikalische Simulation. Außerdem beinhaltet sie einen integrierten Debugger und Performance-Profiler. Der Quellcode der Spiel-Engine, der Design-Umgebung und der unterstützenden Entwicklungswerkzeuge (physikalische Engine, Sound-Server, 2D/3D-Rendering-Backends usw.) unter der MIT-Lizenz.
wurde 2014 von der Firma , nach zehn Jahren der Entwicklung eines proprietären Profukts, der zur Erstellung und Veröffentlichung für PC, Spielkonsolen und mobile Geräte. Die Engine unterstützt alle gängigen Desktop- und Mobilplattformen (Linux, Windows, macOS, Wii, Nintendo 3DS, PlayStation 3, PS Vita, Android, iOS, BBX) sowie die Entwicklung von Webspielen. Bereitgestellte Binär-Dateien für den sofortigen Einsatz sind für Linux, Windows und macOS verfügbar.
In seit Sommer 2016). Bis Ende 2019 ist die Veröffentlichung einer weiteren experimentellen Version der GTK 3.9x-Reihe geplant, gefolgt von einem finalen Testrelease von GTK 3.99 im Frühling 2020, das alle angestrebten Funktionen enthalten wird. Die Veröffentlichung von GTK 4 wird für Anfang Herbst 2020 erwartet, zeitgleich mit GNOME 3.38. Rendering auf Basis der Grafik-API Vulkan, die in der nächsten Version von Godot 4.0 angeboten wird, anstelle der derzeit verfügbaren Rendering-Backends über OpenGL ES 3.0 und OpenGL 3.3 (die Unterstützung für OpenGL ES und OpenGL bleibt durch den alten OpenGL ES 2.0/OpenGL 2.1-Backend erhalten, das auf der neuen Vulkan-basierten Rendering-Architektur läuft). Der Übergang von Godot 3.2 auf Godot 4.0 erfordert eine Überarbeitung der Anwendungen, da es zu API-Inkompatibilitäten kommt, aber für die Godot 3.2-Version wird ein längerer Support-Zyklus gewährleistet, dessen Dauer von der Nachfrage dieser Version durch die Benutzer abhängt. Es ist auch nicht ausgeschlossen, dass in den Zwischenversionen 3.2.x neue Funktionen aus der 4.x-Reihe, die die Stabilität nicht beeinträchtigen, portiert werden, wie zum Beispiel die Unterstützung , , und der Plattform .
Die wichtigsten Neuerungen in Godot 3.2:
- Unterstützung für Oculus Quest Virtual-Reality-Headsets hinzugefügt, basierend auf für die Android-Plattform. Für die Entwicklung von Augmented-Reality-Systemen für iOS wurde Unterstützung für das Framework . Für Android wird die Unterstützung des Frameworks entwickelt, ist aber noch nicht fertig und wird in einer der Zwischenversionen 3.3.x enthalten sein;

- Benutzeroberfläche des visuellen Shader-Editors. Neue Knoten für die Erstellung fortschrittlicherer Shader. Für Shader, die durch klassische Skripte implementiert werden, wurde Unterstützung für Konstanten, Arrays und Variablenmodifikatoren hinzugefügt. Viele backend-spezifische Shader für OpenGL ES 3.0 wurden für OpenGL ES 2 portiert;
- Die Unterstützung für physikalisch basiertes Rendering von Materialien (PBR) wurde mit den Möglichkeiten neuer PBR-Rendering-Engines wie Blender Eevee und Substance Designer synchronisiert, um eine ähnliche Darstellung der Szene in Godot und den verwendeten 3D-Modellierungspaketen zu gewährleisten;
- Optimierungen an verschiedenen Rendering-Einstellungen wurden durchgeführt, um die Leistung zu steigern und die Qualität der Grafik zu verbessern. Viele Funktionen aus GLES3 wurden in das GLES3-Backend übertragen, einschließlich der Unterstützung für MSAA (Multisample Anti-Aliasing) und verschiedene Nachbearbeitungseffekte (Leuchten, DOF-Unschärfe und BCS);
- Es wurde eine vollständige Unterstützung für den Import von 3D-Szenen und Modellen im glTF 2.0-Format (GL Transmission Format) hinzugefügt. Zudem wurde eine erste Unterstützung für das FBX-Format implementiert, die den Import von Szenen mit Animationen aus Blender ermöglicht, jedoch derzeit nicht mit Maya und 3ds Max kompatibel ist. Bei der Verwendung von glTF 2.0 und FBX zum Import von Szenen wird die Unterstützung von Skin-Rigs hinzugefügt, die die Verwendung eines Rigs in mehreren Meshes erlaubt.
Die Arbeiten zur Verbesserung und Stabilisierung der Unterstützung von glTF 2.0 wurden in Zusammenarbeit mit der Entwicklergemeinschaft des Blender-Pakets durchgeführt, in der die verbesserte Unterstützung von glTF 2.0 in der Version 2.83 angeboten wird. - Die Netzwerkfähigkeiten der Engine wurden durch die Unterstützung der Protokolle WebRTC und WebSocket sowie durch die Möglichkeit, UDP im Multicast-Modus zu verwenden, erweitert. für die Verwendung kryptografischer Hashes und die Arbeit mit Zertifikaten. Eine grafische Benutzeroberfläche zur Profilerstellung der Netzwerkaktivität wurde hinzugefügt. Die Arbeiten an einem Godot-Port für
WebAssembly/HTML5, der die Ausführung des Editors im Browser über das Web ermöglicht, haben begonnen. - Überarbeitet für die Android-Plattform und ein Export-System. Jetzt stehen für die Erstellung von Paketen für Android zwei separate Export-Systeme zur Verfügung: eines mit einer vorgefertigten Engine und das andere, das es ermöglicht, eigene Builds auf Basis von angepassten Engine-Varianten zu erstellen. Die Anpassung eigener Builds kann auf Plugin-Ebene für Android erfolgen, ohne dass Änderungen am ursprünglichen Template vorgenommen werden müssen;
- Der Editor unterstützt jetzt die selektive Entfernung bestimmter Funktionen, zum Beispiel können die Schaltflächen für den Aufruf des 3D-Editors, des Skript-Editors, der Ressourcenbibliothek, der Knoten, Panels, Eigenschaften und anderer Elemente, die vom Entwickler nicht benötigt werden, entfernt werden (das Ausblenden von Überflüssigem vereinfacht die Benutzeroberfläche erheblich);
- Es wurde eine erste Unterstützung für die Integration mit Versionierungssystemen hinzugefügt und ein Plugin für die Unterstützung von Git
im Editor implementiert; - Die Möglichkeit, die Kamera für das laufende Spiel über ein Fenster im Editor zu überschreiben, wird bereitgestellt, was die Bewertung verschiedener Spielmodi (Freie Sicht, Inspektion von Knoten usw.) ermöglicht;
- Die vorgeschlagene Implementierung des LSP (Language Server Protocol) für die Sprache GDScript ermöglicht die Übertragung von Informationen über die Semantik von GDScript und Autocompletion-Regeln an externe Editoren wie das VS Code-Plugin und Atom.
- Es wurden zahlreiche Verbesserungen am integrierten GDScript-Editor vorgenommen: Die Möglichkeit, Lesezeichen an Code-Positionen zu setzen, ist hinzugefügt worden, eine Minimap für einen schnellen Überblick über den gesamten Code wurde umgesetzt, und die Eingabe-Autovervollständigung wurde verbessert. Die Funktionen des visuellen Skripting-Modus wurden erweitert.
- Ein Modus zur Erstellung von Pseudo-3D-Spielen wurde hinzugefügt, der es ermöglicht, einen Tiefeneffekt in zweidimensionalen Spielen durch die Definition mehrerer Ebenen zu verwenden, die eine fiktive Perspektive bilden.

- Im 2D-Editor wurde die Unterstützung für Texturatlanten implementiert.
- Im GUI wurde der Prozess der Platzierung von Ankern und Grenzen von Bereichen modernisiert.
- Für textliche Daten wurde die Möglichkeit hinzugefügt, die Änderung von Effektparametern in Echtzeit zu beobachten, BBCode-Tags werden unterstützt, und es besteht die Möglichkeit, eigene Effekte zu definieren.
- Ein Audio-Stream-Generator ermöglicht die Erstellung von Schallwellen basierend auf Einzelbildern und einem spektralen Analyzer.
- Mit der Bibliothek Es wurde die Möglichkeit implementiert, gebogene Meshes in exakte und vereinfachte konvexe Teile zu zerlegen. Diese Funktion erleichtert die Generierung von Kollisionsformen für bestehende 3D-Meshes erheblich.

- Es wurde die Möglichkeit geschaffen, Spiel-Logik in C# unter Verwendung von Mono für die Plattformen Android und WebAssembly zu entwickeln (zuvor wurde C# für Linux, Windows und macOS unterstützt). Auf Basis von Mono 6.6 wird nun C# 8.0 unterstützt. Zudem gibt es erste Implementierungen für die vorausschauende Kompilierung (AOT, ahead-of-time) für C#, die zwar in den Code integriert, aber noch nicht aktiviert wurden (für WebAssembly wird derzeit ein Interpreter verwendet). Zur Bearbeitung des C#-Codes besteht die Möglichkeit, externe Editoren wie MonoDevelop, Visual Studio for Mac und Jetbrains Rider anzuschließen.
- Wesentlich erweitert und verbessert . Eine teilweise in die russische Sprache wurde veröffentlicht ( eine Einführungshilfe zum Einstieg).
Quelle: opennet.ru



