using_the_xr_editor.rst 5.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. .. _doc_using_the_xr_editor:
  2. Using the XR editor
  3. ===================
  4. In 2024, we introduced the `Godot XR editor <https://godotengine.org/article/godot-editor-horizon-store-early-access-release/>`__,
  5. a version of the Godot editor **designed to run natively on XR devices**, enabling the creation,
  6. development and export of 2D, 3D, and **XR** apps and games directly on device.
  7. The app can be downloaded from the `Meta Horizon Store <https://www.meta.com/experiences/godot-game-engine/7713660705416473/>`__,
  8. or from the `Godot download page <https://godotengine.org/download/preview/>`__.
  9. .. note::
  10. The XR editor is in early access, while we continue to refine the experience. See :ref:`doc_using_the_xr_editor_limitations` below.
  11. XR devices support
  12. ------------------
  13. For now, the Godot XR editor is only available for the following `Meta Quest <https://www.meta.com/quest/>`__
  14. devices running **Meta Horizon OS v69 or higher**:
  15. - Meta Quest 3
  16. - Meta Quest 3s
  17. - Meta Quest Pro
  18. .. note::
  19. We are working to add support for more XR devices, including PCVR devices.
  20. Runtime Permissions
  21. -------------------
  22. - `All files access permission <https://developer.android.com/training/data-storage/manage-all-files#all-files-access>`__:
  23. Enables the editor to create, import, and read project files from any file locations on the device.
  24. Without this permission, the editor is still functional, but has limited access to the device's files and directories.
  25. - `REQUEST_INSTALL_PACKAGES <https://developer.android.com/reference/android/Manifest.permission#REQUEST_INSTALL_PACKAGES>`__: Enables the editor to install exported project APKs.
  26. - `RECORD_AUDIO <https://developer.android.com/reference/android/Manifest.permission#RECORD_AUDIO>`__: Requested when the `audio/driver/enable_input <https://docs.godotengine.org/en/stable/classes/class_projectsettings.html#class-projectsettings-property-audio-driver-enable-input>`__ project setting is enabled.
  27. - `USE_SCENE <https://developers.meta.com/horizon/documentation/native/native-spatial-data-perm/>`__: Required to enable and access the scene APIs when running an XR project.
  28. Tips & Tricks
  29. -------------
  30. **Input**
  31. - For the best experience and high level of productivity, connecting a bluetooth keyboard & mouse is recommended to interact with the XR editor.
  32. The XR editor supports all of the `usual shortcuts and key mappings <https://docs.godotengine.org/en/stable/tutorials/editor/default_key_mapping.html>`__.
  33. - When interacting with tracked controllers or tracked hands, you can toggle on the
  34. `interface/touchscreen/enable_long_press_as_right_click <https://docs.godotengine.org/en/stable/classes/class_editorsettings.html#class-editorsettings-property-interface-touchscreen-enable-long-press-as-right-click>`__ editor setting to enable right-click by long press.
  35. - When interacting with tracked controllers or tracked hands, you can increase the size of the scrollbar using the
  36. `interface/touchscreen/increase_scrollbar_touch_area <https://docs.godotengine.org/en/stable/classes/class_editorsettings.html#class-editorsettings-property-interface-touchscreen-increase-scrollbar-touch-area>`__ editor setting.
  37. **Multi-tasking**
  38. - `Theater View <https://www.meta.com/blog/quest/meta-quest-v67-update-new-window-layout-creator-content-horizon-feed/>`__ can be used to fullscreen the *Editor window*.
  39. - Enable `Seamless Multitasking <https://www.uploadvr.com/seamless-multitasking-experimental-quest/>`__, available in the Quest *Experimental Settings*,
  40. to enable the ability to quickly transition between a running XR project and the *Editor window*.
  41. - When developing a non-XR project, the Godot editor app icon will provide the ability to switch between the *Editor window* and the *Play window* when the latter is active, using Quest's *App menu* feature.
  42. - When developing and running an XR project, you can bring back the *Editor window* by:
  43. - Pressing on the *Meta* button to invoke the menu bar
  44. - Clicking on the Godot editor app icon to summon the *App menu*, and select the *Editor window* tile.
  45. **Projects sync**
  46. - Syncing projects via Git can be done by downloading an Android Git client. We recommend the `Termux terminal <https://termux.dev/en/>`__,
  47. an Android terminal emulator which provides access to common terminal utilities such Git and SSH.
  48. - **Note:** To use Git with the Termux terminal, you'll need to grant *WRITE* permission to the terminal.
  49. This can be done by `running the following command <https://wiki.termux.com/wiki/Termux-setup-storage>`__ from within the terminal: ``termux-setup-storage``
  50. **Plugins**
  51. - GDExtension plugins work as expected, but require the plugin developer to provide native Android binaries.
  52. .. _doc_using_the_xr_editor_limitations:
  53. Limitations & known issues
  54. --------------------------
  55. Here are the known limitations and issues of the XR editor:
  56. - No Meta Quest 2 support due to the limited amount of memory on the device.
  57. However advanced users can grab the XR editor APK from the `download page <https://godotengine.org/download/preview/>`__
  58. and sideload it onto their device if they desire to do so.
  59. - No gradle build support.
  60. - No support for Android plugins as they require gradle build support. GDExtension plugins are supported.
  61. - No C#/Mono support.
  62. - No support for external script editors.
  63. - While available, the *Vulkan Forward+* renderer is not recommended due to severe performance issues.