Migration notes: godot-platform-vr
Incremental upgrade for topics this skill covers. Apply one hop, stabilize/test, then next. Never skip hops.
If the project is < 4.0, follow godot-version-migration era bridges (legacy → 3→4) until 4.0, then these hops. Official 3→4: Upgrading from Godot 3 to Godot 4.
3.x → 4.0
Official: Upgrading from Godot 3 to Godot 4
- Entire ARVR* → XR* rename set (auto in converter).
XRPositionalTrackername/type getters renamed (get_tracker_name, …).- Re-test OpenXR/WebXR interfaces on 4.0+; do not assume 3.x ARVRServer code paths.
4.0 → 4.1
Official: Upgrading to Godot 4.1
RenderingServer.global_shader_parameter_get_list()returnsArray[StringName].RenderingDevice.draw_list_begin()storage_texturestyped asArray[RID].
4.1 → 4.2
Official: Upgrading to Godot 4.2
XRInterface.environment_blend_modeadded (C#:EnvironmentBlendModeEnum) — update passthrough/mixed-reality samples.- Mesh format upgrade — run Project → Tools → Upgrade Mesh Surfaces before shipping OpenXR builds.
- RenderingDevice
BarrierMaskenum values changed — rebuild custom RD/XR compositor extensions.
4.2 → 4.3
Official: Upgrading to Godot 4.3
WebXRInterface.get_input_source_tracker()→XRControllerTracker;XRServer.get_tracker()→XRTracker.- Reverse Z depth buffer — audit custom XR shaders and post effects comparing depth.
- Decal
modulatenow linear color space — retune passthrough UI overlays in world space. - RenderingDevice barrier/draw_list APIs simplified (post_barrier params removed).
4.3 → 4.4
Official: Upgrading to Godot 4.4
RenderingDevice.draw_list_begin()signature overhauled — update low-level XR render plugins.Shaderdefault texture params useTexture/TextureLayered.VisualShaderNodeVec4Constantoutput type → Vector4 — recreate VR UI visual shaders.
4.4 → 4.5
Official: Upgrading to Godot 4.5
OpenXRExtensionWrapperExtension→OpenXRExtensionWrapperin register APIs.- OpenXR editor types moved to editor assembly — wrap C# tooling with
#if TOOLS. - GLTF/FBX Naming Version for non-joint skeleton nodes — reimport tracked avatars after upgrade.
4.5 → 4.6
Official: Upgrading to Godot 4.6
OpenXRExtensionWrapperextension hooks gainxr_versionparameter.MeshInstance3D.skeletondefault emptyNodePath— explicit skeleton paths in VR rig scenes.- Glow default blend Screen + brighter volumetric fog — retune VR comfort brightness.
- New Windows projects default D3D12 — validate OpenXR PC runtime on target GPUs.
4.6 → 4.7
Official: Upgrading to Godot 4.7
OpenXRExtensionWrapper._on_register_metadata()gainsinteraction_profile_metadata.OpenXRSpatialAnchorCapability.create_new_anchor()optionalnextparameter.Texture2D.get_format()on base class — use when picking compression for stereo eye buffers.- AreaLight3D preferred for soft rectangular lights; HDR output available on major HMD host platforms.