Win10系統使用Unity5和Oculus runtime0.8.0開發Oculus Rift DK2環境配置最終解決方案

最近將開發用操作系統升級到Win10,爲了兼容Steam平臺,同步發佈htc Vive版本的遊戲demo,將Unity也升級到5.4,突然發現之前一直正常的Oculus Rift DK2無法正常顯示了。主要現象是:

1. Unity VR選項設置爲OpenVR後,啓動VR頭盔只顯示一個白色空場景,但是位置追蹤設備是確正常的。

2. Unity VR選項設置爲Oculus後,VR頭盔沒有任何響應。

懷疑是系統從win7升級到win10的原因,在各種折騰無果後,重新安裝乾淨的win10系統,再安裝Oculus runtime0.8.0,發現runtime自帶的demo也沒法啓動了,提示錯誤“HMD powered off, check HDMI connection”。

occulus configuration utility

到此,懷疑runtime的問題,在手動殺死OVRServer_x64和OVRServiceLauncher兩個服務後,手動啓動OVRServer_x64服務,發現啓動報錯信息,提示缺失OculusAppFramework.dll,而OculusAppFramework.dll在Oculus runtime0.8.0以後的版本纔會有,而Oculus runtime0.8.0以後的版本都必須要求在線安裝,以國內網絡條件大部分人是無法實現的。

在查詢相關資料後發現,其實上win10並不兼容Oculus runtime0.8.0,需要升級到最新oculus runtime 1.3纔可以,而由於網絡的原因,沒有找到辦法安裝最新的Oculus Home,幸好國內有個公司弄出了一個ModuoVR,用於離線安裝Oculus Home,在成功下載ModuoVR安裝後,發現oculus用於驗證的ip也被封了,修改host的方式也無效了,從而導致ModuoVR並不能正常安裝最新的oculus runtime。不過ModuoVR倒是把OculusAppFramework.dll一同打包了,經過實驗,發現將OculusAppFramework.dll拷貝到OVRServer_x64,執行如下批處理,可以正常啓動OculusConfigUtil。

taskkill /f /im  OculusConfigUtil.exe

taskkill /f /im  OVRServer_x64.exe

net stop OVRService

"C:\program files (x86)\Oculus\Tools\DirectDisplayConfig.exe" on

sc delete OVRService

"C:\program files (x86)\Oculus\Service\OVRServiceLauncher.exe" -install -start

start ""  "C:\program files (x86)\Oculus\Tools\OculusConfigUtil.exe"

至此,Oculus的runtime0 .8.0終於在win10上順利啓動,但是Unity的開發環境還是無法啓動Oculus Rift DK2,在查詢Unity 5各版本發行說明發現,從5.3.5開始,Unity已經升級了內置的Oculus runtime,不再兼容runtime0 .8.0,經過實驗發現將Unity降至5.3.3和5.3.4均可以順利啓動頭盔。

UNITY 5.3.5

  • VR: Updated Oculus API and plugin to version 1.3.2. Downloading 1.3.2 OVRPlugin from Oculus is no longer necessary.

最終Oculus Rift DK2 開發環境配置爲:

操作系統:Win10

Unity版本:Unity 5.3.4

Oculus runtime: 0.8.0 + OculusAppFramework.dll

整個過程走了不少彎路,希望能夠幫到一起開發VR的同學們。



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章