Release der Spiel-Engine Godot 3.2


Release der Spiel-Engine Godot 3.2

AUF ANFRAGE DER ARBEITENDEN! Vom offenen Netz übernommen.

Nach 10 Monaten Entwicklung wurde die Veröffentlichung der freien Spiel-Engine Godot 3.2, die sich für die Erstellung von 2D- und 3D-Spielen eignet. Die Engine unterstützt eine leicht erlernbare Sprache zur Aufgabenstellung der Spiel-Logik, eine grafische Umgebung zum Spieldesign, ein Ein-Klick-Deployment-System, umfassende Animations- und Physik-Simulationsmöglichkeiten, einen integrierten Debugger und ein System zur Identifizierung von Leistungsengpässen. Der Code der Spiel-Engine, der Spieldesign-Umgebung und der zugehörigen Entwicklungswerkzeuge (Physik-Engine, Sound-Server, 2D/3D-Rendering-Backends usw.) wird unter der MIT-Lizenz verbreitet.

Die Quelltexte der Engine wurden 2014 von dem Studio OKAM geöffnet, nach zehn Jahren der Entwicklung eines proprietären Produkts auf professionellem Niveau, das zur Erstellung und Veröffentlichung zahlreicher Spiele für PC, Konsolen und mobile Geräte verwendet wurde. 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 Spielen für das Web. Startfertige Binärversionen wurden für Linux, Windows und macOS bereitgestellt.

In einem separaten Branch wird ein neuer Rendering-Backend auf Basis der Grafik-API Vulkan entwickelt, der in der nächsten Ausgabe Godot 4.0 angeboten wird, anstelle der derzeit angebotenen Rendering-Backends über OpenGL ES 3.0 und OpenGL 3.3 (die Unterstützung von OpenGL ES und OpenGL bleibt erhalten, indem der alte OpenGL ES 2.0/OpenGL 2.1-Backend über die neue Rendering-Architektur basierend auf Vulkan betrieben wird). Der Wechsel von Godot 3.2 auf Godot 4.0 wird eine Überarbeitung von Anwendungen aufgrund von Inkompatibilitäten auf API-Ebene erfordern, jedoch wird für den Branch Godot 3.2 ein langwieriger Support-Zyklus sichergestellt, dessen Dauer von der Benutzeranfrage für diesen Branch abhängt. Auch das Portieren stabilitätsneutraler Neuerungen aus dem Branch 4.x, wie AOT-Kompilierung, ARCore, DTLS und die Plattform iOS für Projekte in C#, ist in den Zwischenversionen 3.2.x nicht ausgeschlossen.

Die Hauptneuheiten von Godot 3.2:

  • Unterstützung für die Oculus Quest VR-Headsets wurde hinzugefügt, basierend auf einem Plugin für die Android-Plattform. Für die Entwicklung von Augmented-Reality-Systemen für iOS wurde Unterstützung für das ARKit-Framework hinzugefügt. Für Android wird die Unterstützung für das ARCore-Framework weiterentwickelt, ist jedoch noch nicht bereit und wird in einer der zukünftigen Versionen 3.3.x integriert;
  • Die Benutzeroberfläche des visuellen Shader-Editors wurde überarbeitet. Neue Knoten wurden hinzugefügt, um fortgeschrittenere Shader zu erstellen. Für Shader, die mit klassischen Skripten implementiert werden, wurde die Unterstützung für Konstanten, Arrays und „varying“-Modifikatoren 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 basierte Materialdarstellung (PBR) wurde mit den Fähigkeiten neuer PBR-Rendering-Engines synchronisiert, wie Blender Eevee und Substance Designer, um eine ähnliche Darstellung der Szene in Godot und den verwendeten 3D-Modellierungspaketen zu gewährleisten;
  • Eine Optimierung verschiedener Rendering-Einstellungen wurde durchgeführt, um die Leistung zu steigern und die Bildqualität zu verbessern. Viele Funktionen von GLES3 wurden in das GLES3-Backend übertragen, einschließlich der Unterstützung für das MSAA-Glimmungsverfahren (Multisample Anti-Aliasing) und verschiedene Post-Processing-Effekte (Leuchten, DOF-Unschärfe und BCS);
  • Vollständige Unterstützung für den Import von 3D-Szenen und Modellen im Format glTF 2.0 (GL Transmission Format) wurde hinzugefügt, sowie anfängliche Unterstützung für das FBX-Format, das den Import von animierten Szenen aus Blender ermöglicht, aber noch nicht mit Maya und 3ds Max kompatibel ist. Unterstützung für Skinning von Rigged-Objekten beim Import von Szenen über glTF 2.0 und FBX wurde hinzugefügt, was die Verwendung eines Rigs in mehreren Meshes ermöglicht. Die Arbeit zur Verbesserung und Stabilisierung der Unterstützung von glTF 2.0 wurde in Zusammenarbeit mit der Entwicklergemeinschaft des Blender-Pakets durchgeführt, in der die verbesserte Unterstützung für glTF 2.0 in der Version 2.83 angeboten wird;
  • Die Netzwerkfunktionen der Engine wurden um die Unterstützung von WebRTC- und WebSocket-Protokollen sowie die Möglichkeit, UDP im Multicast-Modus zu verwenden, erweitert. Eine API für die Verwendung von kryptographischen Hashes und die Arbeit mit Zertifikaten wurde hinzugefügt. Eine grafische Benutzeroberfläche zur Profilerstellung der Netzwerkaktivität wurde hinzugefügt. Die Arbeit an einem Port von Godot für WebAssembly/HTML5 hat begonnen, der es ermöglichen wird, den Editor im Browser über Web auszuführen;
  • Das Plugin für die Android-Plattform und das Export-System wurden überarbeitet. Jetzt werden für die Erstellung von Paketen für Android zwei separate Export-Systeme angeboten: eines mit einem vorab kompilierten Engine und das andere, das die Erstellung eigener Builds basierend auf angepassten Engine-Varianten ermöglicht. Die Konfiguration eigener Builds kann auf der Ebene des Android-Plugins ohne manuelle Bearbeitung der ursprünglichen Vorlage durchgeführt werden;
  • Im Editor wurde die Unterstützung für die selektive Deaktivierung bestimmter Funktionen hinzugefügt, beispielsweise können die Tasten für den Aufruf des 3D-Editors, des Skript-Editors, der Ressourcenbibliothek, der Knoten, Panels, Eigenschaften und anderer Elemente, die für den Entwickler nicht erforderlich sind, entfernt werden (das Ausblenden überflüssiger Elemente vereinfacht die Benutzeroberfläche erheblich);
  • Die anfängliche Unterstützung für die Integration mit Versionskontrollsystemen wurde hinzugefügt und ein Plugin zur Unterstützung von Git im Editor implementiert;
  • Es wurde die Möglichkeit hinzugefügt, die Kamera für das laufende Spiel über ein Fenster im Editor zu überschreiben, was die Bewertung verschiedener Modi im Spiel ermöglicht (freies Anschauen, Inspektion von Knoten usw.);
  • Eine Implementierung eines LSP-Servers (Language Server Protocol) für die Sprache GDScript wurde vorgeschlagen, die es ermöglicht, Informationen über die Semantik von GDScript und Regeln zur automatischen Vervollständigung von Code an externe Editoren wie das VS Code Plugin und Atom zu übertragen;
  • Es wurden zahlreiche Verbesserungen im integrierten GDScript-Editor vorgenommen: Es wurde die Möglichkeit hinzugefügt, Lesezeichen an bestimmten Stellen im Code zu setzen, ein Minimalkarten-Panel (für einen schnellen Überblick über den gesamten Code) implementiert, die Eingabe-Autovervollständigung verbessert und die Möglichkeiten des visuellen Skripting-Modus erweitert;
  • Ein Modus zur Erstellung von Pseudo-3D-Spielen wurde hinzugefügt, der den Tiefeneffekt in 2D-Spielen durch die Definition mehrerer Ebenen ermöglicht, die eine fiktive Perspektive bilden;
  • Im 2D-Editor wurde die Unterstützung von Texturatlanten wiederhergestellt;
  • Im GUI wurde der Prozess der Platzierung von Ankern und Bereichsgrenzen modernisiert;
  • Für Textdaten wurde die Möglichkeit hinzugefügt, Änderungen der Effekte in Echtzeit zu beobachten, die Unterstützung von BBCode-Tags sowie die Möglichkeit zur Definition eigener Effekte gewährleistet;
  • Ein Generator für Soundstreams wurde hinzugefügt, der es ermöglicht, Schallwellen basierend auf einzelnen Frames und einem Spektralanalysator zu erstellen;
  • Mit der V-HACD-Bibliothek wurde die Möglichkeit zur Zerlegung von konvexen Meshes in genaue und vereinfachte konvexe Teile realisiert. Diese Funktion vereinfacht erheblich die Generierung von Kollisionsformen für existierende 3D-Meshes.
  • Die Möglichkeit zur Entwicklung von Spiel-Logik in C# unter Verwendung von Mono für Android- und WebAssembly-Plattformen wurde realisiert (zuvor wurde C# für Linux, Windows und macOS unterstützt). Basierend auf Mono 6.6 wurde die Unterstützung für C# 8.0 implementiert. Für C# wurde ebenfalls die erste Unterstützung der Ahead-of-Time-Kompilierung (AOT) realisiert, die in den Code integriert ist, aber bislang noch nicht aktiviert wurde (für WebAssembly wird derzeit der Interpreter verwendet). Für die Bearbeitung von C#-Code wurde die Möglichkeit hinzugefügt, externe Editoren wie MonoDevelop, Visual Studio für Mac und Jetbrains Rider zu verwenden.
  • Die Dokumentation wurde erheblich erweitert und verbessert. Eine teilweise Übersetzung der Dokumentation ins Russische wurde veröffentlicht (das einführende Handbuch zum Einstieg wurde übersetzt).

Neuigkeiten auf der Godot-Website

Die neueste Version herunterladen

Quelle: linux.org.ru

60GB SSD 8Gb DDR4