【Unity + Google Cardboard】 VR環境配置

ahuihui1227發表於2018-05-10

翻譯一下google cardboard接unity的開發文件

前面

一直想嘗試開發一個VR遊戲試試……
Unity的官方文件在這裡
一開始看的時候分不清各種VR裝置,如果你也是的話——比如只有一個能塞進手機的帶凸透鏡的殼子,就用google cardboard這個SDK。因為其他的都有對應裝置支援。

關於硬體,這裡是谷歌cardboard官網。
這個網站有製作過程的中文介紹。
如果嫌麻煩的話某寶上應該有很多類似的VR裝置。最好配一個手柄……

然後我對著下面這個嘗試了一下一個example程式
這裡的操作有單機、雙擊、拖動畫面等,一個正常的藍芽連手機的遊戲手柄應該就可以。

這個視訊覆蓋了這裡要介紹的部分,一些內容可以結合下面的翻譯。

其他資料:
https://blog.csdn.net/suhao15330369126/article/details/53646227
一個比較詳細的介紹。

正文

翻譯的是官網上關於Unity開發的部分。可能部分忽略Daydream相關的。

設定你的開發環境

硬體要求:
- Daydream白日夢:你需要一個Daydream電話和一個Daydream View
- Cardboard:您需要一臺執行Android 4.4’Kit Kat’(API級別19)或更高版本的Android裝置以及一個Cardboard檢視器。

譯註,上述應該是或的關係而不是都必須

軟體要求:
- 安裝Unity:
推薦版本:LTS版本2017.4或更新版本
最低版本:5.6
確保在安裝過程中選擇了Android構建支援元件

Android構建支援元件

確保您的環境已針對Android開發進行配置。
請參閱Android SDK / NDK設定的Unity指南。

下載適用於Unity的Google VR SDK

釋出頁面下載最新的GoogleVRForUnity _ *。unitypackage。

SDK包含以下Daydream和Cardboard演示場景:

場景描述
HelloVR簡單的VR遊戲,您可以在其中找到並選擇幾何形狀
KeyboardDemo Daydream在UI畫布上顯示鍵盤輸入
PermissionsDemo Daydream顯示正確的使用者許可權請求流程
VideoDemo顯示通過播放或遠端流式傳輸使用立體聲或360°視訊的各種方式

建立一個新的Unity專案並匯入Google VR Unity軟體包

  1. 開啟Unity並建立一個新的3D專案。
  2. 選擇Assets > Import Package > Custom Package.
  3. 選擇您下載的GoogleVRForUnity _ .unitypackage*檔案。在 Importing Package對話方塊中,單擊Import
    如果提示,請接受任何API升級。

配置構建設定和播放器設定

  1. 選擇File > Build Settings.
  2. 選擇Android並點選Switch Platform
  3. Build Settings視窗中,點選Player Settings

配置以下Player Settings

SettingValue
Player Settings > Other Settings > Virtual Reality SupportedEnabled
Player Settings > Other Settings > SDKs單擊+並且選擇 Daydream or Cardboard.
Player Settings > Android > XR Settings > Virtual Reality SDKs > Daydream > Positional Head Tracking單擊+並且選擇Disabled, Supported, or Required.
Player Settings > Other Settings > Minimum API LevelDaydream: Android 7.0 ‘Nougat’ (API level 24) or higher. Cardboard: Android 4.4 ‘Kit Kat’ (API level 19) higher

在Unity中預覽演示場景

  1. 在Unity Project視窗中,轉至Assets > Google VR>演示>場景。開啟GVRDemo場景。
  2. 按下Play按鈕。在遊戲檢視中,您應該看到渲染的演示場景。
    請注意,雖然這裡的場景是單色的,但手機上的渲染將是立體的。 Unity可能會將此警告訊息顯示為提醒:
    編輯器模式不支援VRDevice白日夢。請在目標裝置上執行。

  3. 使用模擬控制元件與場景進行互動:

型別模擬操作該怎麼做
頭部移動轉動頭部按住Alt +移動滑鼠
傾斜您的視角按住Ctrl +移動滑鼠
Cardboard輸入按鈕按下單擊遊戲檢視中的任意位置
Daydream輸入更改控制器方向按住Shift +移動滑鼠
點選觸控板按鈕按住Shift鍵並單擊左側
點選應用按鈕按住Shift鍵並點選右側
單擊主頁按鈕以重新啟動按住Shift並單擊中鍵
觸控觸控板。 要檢視控制器,請將視角向下傾斜按住Ctrl
更改觸控板上的觸控位置。 要檢視控制器,請向下傾斜檢視按住Ctrl +移動滑鼠

4. Daydream:(可選)在編輯器中,您可以在播放模式下使用實際的Daydream控制器,而不是模擬控制元件。為此,請使用即時預覽。

準備您的裝置

也就是你的安卓手機

要準備您支援的裝置,請啟用開發人員選項和USB除錯

在您的裝置上構建並執行演示場景

  1. 使用USB將手機連線到電腦。
  2. 選擇File> Build and Run。
    Unity將您的專案構建到Android APK中,並將其安裝到裝置上並啟動它。
  3. 將手機放入您的檢視器並嘗試演示。

會檢測手機是橫屏還是豎屏,橫屏情況下才會開始

設定Unity支援

這個是這一篇文件的一部分,感覺比較重要所以拖了過來(???)

要在您的應用中包含控制器支援,請將以下預製件(prefabs)新增到您的場景中:

預製名稱場景中的位置說明
GvrControllerMain場景中的任何地方主控制器預製,負責管理控制器狀態。包含GvrControllerInput元件,它是控制器API的主要入口點。
GvrControllerPointer!!在主攝像機邊上Daydream控制器預製件。提供控制器,鐳射和光罩視覺化,並作為工具提示和自定義視覺化的附加點。
GvrEventSystem場景中的任何地方直接替換Unity的預製事件系統。包含GvrPointerInputModule元件而不是Unity的StandaloneInputModule。讓Daydream控制器使用Unity事件系統。
GvrEditorEmulator場景中的任何位置編輯播放模式下的相機控制器。讓您用滑鼠或觸控板模擬使用者的頭部運動。
GvrInstantPreviewMain場景中的任何位置編輯器播放模式即時預覽控制器。讓您可以將立體聲預覽流式傳輸至手機,並在編輯器中使用實際的Daydream控制器。

最終的場景將如下所示:
佈局

如果不做這樣的操作的話匯出的apk在Android執行還是正常的,但是沒有辦法在Unity內預覽模擬事件。

轉載於:https://www.cnblogs.com/BirdCage/p/9974007.html

相關文章