Search Unity

Amidst a period of innovation for XR, we want to ensure Unity remains the best development platform for creators and our ecosystem partners. We’re excited to announce our new XR plugin framework designed to empower the ecosystem and provide guidance on how this impacts development in 2019.3 and beyond.

Unity XR plugin framework

We have been working to improve our multi-platform offering, enabling direct integrations through a unified plugin framework. The resulting tech stack consists of an API that exposes common functionalities across our supported platforms in a frictionless way for creators while enabling XR hardware and software providers to develop their own Unity plugins. This architecture offers the following benefits:

  • Multi-platform developer tools such as AR Foundation and the XR Interaction Toolkit 
  • Faster partner updates from supported plugins via the Unity Package Manager 
  • More platforms have access to an interface to leverage Unity’s XR rendering optimizations and developer tools

Unity has developed new XR plugins for our supported platforms as part of this shift. Additionally, we have deprecated our built-in platform implementations in 2019.3. 

This framework will influence how we support various types of platforms:

  • Officially supported platforms
  • Verified Solutions Partners
  • Innovators

Officially supported platforms

“Build once, deploy anywhere” continues to be our core principle, and we work directly with our strategic partners to ensure that all creators are fully supported when developing for these platforms. This involves deep platform integration, improvements to our engine, and optimizations to our XR tech stack for the platform. As of 2019.3, Unity officially works with and supports: 

  • ARKit
  • ARCore
  • Microsoft HoloLens
  • Magic Leap
  • Oculus
  • Windows Mixed Reality
  • PlayStation VR

Other platform updates

  • Gear VR is no longer supported in 2019.3 and beyond, as Oculus focuses on their current generation of hardware. 
  • Google VR is no longer supported in 2019.3 and beyond due to Google ending sales of Daydream View and the launch of the Cardboard Open Source Project
  • As part of our shift to the new plugin framework, Valve is using our XR SDK to develop their OpenVR Unity XR plugin for 2019.3 and beyond. They will share more information on where to access it once it is available. Until that plugin is available, built-in support of OpenVR will continue to be functional and available in 2019.3, and we will support our users with any critical fixes.

Note: Gear VR, Google VR, and OpenVR will remain supported in Unity 2018 LTS. 

Verified Solutions Partners

As we continue to see new entrants in the XR space, we want to make sure our framework enables better integrations for the whole ecosystem. We are excited to pair the Unity XR SDK with our Verified Solutions Partner program, which is designed to help third-party providers deliver direct value to their creators. The program offers various levels of support, including test verification and promotion of the plugin once released. Being a Verified Solutions Partner helps establish developer trust and improve adoption of your plugin. 

Learn more about the program and how you can join our network of Verified Solutions Partners. 

Innovators

Unity would not be the platform it is today without our community of creators and innovators. To enable our ecosystem without getting in the way of innovation, we’re excited to announce that users who want to experiment can now develop their own Unity plugins for our interface, though these solutions and partners are not supported directly by Unity. 

Sign up for access to the headers, documentation, and test suites of our XR SDK

Migration to XR plugins

As mentioned earlier, built-in XR support has been deprecated in 2019.3 and we recommend using our supported XR plugins.*

See the table below for our latest guidance on how to develop for each platform.

Platform Recommendation
ARCore AR developers using ARCore in their projects should continue using AR Foundation, and XR Management to load in the ARCore XR Plugin.
ARKit AR developers using ARKit in their projects should continue using AR Foundation, and XR Management to load in the ARKit XR Plugin.
Magic Leap Magic Leap developers should continue using AR Foundation, and XR Management to load in the Magic Leap XR Plugin. Developers will also need to download the Magic Leap Lumin SDK.
Microsoft HoloLens / Windows Mixed Reality HoloLens developers using 2019.3 and later should continue using AR Foundation, and XR Management to load the Windows XR Plugin. Microsoft is also releasing a new version of their Mixed Reality Toolkit (MRTK 2.3) later this month to be compatible with the Windows XR Plugin in 2019.3 and later.

Developers using Unity 2018 LTS to stay on a stable version can continue developing for HoloLens and Windows MR devices. 

Note: Built-in support for Windows MR (Windows Mixed Reality) has been deprecated in 2019.3.* 

Oculus Oculus developers using 2019.3 and later should use XR Management to load the Oculus XR Plugin.

Developers using Unity 2018 LTS to stay on a stable version can continue developing for Oculus devices. 

Note: Built-in support for Oculus (Oculus Android & Oculus Desktop) has been deprecated in 2019.3.* 

OpenVR Valve is using our XR SDK to develop their OpenVR Unity XR plugin for 2019.3. They will share more information on where to access it once it is available.

Until that plugin is available, built-in support of OpenVR will continue to be functional and available in 2019.3, and we will support our users with any critical fixes.

OpenVR will remain supported in Unity 2018 LTS, and developers can continue using OpenVR in their existing projects. 

Note: Built-in support for OpenVR (OpenVR (Desktop)) has been deprecated in 2019.3.*

Gear VR Gear VR is no longer supported by the Oculus XR Plugin in 2019.3 and beyond. 

Gear VR will remain supported in Unity 2018 LTS, and developers can continue developing for Gear VR in their existing projects. 

Note: Built-in support for Gear VR (Oculus Android) has been deprecated in 2019.3.*

Google VR Google VR is no longer supported in 2019.3 and beyond. 

Cardboard developers using 2019.3 and later should stay tuned on the latest updates regarding a Cardboard Open Source XR Plugin for Unity, which can be found on the Google VR developer site.

Google VR will remain supported in 2018 LTS, and developers can continue developing for Daydream and Cardboard in their existing projects. 

Note: Built-in support for Google VR (Google VR Android & Google VR iOS) has been deprecated in 2019.3.* 

Vuforia The Vuforia Engine built in package (Vuforia Engine AR) will no longer be natively distributed and directly supported by Unity as of Unity 2019.3. The latest Vuforia Engine package will be available through the Unity Package Manager until March of this year. After March, you will continue to be able to download new versions of Vuforia Engine for Unity via the Vuforia Developer Portal

*Deprecation means the built-in implementations are still available for use in 2019.3 and will remain functional in 2019 LTS with no new features, but essential bug fixes.

53 replies on “Unity XR platform updates”

I think a radical reorganisation and consolidation of all the fragmented tools is a good thing long term and I applaud the initiative. I just hope the LTS 2019.4 version can bridge the gap for everyone until we get there.
I’m looking at AR foundation and thinking it just doesn’t have the feature set of vuforia quite yet, but here’s hoping…

Why do you guys always botch the announcements of these things? Stuff often feels infinitely more frustrating than it needs to be cause the roll out of information is never slow always sudden and alarming at worst.

The mention of Vuforia no longer being supported in Unity 2019.3+ are inaccurate. The
PTC/Vuforia team will have a full response posted on our developer portal shortly.

The audience/user reaction here and on other recent posts (https://blogs.unity3d.com/2019/12/12/2019-3-is-now-in-the-final-stages-of-beta-testing/ ) and in many sections in the forums should be and hopefully is a wakeup call for Unity, because that is extremely needed obviously.

Yes, it was maybe just a «slight» mistake to not explain the OpenVR situation as it is properly, but how could this mistake have happened?
Because your whole situation is a complete ridiculous mess.
Maybe you don’t understand it or don’t want to understand it, but this splitting out of many engine aspects into separate packages separately to be downloaded via package manager and now also in similar vein this externalizing of the previously integrated support for VR on more and more ends is complete and utter nonsense.

It is insanely difficult to maintain for your users, not just you.
This is unacceptable.

Yes, your team and evangelist youtubers/twitter people etc hype each and every new such development and feature up like it is oh so awesome, but in reality, it has been nothing but an extremely convoluted, huge timesink mess for at least the last 1-2 years, and with you not course correcting and instead doubling down on this completely misguided path it is constantly getting worse, not better.

Then i see replies by the staff apologizing for the mess in messaging (of course it is a mess, because the situation itself is a mess) and then repeatedly users post comments about all their worries about current and 2019.3 VR feature/functionality states (broken), like Fixed Foveated rendering, proper vulkan support, proper post processing working in single pass on all VR platforms (and what about in acceptable performance on top, that’d be great) and many other such things
and yes, these and many others are all issues in latest (also on many other ends broken) 2019.3 betas, not «just» in stable versions 2019.1,.2 etc and then the team person replies about the great new upcoming XR improvements on such ends in 2019.3, seemingly not even realizing how off this marketing reply is when users are complaining about those issues in not just the current stable release but also this beta you are talking about having improvements on those ends.

Seriously, UT, you have to get your stuff together, too many things are going in bad direction there.

Sorry about rude tone, but this messed up situation is costing us paying users way too much time and money meanwhile with your constant instability, tons of new bugs added, always adding half baked new features while abandoning old more stable stuff which despite it’s age just got made barely stable, hardly ever made fully feature complete to a level it should be.

If someone is to start with Unity VR now, which version should i recommend him/her to use with which of these convoluted mess options?

besides marketing blabla you could not even give me a good option for a fully stable reliable option there which performs well on all platforms.

I have to stay on 2019.1.2F1 or older version with most of my projects because it just got more buggy and more new issues and even worse performance in most of my projects with the newer versions.

Each time a new alpha/ beta comes out i give it a try with several projects (another huge timesink) and each time there are different new issues for each.
Now one could say of course there are bugs in alphas an (early) betas, but 2019.3 has now F (release candidate) labels at the end. This is also compltely unacceptable when one looks at the list of just the known bugs listed where there are several major complete no go shipstopper grand scale issues remaining.

Who in their right mind forces the dev team to label something like that a release candidate? This is now at best early beta quality level, at best.

Same with all the render pipeline stuff you label as production ready now.

With such extremely false marketing you are really loosing A LOT of trust and respect and tarnishing the brand bigtime.

Really, what is going on there?

Maybe actually try to make a proper production project (not just a fancy demo you abandon within two months after showing it) and try to use a few of the many packages from package manager in it and you’d quickly see what kind of totally unacceptable workflow that is when one has to search together which versions of all those packages work together halfway acceptably on each platform and with which renderpipeline and with which external plugins etc etc.
Deploy your project to multiple platforms, in VR and for regular screen. Work in it for 3+ months so you see how with every engine dot upgrade and any of the way too many packages updating in the package manager each time instead of nice imprvements promised you get many new bugs when you try them.

We are paying for you to use a stable reliable engine, not a patchwork of marketing message package manager packages which only work together in random combinations for each platform for random short durations at best until the next update of any of the patchwork pieces breaks 10 new things.

That’s Exactly what every unity power users are feeling, At the start when I was a noob I thought unity is best but slowly when I gained a bit of knowledge about unity and started working on various projects, there is no project where I never damned by weird bugs all the time. It’s getting messy with every new update catching up like windows updates lol

Will the upcoming, new Cardboard Unity SDK will be compatible with the new Unity XR plugin system? Please let me know!

Very disturbing and disappointing.
It reminds me of Adobe a few years ago, which, after embarking on multiple technological paths, failed them drastically a few years later. This seriously undermines the credibility of Unity.
The next time Unity launches a new feature, I will seriously hesitate before offering them serenely to my customers since at best everything changes perpetually for the same techno (which poses a problem in terms of project maintenance), worse, it is abandoned …

Hi Matt, thanks for the detailed response. I am aware that all these areas are being worked on (being a heavy beta tester), but there’s a difference between «enabling Vulkan support» and «Vulkan on Quest actually working in real-world projects with ShaderGraph, Instancing and Texture Arrays» (which is of course just one example). I’m not talking about theoretical support here, but actual stuff working. I’d be happy to give more feedback about that via email, and a glimpse at the XR forums subsection should be enough to see what I’m talking about.
Also, would be great if you could give an answer to (4) – yes, XR Management is partially ready for the new input system (but says in red exclamation marks that the legacy input should be used), but XR Interaction Toolkit totally isn’t, while the pose driver situation is even worse (there’s 3 different ones now, for 2 different input systems).

(I’ll also make forum posts for this, I don’t think this blog format is very suited for discussion.)

Good news the fact that you’re working towards a write one, deploy everywhere solution, but actually now the situation is more confused than ever, with existing plugins from vendors available, but at the same time your XR tools being there… but still in beta. Furthermore, the removal of Vuforia shocks me… it was my to-go tools when developing certain kinds of AR solutions in Unity… it’s a pity it won’t be available anymore!

Vuforia will still very much be available. The mention of removal of Vuforia support from Unity is inaccurate. Our team will have a full response on the Vuforia Dev Portal soon.

Hey Matt, thanks for clarifying the state of XR in Unity. Can you share any information about whether the new OpenVR support is planned to be ready for 2020.1?

Apparently Valve is responsible for that now. So we do not know. They didn’t even bother to provide a joint announcement (Valve and Unity) that would provide clarity and delivery commitments. That is why many people are upset. Unless you are a hobbyist, your business depends on it, and you can’t make production choices with fingers crossed.

What’s wrong with you, people? This post is clearly stated that Unity WILL continue to support OpenVR. Saying literally that. But every comment blames unity for dropping support for OpenVR. Did you try read the post?

Hey Alex, you are a smart person. So read again, and think.

A. Does that mean that Unity 2020.1 is going to work with OpenVR out of the box as it used to?

B. Say you are a VR studio that has invested on Unity as its main technology platform and has planned projects lined up based on OpenVR (either on Steam or Location Based businesses) and business plans of hundreds of thousands or millions, (yours or from clients), the future of your Business, are based on these productions. Plans that in order to work at the quality level required NEED the HDRP improvements for VR that 2020.1 brings.

How are your development plans affected if Valve delays to create a plugin that is fully functional by the time 20.1 comes out? Or in the adverse chance that Valve never manages to create a fully functional plugin for whatever reason.

(There is strong precedent with other technology vendors that fell from official support)

C. As someone asked: How is someone going to create a title that works both for Oculus and SteamVR with the same project using 2020.1? As it is right now in terms of revenues and production costs, the ability to do that is crucial for a small team.

I do not understand all the whining going around in the comments here. First of all, no one forces you to move to 2019.3 and it’s probably a bad idea anyhow until LTS kicks in. OpenVR is still supported and if valve won’t do the job of eventually integrating it to the XR SDK some developers will join forces and do so.

This is actually amazing news. One SDK to rule them all and in the darkness bind them? I will serve any dark lord for this. As for the projects i’m currently working on, they’ll remain at 2018.3 LTS where they belong.

Loosen up FFS.

I am extremely excited about this important progress Unity is making in unifying the fractured VR/AR SDK ecosystem with the XR Platform architecture. We will all benefit from your thoughtful work. As an XR developer we’ve been plagued by incompatible device-specific vendor-specific platform-specific SDK and toolkits. Various other «solutions», both open source and proprietary have serious shortcomings and limited support. Kudos to Unity for moving the industry forward in a positive direction.

Can you explain how one can make a VR game now that supports OpenVR and Oculus with the new system in a single project? That’s my main frustration at the moment.

That is to answer for Vuforia is easy. The engineering CAD company PTC bought Vuforia more than 5 years ago and really tried to leverage it with their CAD software. My company uses PTC software and we looked into Vuforia. PTC doesn’t care about Vuforia for AR gaming that is not their goal. It’s for enterprise. But the related software needed to run Vuforia is/was crazy expensive. We have price quotes to make Vuforia enterprise stuff and it was just way to costly

Hi,
The information on Vuforia no longer being supported in the blog post above is incorrect.
Vuforia Engine supports Unity 2019.3 today and will continue to support upcoming Unity versions in the future.
What is changing is that the Vuforia Engine package will no longer be distributed by Unity, but can be easily obtained from an NPM registry hosted directly by Vuforia/PTC. Check out this article to learn more:
https://library.vuforia.com/content/vuforia-library/en/articles/Solution/vuforia-engine-package-hosting-for-unity.html
Thank you.
Vuforia Engine Support

I feel the same way. This seems like an about-face to just a few years ago when Vuforia was pulled in to the Unity distribution. So now I have to make a choice between using Vuforia (which we have thousands of dollars of development and licensing costs into) and staying updated with Unity (that I pay a monthly fee for).

Why is this happening? Is this just to push your own AR framework? Was there a breakdown in your partnership? I need some answers before I can go back and tell my CEO Why we just wasted thousands of dollars.

«I need some answers before I can go back and tell my CEO Why we just wasted thousands of dollars.»

This is what the average enthusiast, and sadly and more importantly, Unity doesn’t seem to understand and care about.

This is so confusing…
How could Unity think that not showing OpenVR from the supported platforms and the tech stack is a good idea? This announcement is just bad.
OpenVR is one of the most important things for VR games, how Unity could miss that? It’s really exasperating to see Magic Leap on the list and not even OpenVR.

Also, this announcement is contradicting itself:
In the Migration to XR plugins / OpenVR part, it’s written: «Until that plugin is available, built-in support of OpenVR will continue to be functional and available in 2019.3, and we will support our users with any critical fixes.»
And just one sentence after, it’s written: «Note: Built-in support for OpenVR (OpenVR (Desktop)) has been deprecated in 2019.3.*»
Going to asterisk is even more frightening: «*Deprecation means built-in implementations are still available for use in the 2019 TECH stream and will remain in 2019 LTS. However, it is not guaranteed to remain functional as bugs and issues may not be prioritized. Additionally, the packages will be removed in future releases.»
I’m sorry, but at this point, and with all the bugs that are still not fixed with URP, Oculus Quest issues and so on, it really looks like Unity don’t care a lot about VR.

I get that this AR companies is more interesting financially than indie devs, but please Unity, don’t forget that a lot of your client are still indie devs, you reputation as a good engine is going down at high speed, right now I can’t even recommend Unity for a new project anymore. You also hurt your own reputation among players, as we sometimes don’t have the choice but inform them that all this bugs and updates delay are Unity related.

This had to be done 3 years ago. You left us alone with the providers. Although your main goal was multi-platform development, you went the opposite way in VR, it was ridiculous. The part of my job as a VR developer was to eliminate the errors in the VR SDKs offered by the providers and to work properly together. This completely undermined my productivity. I should spend my time to create content with my skills.

I hope a big lesson has been learned from now, and providers are required to make high-quality integrations. Because I’m completely tired of repairing VR SDKs. Please hire more QA person if required. Make sure integrations much better than before. And please provide understandable and detailed documentation about XR Toolkit etc.

Vuforia is no longer supported in 2019.3 and beyond…
I’m now confused with this tool.

It’s not that long since Unity partnership with Vuforia. So we put around 400$ and buy a license, invest time to learn the product. Then the license changed to a monthly fee (just because « The Cloud » you know). Finally, Unity starts to put extra layer of XR on his own, things get messy and now the partnership seems to be over.
So on one side you have Vuforia, a now-expensive SDK no more officially supported by Unity, and on the other side Unity own solution with mixed result and poor feature set.

It’s starting to be difficult to explain to my colleagues and clients that I’m no longer able to carry out certain projects, or that they now have to pay per month and above all see no real change.

I’m getting more and more concerned about the evolution of Unity.

Vuforia will still very much be available. The mention of removal of Vuforia support from Unity is inaccurate. Our team will have a full response on the Vuforia Dev Portal soon.

Just as a hopefully constructive feedback: As a developer and small indie-gamedev CEO (in that order), I care about engineers collaborating to create the best possible solution. For me, a blog posting has value when it addresses the technical issues that I have to deal with and how those are addressed to improve my productivity when I use your engine as a tool to build things I’m excited about (which happen to be VR games).

When I see a blog posting that spends a lot of time elaborating on different levels of partnership, and then the one partner that is by far the leader in the field on many levels is missing from the «official partners», that tells me that the priority is not really finding the best solution but something else.

The smart thing, in my opinion, would be licensing the tech from Valve and integrating it properly into Unity. That would help me solve actual problems that I have and «take the pain out of game development» as Unity once promised.

«Built-in support for Windows MR (Windows Mixed Reality) has been deprecated in 2019.3.* »
«OpenVR is no longer a Unity supported platform in 2019.3 and beyond.»

Horrible news.
Steam is the most important VR platform and WMR is one of the very popular enterprise device families.

You owe a very solid explanation to the VR community supporting Unity and a very good reason why we should not move to a different engine.

This is quite sad. So Unity is again dropping support for a feature in favor of something thats not yet working or even released. And this one especially hurts since Im heavily invested in VR.
If I didn’t have so much time and money sunk in Unity Id be jumping ship about now…

I am jumping asap. Migrating my next project as I type. I do not feel betrayed, I feel sabotaged and if I could, I would sue.

For me, this blog post is incredibly disappointing. The only new piece of information is «yes, we really dropped supporting OpenVR natively as you were all afraid».
Instead, here’s a list of words/topics that this blog post carefully avoids:
– Quest
– Fixed Foveated Rendering¹
– Vulkan
– URP VR²
– HDRP VR³
– New Input System⁴
There have been uncountable discussions, fights, lost man hours and lost money over the last months in relation to these topics, and you really managed to fill an entire blog post not touching them.

¹: releasing on Quest is not practical without FFR. FFR does not work on URP. What are we supposed to do? Stay on the deprecated and much slower built-in pipeline?
²: while URP is out of preview for a comparatively long time, it’s still very broken for VR development (mobile and desktop). When will URP work for VR (yes, including ShaderGraph and Instancing)?
³: will Desktop HDRP VR be out of preview with 2019.3 when HDRP is supposed to be production ready?
⁴: current XR requirements contradict each other (e.g., HDRP Wizard requests deprecated XR settings, XR Interaction Toolkit is only available for the old input system, AR Foundation in some places requires the new system and in others exclusively uses the old). What’s the schedule for reaching a working state again?

I hope that “Universal” support come to reality soon as Unity 2019 and also URP or Post Processing Stack has been a step back in VR reliability.
No need to submit more bug reports – just try Oculus Quest with URP.

When you say «OpenVR is no longer a Unity supported platform in 2019.3 and beyond. Valve is currently developing their OpenVR XR Plugin» does that mean their plugin will work with XR Interaction Toolkit like other Unity supported plugins?

Dropping support for OpenVR is killing me. How are we supposed to
continue developing for multi-platform XR when this type of curveball Is being thrown? I currently have several 2019.3 projects built for OpenVR (some multi-platform) perhaps this move by Unity is premature? I’m
About to kickoff anothe major VR film in 2019.3 + OpenVR and am really feeling burnt at the moment. I should stop now before I seriously go off on a screed.

Same here, and I already have months in pre-production and thousands invested. All thrown in the bin. Just like that because someone had an inspiration that the old system was problematic. This blogpost made my choice easy.

https://www.unrealengine.com/

Some update on Vulkan for Oculus Quest/Go rendering would be great, as well as Vulkan Fixed-Foveated Rendering support for VR (cross platform FFR). Also still clueless as to what is happening with UniversalRP for VR since that is meant to be the new standard for rendering when the built-in renderer is eventually deprecated?

It’s a start… things HAVE been a bit tits up recently so lets hope there’s a strong Universal Pipeline Vulkan future for all of us Tron fanciers.

so official word on OpenVR is what was already stated, that it is no longer a Unity supported platform in 2019.3 and beyond. Okay, can we get a breakdown on WHY?!?! This seems like huge move for Unity to make, and an issue for everyone building for and on Vive/Index hardware, so what’s the reason?

Comments are closed.