1. 程式人生 > >【Unity3D】分享一個Uniy3d開發VR程式的流程

【Unity3D】分享一個Uniy3d開發VR程式的流程

一、前言

最近做VR專案比較多,也學習了很多的東西,現在把開發的流程,已經用到的技術以及軟體總結一下,分享出來供大家參考,本文內容比較基礎,有什麼不對的地方,希望大家能指正出來。

二、裝置

先帶大家認識一下VR裝置吧,現在VR/AR裝置非常的多,對於想要進行VR/AR開發的開發者真實眼花繚亂,今天就給大家簡單總結一下VR/AR裝置。

目前的VR/AR裝置按照硬體形態可以分為三大類:
主機VR頭顯、手機VR眼鏡和VR一體機
具體的引數介紹就參考我VR裝置盤點這篇文章吧。

三、SteamVR

這個是電腦開發VR的基礎,可以直接在Steam裡面搜尋SteamVR(庫-工具),然後下載安裝就行了
在這之前記得把VR裝置都連線好,我用的是HTC Vive,就用HTC VIVE為例吧。

在這裡插入圖片描述
線都連線好,然後兩個定位器定位到正確的位置
開啟SteamVR,然後進行房間設定,設定完成後就可以愉快的開發了。

四、正式開始

下載SteamVR外掛

在Unity商店中,搜尋SteamVR,找那個免費的安裝就行了
在這裡插入圖片描述

在這裡插入圖片描述

設定"[CameraRig]"的位置

[CameraRig]相當於VR在專案中攝像機的位置,也就是人能看到的位置
在這裡插入圖片描述
在這裡插入圖片描述
在這裡插入圖片描述

下載VRTK外掛

連結:https://pan.baidu.com/s/1IdHcPknTZHRavg7YhvZWjA
提取碼:kl2f
也可以直接在商店中搜索VRTK,但是商店裡面這個版本沒有用過,我還是用的老版本的
在這裡插入圖片描述
在這裡插入圖片描述
設定一下VRTK的引數
在這裡插入圖片描述

VRTK自帶的一些DEMO也可以學習一下,很全面
在這裡插入圖片描述

現在就可以用手柄瞬移了

在這裡插入圖片描述

手柄事件

1.手柄按鍵

在這裡插入圖片描述
1 - 選單鍵
2 - 圓盤左
3 - 圓盤上
4 - 圓盤右
5 - 圓盤下
6 - 系統鍵(按下後手柄斷開連線,再次按下手柄再次連線上)
7 - 扳機鍵
8 - 握持鍵
9 - 觸控板鍵

2.圓盤觸控事件

在這裡插入圖片描述

4.觸控板軸的獲取

在這裡插入圖片描述
在這裡插入圖片描述
通過以上兩種方式獲取的VRControllerState_t,獲取觸控板的軸
x = state.rAxis0.x
y = state.rAxis0.y

5.手柄按鍵事件

通過Device.GetPressDown / GetPressUp / GetPress獲取按鍵事件
Press是按壓事件
通過Device.GetTouchDown / GetTouchUp / GetTouch獲取按鍵事件
Touch是觸控事件
在這裡插入圖片描述

6.手柄自帶API

在這裡插入圖片描述

四、後言

本文章只是介紹了Unity3d開發VR程式的一般流程,當然也是最簡單的流程,主要是講的一些前期開發的準備,更像是一個開發入門的教程。最後的API介紹也是最初級的事件演示,到底在專案中想要達到什麼樣的效果,也是要靠大家自己的想象力去開發了。