OculusQuest + Unity 2019.3以降でのVulkan APIについて

Unity 2019.3以降でのビルド時に以下エラーがでる

f:id:gamaspecial:20200524013153p:plain

BuildFailedException: The Vulkan Graphics API does not support XR in your configuration. To use Vulkan, you must use Unity 2019.3 or newer, and the XR Plugin Management.
OVRGradleGeneration.OnPreprocessBuild (UnityEditor.Build.Reporting.BuildReport report) (at Assets/Oculus/VR/Editor/OVRGradleGeneration.cs:104)
UnityEditor.Build.BuildPipelineInterfaces+<>c__DisplayClass15_0.<OnBuildPreProcess>b__1 (UnityEditor.Build.IPreprocessBuildWithReport bpp) (at <cf7d2c2e83f749e8943578126f9eff4b>:0)
UnityEditor.Build.BuildPipelineInterfaces.InvokeCallbackInterfacesPair[T1,T2] (System.Collections.Generic.List`1[T] oneInterfaces, System.Action`1[T] invocationOne, System.Collections.Generic.List`1[T] twoInterfaces, System.Action`1[T] invocationTwo, System.Boolean exitOnFailure) (at <cf7d2c2e83f749e8943578126f9eff4b>:0)
UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr)

Vulkan Graphics APIは使えないよ的なことを言われている。

まず解決策からですが、
「build setting」->「Player Settings」->「Player」->「Other Settings」
からGraphics Apisの優先度を入れ替える。

f:id:gamaspecial:20200525005248p:plain

↓ こうする

f:id:gamaspecial:20200525005520p:plain

これでエラーなくなってビルドできるわけなんですが、そもそも「Vulkan Graphics API」ってなんなわけ?っていう
これはOculusの開発者ブログにそれっぽいのがあった

developer.oculus.com

よんでくと、
Vulkan APIってのはUnity 2019.3から"実験的に"導入されたものらしくOpenGL ESが従来のもの、
うんぬんかんぬん(初心者にはよくわからんが)パフォーマンスとかその他もろもろでVulkanのほうが優れている?とのこと

んでなんで実験的かというお話は、
パフォーマンスの向上がのぞめるが、現在リリースされている一部アプリではOpenGLよりVulkanのほうがパフォーマンスが落ちるケースがあり
そのあたりのフィードバックをあつめてるということで、いまだ"実験的"ということらしいですね
またこれらと、その他既知のバグが解消されるにあたって今後は、「Vulkan API」が推奨されるとのことなので、
上記で書いたOpenGLの優先度をあげてビルドする解決策ではなくVulkanでのビルドの解決策をさがしてみる
こちらもさっきのブログに書いてあったので↓にまとめる。

てなわけでVulkanの優先度をもどしまして、

f:id:gamaspecial:20200525011258p:plain

Project Setting -> XR Plugin ManagementからXR pluginをインストールする

f:id:gamaspecial:20200525011450p:plain

Androidタブ「□Oculus」からOculus XR Pluginをインストール
(これはなかなか時間がかかった

f:id:gamaspecial:20200525011935p:plain

これで、おっけー?かな、、、

f:id:gamaspecial:20200525013053p:plain

ビルドしてみる

f:id:gamaspecial:20200525013238p:plain

ビルドできた。
とおもってたんだけど、Graphics API確認してみると、なぜかValkun APIきえてるじゃあないですか、
というわけで、Valukanを追加して再度ビルドしてみるよ

f:id:gamaspecial:20200525013849p:plain

f:id:gamaspecial:20200525014000p:plainf:id:gamaspecial:20200525014046p:plain

いちおうビルドできた

f:id:gamaspecial:20200525014310p:plain

とりあえずこれからはValukanでためしていこうかとおもったぞと

それとその他注意点として、 OculusGoはValukanサポート外だとのこと、残念ね