unity开发HTML5 unity开发vr需要哪些内容

预备

unity Editor我使用的版本是2019.4LTS,建议使用这一个版本的编辑器,2020版的似乎不再内置openVR了。

另外需要准备一个VR headset,我使用的是Oculus quest2,通过Oculus Link连接的电脑

在unity编辑器中,Edit ->Project Settings -> Player -> XR(有些在other settings),把Virtual Reality Supported 选中

unity开发HTML5 unity开发vr需要哪些内容_vr

引入VRTK

首先,在unity的左上角,点击Window -> Package Manager 一直向下滑找到XR Legacy Input Helpers,点击安装

unity开发HTML5 unity开发vr需要哪些内容_oculus_02

进入 tilia的网站,在创建的unity项目中,打开项目文件夹。在Project视图中,进入Packages,右键选中show in explorer,打开manifest(可以使用文本打开)

unity开发HTML5 unity开发vr需要哪些内容_vr_03

在tilia网站中,将红线的代码复制到manifest文件中的'dependencies'上,

unity开发HTML5 unity开发vr需要哪些内容_unity开发HTML5_04

unity开发HTML5 unity开发vr需要哪些内容_oculus_05

复制完成后保存即可。

设置Camera和Track

在Tilia网站中,复制Track AliasUnity XR,复制的代码放入manifest的'dependencies'之内,保存之后unity编辑器会自动加载所有的包。

tips: 可以在Window -> Package Manager看到所有被导入的包

在Project视图,找到CameraRigs UnityXR,点击Runtime -> Perfabs,把CameraRigs.UnityXR拖进项目中,因为CameraRigs.UnityXR自带摄像头,所以需要将项目原有的main camera删除掉。

同样的方式,把TrackAlias拖进项目中。

然后查看TrackAlias的Inspector,我们需要去跟踪UnityXR这个摄像头,所以找到Camera Rigs的Elements属性,size填1(我的项目中有两个摄像头所以填了2,不用太在意)然后将UnityXR拖进Element中。

unity开发HTML5 unity开发vr需要哪些内容_unity3d_06

设置双手

进入Tilia网站,复制Unity Input Manager进项目。回到unity中会弹出一个窗口,点击 add input definitions即可。

进入图示的路径,找到ControllerMappings,因为我使用的是quest2设备,所以我将oculus.TouchLeftController(/RightController)两个预制体拖进了项目中。

使用OpenVR应该都是可以的。

unity开发HTML5 unity开发vr需要哪些内容_vr_07

随后,在Tilia中, 找到Interactions下的Interactables,将此包引入项目。

找到刚刚引入的包,到如图的路径下

unity开发HTML5 unity开发vr需要哪些内容_unity开发HTML5_08

这个预制体我们想让它成为我们的左右手,所以我们可以设置这个预制体成为alias,

在层级视图中,打开CameraRig.TrackedAlias ->Aliases 找到LeftControllerAlias和RightControllerAlias,分别拖入一个Intoractions.Interactor.perfab进去,可以给预制体重命名,用来区分一下,left,right之类的。

unity开发HTML5 unity开发vr需要哪些内容_vr_09

在Interactor的inspector下,找到Interactor Settings,设置Velocity Tracker属性就是他们的ControllerAlias(左右两只手都一样设置),Grab Action属性表示设置抓取动作的按键,我们在层级视图中打开Input.UnityInputManager.left/right两个预制体(名字太长了,知道哪两个对象就行),在InputActions -> Left/RightGrip ->Left/RightGrip_Press,将这个对象拖进Interactor Settings的Grab Action属性。

unity开发HTML5 unity开发vr需要哪些内容_unity开发HTML5_10

将对象设置成可互动对象

选中想要变成可互动对象的预制体,点击左上角window -> Tilia ->Interactions -> Interactable Creator,然后会弹出一个对话框,点击Convert to Interactable即可。随后,该对象即会成为可互动对象,拥有很多属性。但是我们不需要改变特别多的属性

看到对象的inspector视窗,找到Primary Action Settings 和 Secondary Action Settings,Primary属性是设置物体第一次抓住会发生什么事情,Secondary设置的是当你第一次抓住之后,再用另一个Controller抓住这个物体会发生什么。

unity开发HTML5 unity开发vr需要哪些内容_ci_11

根据图示设置属性即可。Grab Offset属性如果设置为Precision Point,那么当你抓住这个物体时,会以确切的位置显示。

至此,一个简单的可互动场景应该算是建立好了。

点击play,进入游戏模式,戴上HeadSet,然后Expolor~

可能的问题

如果出现了无法抓取物体,可以查看一下是否对Object设置了碰撞体。

             

免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删

QR Code
微信扫一扫,欢迎咨询~

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 155-2731-8020
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

手机不正确

公司不为空