- Das visionOS-Team von Apple hat den ersten PR eingereicht, um Vision-Pro-Unterstützung zur Godot-Engine hinzuzufügen
- Das erste Ziel ist die native Ausführung bestehender Godot-Spiele unter visionOS sowie die Unterstützung für die Erstellung immersiver Inhalte
- Die visionOS-Plattform wird auf Basis von iOS implementiert, wobei Code-Wiederverwendbarkeit und eine strukturierte PR-Strategie betont werden
- Tests für iOS-/visionOS-bezogene Funktionen sind abgeschlossen, aber für einige Funktionen wird Hilfe aus der Community benötigt
- In künftigen PRs sollen SwiftUI und ein VR-Plugin ergänzt werden, um die Grundlage für erweiterte immersive Erlebnisse zu schaffen
Überblick über den ersten Beitrags-PR für Vision-Pro-Unterstützung
- Das visionOS-Engineering-Team von Apple möchte in Zusammenarbeit mit der Godot-Community Vision Pro unterstützen
- Es hält hohe Qualitätsstandards ein und folgt dem Coding-Stil von Godot
- Die Beiträge werden funktionsweise in kleine, unabhängige PRs aufgeteilt; dieser PR ist der erste davon
- In nachfolgenden PRs sollen außerdem Swift- und immersive VR-Funktionen schrittweise bereitgestellt werden
Ziele des Beitrags
- Unterstützung dafür, dass bestehende Godot-Spiele nativ in flachen Fenstern von visionOS ausgeführt werden können
- Bereitstellung von Funktionen zur Erstellung immersiver Inhalte über ein neues visionOS-VR-Plugin
- Der Beitragsplan ist in insgesamt drei Phasen gegliedert
- Hinzufügen der visionOS-Plattform (dieser PR)
- Hinzufügen des SwiftUI-App-Lifecycles sowie Swift-Kompilierungs-/Link-Funktionen (geplant)
- Hinzufügen eines Vision-Pro-VR-Plugins (geplant)
Technische Umsetzung
- Die visionOS-Plattform wird auf Basis von iOS implementiert, um Code-Duplikate zu minimieren
- Ein neuer Ordner
drivers/apple_embedded wurde erstellt, um gemeinsamen Code zwischen iOS und visionOS zu speichern
- Die einzelnen Plattformen werden über Subklassen unterschieden, die nur ihre jeweils spezifischen Detailfunktionen bereitstellen
- OpenGL wird nicht unterstützt (visionOS selbst unterstützt kein OpenGL)
- Der PR wurde zur leichteren Begutachtung in mehrere Commits aufgeteilt
Überlegungen zur Dokumentation
- Die Export-Plugins und Einstellungen von iOS und visionOS sind größtenteils gemeinsam
- Die Datei
EditorExportPlatformIOS.xml wurde in EditorExportPlatformAppleEmbedded.xml umbenannt und verschoben
- Es wird um Feedback aus der Community gebeten, ob dies aus Sicht der Dokumentationstools angemessen ist und wie sich die Dokumentation nach Plattformen trennen lässt
Stand der Tests
- Getestet wurde mit dem Platformer-Demo-Projekt
- Sowohl unter iOS als auch unter visionOS wurden der Mobile- und der Forward+-Renderer auf Basis des Metal-Rendering-Treibers getestet
- Die iOS-Unterstützung bleibt erhalten und gleichzeitig läuft es erfolgreich auch unter visionOS
Worum die Community gebeten wird
- Es muss getestet werden, ob in den iOS-/visionOS-Templates Plugin-Einbettung und Link-Funktionen korrekt arbeiten
- Die IPA-Erstellung und One-Click-Deploy funktionieren nicht — es wird um Ursachenanalyse und Bestätigung der Funktionsfähigkeit gebeten
- Auch die direkte Bereitstellung über ios_deploy muss getestet werden — falls sie kaum noch genutzt wird, könnte der Code entfernt werden
Noch nicht implementierte Funktionen
- DPI-Informationen sind derzeit hart codiert — bei der SwiftUI-Integration sollen Änderungen zur Laufzeit künftig per API übernommen werden
- Die automatische Erstellung eines Icon-Asset-Katalogs für visionOS ist noch nicht implementiert
- Dies kann durch manuelle Erstellung im Xcode-Projekt ersetzt werden
- Beiträge aus der Community dazu sind sehr willkommen
- Das SVG-Logo der visionOS-Plattform ist textbasiert — es wird um einen optisch ansprechenderen Icon-Beitrag gebeten
4 Kommentare
Was ist Godot?
Steigt Godot jetzt richtig durch? lol
Plötzlich Godot..?!
Hacker-News-Kommentare
Die Produktlinie Apple Vision und visionOS wurde intern nicht eingestellt, und Apple zeigt weiterhin Engagement für die Zukunft
Godot unterstützt VR bereits über OpenXR
Zwei visionOS-Nutzer freuen sich über diese Ankündigung
Es ist gut, diese Ergänzung zu sehen. Ich bin mir nicht sicher, ob es besser wäre, wenn Godot OpenXR an Apples AR-Compositor anbinden würde, oder ob man es so machen sollte, wie es diese PRs umsetzen
Es ist überraschend, dass Apple diesen PR eingereicht hat, ohne überhaupt etwas zum Entwicklungsfonds beizutragen
Nach allem, was ich in den Medien gehört habe, hatte ich den Eindruck, dass Apple XR-Produkte fast aufgegeben hat und sie nur noch per lebenserhaltenden Maßnahmen weiterführt, bis die Technologie für den Massenkonsum bereit ist
Nachdem man viele Kommentare gelesen hat, sollte Apple Folgendes tun:
Apple sollte Godot Geld geben, damit dort vernünftig losgelegt werden kann
Der interessante Punkt hier ist, dass Apple offenbar endlich gelernt hat, dass Games wichtig sind. Natürlich geben sie das nicht offen zu, wegen ihrer Haltung nach dem Motto „Wir liegen nie falsch“. So wie damals bei der ursprünglichen Mac-Philosophie „eine Maus sollte nur eine Taste haben“, weshalb sie Mäuse ohne zwei physische Tasten bauten. Sie lernen dazu, und das war freiwillig, anders als bei USB-C auf ihren Telefonen/Tablets
Es sieht so aus, als könnte Apple für die nächste Generation der Vision-Geräte Games priorisieren. Hoffentlich, denn viele Leute, mich eingeschlossen, haben Vision wegen fehlender Spieleunterstützung übersprungen. Der Preis war nicht das Problem