Godot Now Supports More XR Features & Builds A Universal OpenXR APK

Home » Godot Now Supports More XR Features & Builds A Universal OpenXR APK

Godot now supports Vulkan foveated rendering on Android, Application SpaceWarp, DirectX 12, and OpenXR render models, and can build a universal OpenXR APK.

If you’re unaware, Godot is a free and open-source alternative to Unity and Unreal Engine. It’s technically controlled by the non-profit Godot Foundation, but all development takes place in the open.

Since last year, Meta has been funding a group of Godot veterans to improve the engine’s support for OpenXR and Quest feature extensions, as well as to build high-quality samples and documentation.

Uniquely, Godot is also available standalone on Quest 3 and Quest Pro. To be clear, that means the editor itself runs as a 2D Android app within Horizon OS, including the ability to build APKs on-device.



0:00
/0:20



OpenXR render models API on Meta Quest 3 in Godot.

Godot 4.5, released in September, brought a number of important new XR features and improvements:

  • You can now use DirectX 12 and OpenXR together on Windows for improved performance.
  • Foveated rendering now works in Vulkan on Android. Previously it only worked in Vulkan on desktop, and was thus limited to OpenGL on Android.
  • Application SpaceWarp is now supported on Meta Quest and Pico headsets.
  • The OpenXR render models extension is now supported, letting the app dynamically load in 3D models of the active tracked controllers from the system. This avoids each application needing to bundle its own 3D models for every possible tracked controller it wants to support, and enables support for future unreleased controllers.

Crucially, Godot 4.5 also delivers support for building a universal OpenXR APK that can, in theory, run on any Android-based standalone headset that supports OpenXR. This rectifies the problem of having to maintain multiple device-specific builds for each headset, the antithesis of the “core promise” of OpenXR.

OpenXR Spatial Entities Extensions Standardize Surfaces, Markers, Anchors & Persistence
The new OpenXR Spatial Entities Extensions standardize surface detection, marker tracking, spatial anchors, and persistence.

Godot 4.6 is now in public testing, and it’s set to bring even more XR features and improvements, including an upgrade to OpenXR 1.1.

The engine will also add support for the OpenXR spatial entities extensions, released earlier this year. The spatial entities extensions standardize how developers leverage the environment tracking capabilities of headsets and glasses to build experiences that interact with the user’s physical environment, a class of capabilities that until now have been handled by vendor-specific extensions or SDKs.

This includes persistent spatial anchors, plane tracking, and marker tracking.

OpenXR 1.1 Brings Foveated Rendering & More Into The Spec
OpenXR 1.1 brings a foveated rendering extension & more into the core specification. Full details here.

Godot says it also plans to improve its frame synthesis support, providing runtimes with depth buffers and motion vectors to improve the quality of output of features like Application SpaceWarp.

Leave a Comment

Your email address will not be published. Required fields are marked *