UnityVR--小程序11--改进发射--切换枪支

在主角升级后,我们还希望升级武器装备,之前我们按手柄的A键或X键就可以发射子弹,但在游戏场景中给人的感觉就是子弹凭空出现。现在我们增加一个枪的模型,使视觉上子弹能够从枪口发出,并升级手柄的按键功能,可以切换不同装备模型。

修改的脚本为AXButton.cs

 1. 修改手柄:在Hierarchy中找到OVRPlayerController控制器,找到右手手柄RightHandAnchor,在它下面建立一个空节点,命名为Gun,并确保它的本地坐标为(0,0,0)。这个位置是为了放置枪的预制体做准备:

 2. 制作枪的预制体:

  (1)  找到装备的模型,拖入场景

(2)在枪模型之下建立一个空的子节点Point,这个是Bullet发射的位置点

(3)空节点不容易被识别,可以给它添加一个有颜色的标签Tag

(4)将这个Point空节点的位置移动到合适的发射位置

 (5)将它作为预制体,拖到预制体文件夹中

 (6)同上,再制作一个预制体,注意,所有装备的预制体的发射点名字都需要改为Point

(7)场景初始化时,必须有一把默认的枪,因此先选择一个枪的预制体,拖到手柄下的空节点Gun下面:

3. 修改AXButton.cs脚本:

(1)增加变量:在Start()之前增加以下变量的定义,用于加入枪的预制体和判断枪的类型

 (2)Start() 方法中,增加变量的初始赋值,即默认使用Gun1。并且需要找到手柄中的那个空节点Gun,让枪的预制体成为Gun节点的子节点

 (3)在Update()方法中增加以下脚本:

以下:判断并赋值不同类型的枪的预制体

以下:按下手柄的Y按键以切换枪支 

 以下:修改按下A键的脚本,按下X键的脚本是同样的,不再赘述

4.最后,在Unity界面的手柄中,需要分别将两个枪的公共变量,赋值为两个枪的预制体

猜你喜欢

转载自blog.csdn.net/tangjieitc/article/details/126658570