# OpenXR VR Template | Feedback and Discussion

**URL:** <https://forums.unrealengine.com/t/openxr-vr-template-feedback-and-discussion/246425>\
**Category:** XR Development\
**Tags:** unreal-engine\
**Created:** [August 19, 2021, 9:32pm UTC](https://forums.unrealengine.com/t/openxr-vr-template-feedback-and-discussion/246425 "2021-08-19T21:32:07Z")\
**Posts on this page:** 20\
**Page:** 9

<div class="post-metadata">

**Author:** ![Rectus\_SA](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@Rectus\_SA](https://forums.unrealengine.com/u/Rectus_SA)\
**Post date:** [November 4, 2022, 3:23pm UTC](https://forums.unrealengine.com/t/openxr-vr-template-feedback-and-discussion/246425/162 "2022-11-04T15:23:45Z")

</div>

I submitted separate pull requests for the motion range and animgraph node:  
[https://github.com/EpicGames/UnrealEngine/pull/9747](https://github.com/EpicGames/UnrealEngine/pull/9747)  
[https://github.com/EpicGames/UnrealEngine/pull/9748](https://github.com/EpicGames/UnrealEngine/pull/9748)

I tried making everything as clean and backwards compatible as possible, although I’m not sure on the best practices in making animgraph nodes.

The bone rotations from the hand tracking plugin also don’t directly work with the hand model, so I added an adjustment for the joint axis. I’m not sure if there is a clean way of setting up the rotations, since OpenXR and Unreal has different axis handedness.

---

<div class="post-metadata">

**Author:** ![bcv](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@bcv](https://forums.unrealengine.com/u/bcv)\
**Post date:** [November 6, 2022, 12:12am UTC](https://forums.unrealengine.com/t/openxr-vr-template-feedback-and-discussion/246425/163 "2022-11-06T00:12:30Z")

</div>

Created a new VR template project using 5.1 preview and it crashes right after clicking on VR preview. This doesn’t happen with 5.0

Assertion failed: DepthSwapchainDesc.Extent.X == SizeX && DepthSwapchainDesc.Extent.Y == SizeY

---

<div class="post-metadata">

**Author:** ![VictorLerp](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/victorlerp/32/738381_2.png) [@VictorLerp](https://forums.unrealengine.com/u/VictorLerp)\
**Post date:** [November 7, 2022, 3:37pm UTC](https://forums.unrealengine.com/t/openxr-vr-template-feedback-and-discussion/246425/164 "2022-11-07T15:37:58Z")

</div>

This has been fixed for 5.1 release, but you can use this workaround for now if you want to continue to experiment with the Preview: [UE 5.1.0 p1: VRtemplate crash on start on Quest - null pointer dereference - #16 by Spcarso](https://forums.unrealengine.com/t/ue-5-1-0-p1-vrtemplate-crash-on-start-on-quest-null-pointer-dereference/666292/16)

---

<div class="post-metadata">

**Author:** ![AxSoler](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/axsoler/32/250446_2.png) [@AxSoler](https://forums.unrealengine.com/u/AxSoler)\
**Post date:** [November 10, 2022, 9:32am UTC](https://forums.unrealengine.com/t/openxr-vr-template-feedback-and-discussion/246425/165 "2022-11-10T09:32:47Z")

</div>

Last year Meta released this Quest demo app to show diferent methods and optimizations to increase render quality in 2D panels / text / UI.

[2D Panels Demo](https://www.oculus.com/deeplink/?action=view&path=app/4581055775312676&ref=oculus_desktop)

Do you think this level of quality is currently achievable with out-of the-box (blueprints) Unreal?

---

<div class="post-metadata">

**Author:** ![karakamen](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@karakamen](https://forums.unrealengine.com/u/karakamen)\
**Post date:** [November 29, 2022, 3:28am UTC](https://forums.unrealengine.com/t/openxr-vr-template-feedback-and-discussion/246425/166 "2022-11-29T03:28:42Z")

</div>

Hi. Do you guys have any updates on hand tracking in the 5.1 VR Template? The hand components aren’t available anymore without the Oculus plugin. Even with the depreciated plugin, the hands don’t seem to work for me. Is there a different way of doing that in blueprints now, or are you guys still working on that? Is there any guide available where one can set up hand tracking “manually”? Lol, a pun.

---

<div class="post-metadata">

**Author:** ![VictorLerp](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/victorlerp/32/738381_2.png) [@VictorLerp](https://forums.unrealengine.com/u/VictorLerp)\
**Post date:** [December 2, 2022, 5:33pm UTC](https://forums.unrealengine.com/t/openxr-vr-template-feedback-and-discussion/246425/167 "2022-12-02T17:33:11Z")

</div>

Natively we support OpenXR extensions (such as EXT\_HandTracking) but Oculus devices use a more complex implementation. Such features are developed by the device developers, and can be released as extension plugins. [The MetaXR plugin](https://www.unrealengine.com/marketplace/en-US/product/8313d8d7e7cf4e03a33e79eb757bccba) works with Vanilla UE 5.0.3!

---

<div class="post-metadata">

**Author:** ![Nonlin](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@Nonlin](https://forums.unrealengine.com/u/Nonlin)\
**Post date:** [December 5, 2022, 4:52pm UTC](https://forums.unrealengine.com/t/openxr-vr-template-feedback-and-discussion/246425/168 "2022-12-05T16:52:08Z")

</div>

@VictorLerp What does the prioritization between Vulkan and OpenGL look like?  
In general it seems like Bytedance and Meta are putting more of an emphasis on Vulkan but that is putting things in a very awkward place given that OpenGL still handles some essential situations better than Vulkan. So feels like we are in this no mans land between lack of OpenGL support and proper Vulkan support.

Is the ultimate goal to enable both to work well or to eventually depreciate OpenGL in favor of Vulkan?

---

<div class="post-metadata">

**Author:** ![christuusgnosis](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@christuusgnosis](https://forums.unrealengine.com/u/christuusgnosis)\
**Post date:** [December 6, 2022, 4:19am UTC](https://forums.unrealengine.com/t/openxr-vr-template-feedback-and-discussion/246425/169 "2022-12-06T04:19:08Z")

</div>

The android based systems are all moving to Vulkan  
I think John Carmack is now behind vulkan and has stopped dev on OGL  
he was its main force  
I could be wrong  
I don’t think it really affects the open xr template though.  
The template seems to work with meta for me.  
But I only have vulkan on.  
Someone said something about disabling “multiview” and it would work on quest with ogl  
I haven’t had a chance to test, it was just a day ago  
so apparently he built an ogl only proj to the q2 by disabling something.

---

<div class="post-metadata">

**Author:** ![Nonlin](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@Nonlin](https://forums.unrealengine.com/u/Nonlin)\
**Post date:** [December 6, 2022, 2:40pm UTC](https://forums.unrealengine.com/t/openxr-vr-template-feedback-and-discussion/246425/171 "2022-12-06T14:40:23Z")

</div>

OpenGL support isn’t there at all for Meta and Pico in 5.1.

And in 5.0 you can get OpenGL to work on the non OpenXR paths with forward shading off and a very narrow set of render settings.

And Vulkan wouldn’t be that big of a deal if High Resolution Video Playback (2K+) didn’t have a large performance impact. That’s assuming all else is well with Vulkan the video playback performance alone is enough to stop certain projects in their tracks when using Vulkan.

---

<div class="post-metadata">

**Author:** ![christuusgnosis](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@christuusgnosis](https://forums.unrealengine.com/u/christuusgnosis)\
**Post date:** [December 6, 2022, 3:10pm UTC](https://forums.unrealengine.com/t/openxr-vr-template-feedback-and-discussion/246425/172 "2022-12-06T15:10:52Z")

</div>

I agree  
I have a lot of stereo pano’s I use for backgrounds  
the video streams are definately chunky in vulkan  
I think ogl particles are much better too  
I keep the 427 and 503 just in case.  
Maybe the video streaming will get an overhaul in vulkan.  
I can’t even get 5.1 to compile for quest yet after the ndk change  
as for the template itself  
I like the new template. The hands are nice.

---

<div class="post-metadata">

**Author:** ![VictorLerp](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/victorlerp/32/738381_2.png) [@VictorLerp](https://forums.unrealengine.com/u/VictorLerp)\
**Post date:** [December 12, 2022, 9:20pm UTC](https://forums.unrealengine.com/t/openxr-vr-template-feedback-and-discussion/246425/173 "2022-12-12T21:20:52Z")

</div>

> [@Nonlin](#):
>
> @VictorLerp What does the prioritization between Vulkan and OpenGL look like?

Vulkan is what our focus and feature development is targeting.

---

<div class="post-metadata">

**Author:** ![roberteker](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@roberteker](https://forums.unrealengine.com/u/roberteker)\
**Post date:** [December 13, 2022, 3:14pm UTC](https://forums.unrealengine.com/t/openxr-vr-template-feedback-and-discussion/246425/174 "2022-12-13T15:14:14Z")

</div>

I have to say that the UX of Unreal just went completely down the toilet! Why did Epic raise the threshold for getting up and running to such a degree as this? Before we had one list, one place to easily create input actions and now this???

 ![Screenshot 2022-12-13 160816](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/3/9/2391799ba0afb3babaff2de6fc7a7bae9cbc5f57.jpeg)

Before, we were up and running within minutes of switching from Vive to HP Reverb. One list, easy to select the input from menus. Done. And now, there’s not a single tutorial that’s shorter than 10 minutes on Youtube and lots of assets that needs to be created?

---

<div class="post-metadata">

**Author:** ![christuusgnosis](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@christuusgnosis](https://forums.unrealengine.com/u/christuusgnosis)\
**Post date:** [December 13, 2022, 5:33pm UTC](https://forums.unrealengine.com/t/openxr-vr-template-feedback-and-discussion/246425/175 "2022-12-13T17:33:36Z")

</div>

ack.  
I hadn’t even looked at the new enhanced input  
so busy converting and migrating  
it doesn’t look fun  
That being said I’m still using 5.03 for main production as I use a quest 1 for apk testing and 5.1 won’t compile with sdk 29/ndk 21 so it won’t run on quest 1.

---

<div class="post-metadata">

**Author:** ![Kavan](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/kavan/32/1194623_2.png) [@Kavan](https://forums.unrealengine.com/u/Kavan)\
**Post date:** [December 20, 2022, 4:50am UTC](https://forums.unrealengine.com/t/openxr-vr-template-feedback-and-discussion/246425/176 "2022-12-20T04:50:07Z")

</div>

Once you get a chance to work with Enhanced Input a bit I think you’ll like it. While initial asset creation is a step, I’ve found it to be a preferable system to the prior (quest dev as well)

---

<div class="post-metadata">

**Author:** ![Starkium](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/starkium/32/1194588_2.png) [@Starkium](https://forums.unrealengine.com/u/Starkium)\
**Post date:** [December 20, 2022, 3:18pm UTC](https://forums.unrealengine.com/t/openxr-vr-template-feedback-and-discussion/246425/177 "2022-12-20T15:18:55Z")

</div>

based on everything else I’ve seen with ue5, I’m gunna say they either hate low end platforms or they genuinely have no idea how bad they’re ■■■■■■■ up.

Think about this though, fortnite doesn’t have a new 5.1 build for mobile. Likely won’t be one from what I’ve heard.

---

<div class="post-metadata">

**Author:** ![christuusgnosis](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@christuusgnosis](https://forums.unrealengine.com/u/christuusgnosis)\
**Post date:** [December 20, 2022, 8:03pm UTC](https://forums.unrealengine.com/t/openxr-vr-template-feedback-and-discussion/246425/178 "2022-12-20T20:03:47Z")

</div>

UE actually scales pretty good to low end  
depending on your cook settings  
the xr template runs in a quest nicley  
and a quest is a potato hardware device

---

<div class="post-metadata">

**Author:** ![motorsep](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/motorsep/32/918698_2.png) [@motorsep](https://forums.unrealengine.com/u/motorsep)\
**Post date:** [December 20, 2022, 8:33pm UTC](https://forums.unrealengine.com/t/openxr-vr-template-feedback-and-discussion/246425/179 "2022-12-20T20:33:34Z")

</div>

Template doesn’t have anything special, that also can run on potato. So I wouldn’t use Template as a reference to say UE5.x runs well on Quest 2, because it doesn’t.

---

<div class="post-metadata">

**Author:** ![Kavan](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/kavan/32/1194623_2.png) [@Kavan](https://forums.unrealengine.com/u/Kavan)\
**Post date:** [March 12, 2023, 5:39am UTC](https://forums.unrealengine.com/t/openxr-vr-template-feedback-and-discussion/246425/180 "2023-03-12T05:39:40Z")

</div>

@VictorLerp  
on the Template VRPawn, in the InputAction Hand gestures “Hand Animation Input and data passed to Animation Blueprint” - every input cast to the particular hands AnimInstance on each input. Is there a reason the Right and Left hand AnimInstance isn’t cast to once on BeginPlay and cached to be referenced here, rather than cast to repeatedly? Any thoughts on why or why not doing that would be preferable?

---

<div class="post-metadata">

**Author:** ![VictorLerp](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/victorlerp/32/738381_2.png) [@VictorLerp](https://forums.unrealengine.com/u/VictorLerp)\
**Post date:** [March 13, 2023, 4:18pm UTC](https://forums.unrealengine.com/t/openxr-vr-template-feedback-and-discussion/246425/181 "2023-03-13T16:18:04Z")

</div>

For a complete project I’d probably declare a variable, cast on begin play, and use the cached reference. For the template the casts are just a little bit easier to understand as there’s less BP logic involved.

---

<div class="post-metadata">

**Author:** ![Kavan](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/kavan/32/1194623_2.png) [@Kavan](https://forums.unrealengine.com/u/Kavan)\
**Post date:** [March 14, 2023, 12:17am UTC](https://forums.unrealengine.com/t/openxr-vr-template-feedback-and-discussion/246425/182 "2023-03-14T00:17:14Z")

</div>

Understandable. I would like to suggest adding notes via a node tag or comments that express best practices in cases like this when ease of understanding is prioritized over it. That can also serve as a good lesson even if not fully implemented in the sample.

“For a complete project, I’d probably declare a variable, cast on begin play, and use the cached reference.” Is actually a pretty solid example of what the note could read.

[Previous page](https://forums.unrealengine.com/t/openxr-vr-template-feedback-and-discussion/246425.md?page=8)

[Next page](https://forums.unrealengine.com/t/openxr-vr-template-feedback-and-discussion/246425.md?page=10)
