Unity关于Oculus Quest2 基于XR Interaction Toolkit 基础开发 003-抓取功能-制作一个VR保龄球游戏

学习目标:

制作一个VR保龄球游戏

学习内容:

1.创建一个Plane作为地板
2.创建XR Origin
3.手柄操作方式更改
4.创建保龄球和保龄球底座(Socket)
5.完善场景和玩法
6.打包测试


学习时间:

2022.2.15

学习产出:

如果有哪里讲的不够清楚,或者哪里讲错了,欢迎评论或者私信,大家一起成长!!!

1.创建一个Plane作为地板

2.创建XR Origin

这个就相当于是玩家
请添加图片描述

3.手柄操作方式更改

我们打开XR Origin目录,找到左手或者右手控制器
由于我们默认创建的XR Origin的手柄操作方式是使用射线
在这里插入图片描述
所以,我们在需要抓取保龄球的手柄上,更改操作方式
在这里,我们选择去修改右手手柄的操作方式
我们删除前面图片中,下面三个组件
然后我们添加XR Direct Interactor
添加Sphere Collider碰撞体,记得勾选Trigger触发器
在这里插入图片描述
为了方便显示我们的手柄,我们将右手控制器下面创建一个球,同时记得去除它的Collider
在这里插入图片描述
在这里插入图片描述
到这里为止,我们已经配置好了右手手柄的操作方式

4.创建保龄球和保龄球底座(Socket)

首先我们创建一个球
在这里插入图片描述
我们为其添加组件 Rigidbody和XR GrabInteractable
XR GrabInteractable就是赋予它可以抓取的组件
在这里插入图片描述
到此为止,我们就创建好了保龄球。如果你现在打包测试,你可以发现,我们可以通过手柄控制去抓起我们的保龄球了,同时也可以扔出去了。

但是,由于保龄球是个球体,不固定,会滚动
所以我们在这里做个底座(Socket)
我们可以也创建一个球,然后去修改它的scale,让它看起来像一个底座
这里记得我们的Collider是Trigger,如果不勾选的话,就会产生碰撞
在这里插入图片描述
我们现在将保龄球和底座放在一起,发现一运行项目,保龄球就会被底座吸附
在这里插入图片描述

5.完善场景和玩法

我们搭建如下所示的场景
在这里插入图片描述
其中有两个 球和底座
并且旁边Canvas有两个Button,其点击事件特别简单
重新开始游戏就是Reload场景
重新获取保龄球,就是重新实例化一个保龄球

游戏玩法就是右手抓取保龄球,然后丢出去的时候,松开手柄按键,击落全部方块

6.打包测试

猜你喜欢

转载自blog.csdn.net/m0_48781656/article/details/122919251