Die Version 4.6 der freien Spiele-Engine Godot wurde veröffentlicht, die sich für die Erstellung von 2D- und 3D-Spielen eignet. Die Engine unterstützt eine leicht erlernbare Sprache zur Gestaltung der Spiel-Logik, eine grafische Umgebung zur Spieleentwicklung, ein Ein-Klick-Deployment-System, Animationsmöglichkeiten und die Simulation physikalischer Prozesse, einen integrierten Debugger und ein System zur Erkennung von Performance-Engpässen. Der Code der Spiele-Engine, der Entwicklungsumgebung und der zugehörigen Entwicklungswerkzeuge (physikalische Engine, Audiokserver, Backends für 2D/3D-Rendering usw.) wird unter der MIT-Lizenz veröffentlicht.
Der Quellcode der Engine wurde 2014 von dem Studio OKAM freigegeben, nach zehn Jahren der Entwicklung eines proprietären Produkts auf professionellem Niveau, das für die Entwicklung und Veröffentlichung vieler Spiele für PC, Spielkonsolen 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. Funktionsbereite Binärversionen wurden für Linux, Android, Windows und macOS erstellt.
Wesentliche Änderungen in Godot 4.6 (1, 2, 3):
- Im Editor wird standardmäßig ein neues Design-Thema "Modern" angeboten, das sich durch ein modernes Erscheinungsbild, eine kontrastreichere Informationsanzeige zur Verbesserung der Lesbarkeit, optimierte Abstände zwischen den Elementen und ein Farbschema in Grautönen auszeichnet. Nutzer, die an das alte Design gewöhnt sind, haben die Möglichkeit, zum klassischen Thema zurückzukehren.

- Im Editor wurde die Arbeit mit den Panels vereinheitlicht. Die unteren Panels und die meisten Dock-Panels sind jetzt schwebend und können abgetrennt werden. Panels können im Drag & Drop-Modus in verschiedene Teile der Benutzeroberfläche verschoben werden.
- Für neue 3D-Projekte wird standardmäßig die Physik-Simulations-Engine JoltPhysics verwendet, die bereits in AAA-Spielen wie Death Stranding 2 zum Einsatz kommt.
- Ein neues System für inverse Kinematik (IK) wurde hinzugefügt, das realistischere Animationen ermöglicht. Neue Modifikatoren und Einschränkungen (constraints) wurden hinzugefügt, die die Rotation und Winkelgeschwindigkeit von Gelenken kontrollieren, um unerwünschte Bewegungen zu vermeiden. Die festgelegten Einschränkungen können an 3D-Knoten gebunden werden, z. B. damit die Hand des Charakters nach dem Waffe greift. Ein neuer Modifikator IKModifier3D wurde erstellt, basierend auf dem Skelettmodifikator SkeletonModifier3D. Die deterministischen Löser (solvers) TwoBoneIK3D und SplineIK3D sowie die iterativen Löser FABRIK3D, CCDIK3D und JacobianIK3D sind verfügbar. Die modulare Architektur des IK-Frameworks ermöglicht die Kombination mit anderen Modifikatoren und Einschränkungen für die Feinabstimmung der prozeduralen Animation direkt in der Engine.
- Das System für Bildschirmraumreflexionen (SSR) wurde vollständig überarbeitet, das für die Visualisierung von Materialien mit reflektierenden Oberflächen wie Metall, Wasser und Glas verantwortlich ist. Die neue Implementierung erreicht eine höhere Realitätsnähe, verbessert die Leistung und bietet zwei Modi — Full-Resolution (maximale Qualität) und Half-Resolution (höhere Leistung). hohe Leistung).
- Einzigartige interne Knotenkennungen (Node ID) wurden implementiert, die in Szenendateien gespeichert werden und sich nach der Umstrukturierung der Szene, Änderungen an der Hierarchie der Elemente sowie der Verschiebung oder Umbenennung von Knoten nicht ändern.
- Eine Bibliothek libgodot wurde hinzugefügt, die es ermöglicht, die Godot Engine in eigene Anwendungen zu integrieren, anstatt sie als separaten Prozess auszuführen, was z. B. bei der Entwicklung eigener Spiel-Editoren nützlich sein kann. Es wird Unterstützung für Linux, Windows und macOS angeboten.
- 2D-Szenen, die als Kacheln im TileMap platziert werden (z. B. animierte Truhen, Lampen und Fackeln), können jetzt in 90-Grad-Schritten gedreht werden.
- Um den Arbeitsablauf an moderne 3D-Editoren anzupassen, wurden die Auswahl- und Transformationsmodi getrennt. Der frühere Modus "Auswählen" (Select) wurde in "Transformieren" (Transform) umbenannt, und es wurde ein neuer Modus nur zum Auswählen hinzugefügt, in dem Knoten ohne die Anzeige des Transformations-Gizmos ausgewählt werden können, um zufällige Verschiebungen, Drehungen und Skalierungen zu vermeiden.
- Das 3D-Zeichen- und Löschwerkzeug in GridMap wurde verbessert und auf den Bresenham-Algorithmus zur Interpolation zwischen den Punkten umgestellt, was es ermöglicht, glattere Linien zu erzielen und die Erstellung neuer Levels und Voxel-Karten durch die Reduzierung manueller Anpassungen zu beschleunigen.
- Im 3D-Gizmo wurde die Möglichkeit hinzugefügt, Objekte zu drehen und sie an der Ausrichtung der Kamera auszurichten.
- Im grafischen Interface wurde der Prozess der Zentrierung des Drehpunkts vereinfacht.
- Die Verarbeitung des Fokuses für Maus/Touchpad und Tastatur wurde getrennt — ein Mausklick ändert den Eingabefokus der Tastatur nicht mehr.
- Bei der Auswahl des Knotens MarginContainer im Editor wird die Visualisierung der Abstände im Ansichtsbereich gewährleistet.

- Die Navigation zwischen den Tabs wurde verbessert: Beim Verschieben von Ressourcen im Drag & Drop-Modus kann der Cursor jetzt auf den gewünschten Tab bewegt werden, und es wird automatisch ohne Klicken umgeschaltet.
- Im Output-Bereich kann man nun auf den Dateinamen in der Fehlermeldung oder Warnung klicken, um die Datei im Editor zu öffnen.
- Im Objektverfolgungswerkzeug wurde die Möglichkeit hinzugefügt, Snapshots der ObjectDB zu erstellen und Zustandsausschnitte mit bestehenden Objektlisten zu bestimmten Zeitpunkten zu vergleichen.

- Im Dialog für das schnelle Öffnen von Ressourcen (Quick Open) wurde die Unterstützung für die Vorschau des ausgewählten Ressourcen im Kontext der vorhandenen Szene hinzugefügt.
- Im Animationseditor ist es nun möglich, die Länge der Animation durch Dehnen oder Stauchen von Clips auf der Zeitleiste zu ändern. Im Interface zur Darstellung von Bézier-Kurven wurden Schaltflächen zum Anzeigen, Sperren und Löschen von Knotengruppen hinzugefügt.
- Die Unterstützung für die Delta-Kodierung von PCK-Patches wurde hinzugefügt, die es ermöglicht, nur die geänderten Teile der Ressourcen in die Patches aufzunehmen.
- Es wurde die Möglichkeit hinzugefügt, die Farbe von LED-Anzeigen der Gamecontroller anzupassen. Zukünftig wird Unterstützung für Bewegungssensoren, Touchpads, haptisches Feedback, adaptive Trigger und die Abfrage von Controllerinformationen erwartet.
- Durch die Optimierung der Verarbeitung von RGB-Texturen, die jetzt auf der GPU in RGBA umgewandelt und direkt verwendet werden, konnten die Importvorgänge für komprimierte Texturen bis zu doppelt so schnell gemacht werden.
- Beim Rendering ist standardmäßig der Mischmodus „Screen“ aktiviert und der Glüheffekt (Glow) wird vor der Tonwertkorrektur (Tonemapping) angewendet. Es wurde die Möglichkeit hinzugefügt, die Parameter der Tonumwandlung AgX anzupassen.
- Der Godot XR-Editor unterstützt jetzt Android XR-Geräte, um das Testen und Debuggen von Projekten für erweiterte und virtuelle Realität zu erleichtern. Die Unterstützung für die Spezifikation OpenXR 1.1 wurde hinzugefügt.

- Es wurde die Unterstützung für den Start exportierter Anwendungen auf Android-Geräten über scrcpy hinzugefügt, um den Inhalt des Smartphone-Bildschirms auf den PC-Bildschirm zu spiegeln.
- Beim Erstellen von Projekten für Windows wird standardmäßig Direct3D 12 verwendet.
Zusätzlich kann die kontinuierliche Entwicklung des Projekts Redot erwähnt werden, das einen Fork von Godot darstellt, der als Reaktion auf die strenge Moderationspolitik in den offiziellen Kommunikationskanälen und die Ablehnung von Meinungen, die nicht mit den Ansichten der Godot-Entwickler übereinstimmen, entstanden ist. Die Gründer von Redot hatten die Absicht, eine inklusive Gemeinschaft aufzubauen, in der alle persönlichen Überzeugungen der Entwickler akzeptiert werden. Eine Politizierung des Entwicklungsprozesses ist nicht akzeptabel und der Fokus liegt ausschließlich auf der Spieleentwicklung. Vor einigen Tagen wurde der Kandidat für die Veröffentlichung von Redot 26.1 veröffentlicht, in den viele Verbesserungen aus Godot 4.6 übernommen wurden.
Quelle: opennet.ru




