本教程适合Unity新手或对Raycast不甚了解的开发者,主要介绍Raycast的用途并绘制出射击游戏的射线轨迹。
最终效果
本课程包括鼠标控制相机旋转、射击物体、显示射线轨迹及准星三个部分,最终实现效果如下:
在讲解实现步骤之前,先来了解Raycast的概念。Raycast可以简单理解为游戏场景中由某点发出的隐形射线,它能返回所有被射线射中的游戏对象的详细信息及RaycastHit结构体,RaycastHit结构体包括该游戏对象的Transform引用和射线与游戏对象交点的坐标等等。这里需要注意的是,只有带有碰撞体的游戏对象才能被射线检测到。
想了解更多关于Raycast及RaycastHit的信息,请点击[阅读原文]进入Unity官方中文社区。
另外要注意的是,在FPS游戏中,射击目标通常都是玩家眼睛朝向的位置,也就是相机正前方的中心点。所以这里瞄准物体并进行碰撞检测的射线并非我们需要绘制的射击轨迹。
实现步骤
1 准备工作
首先点击[阅读原文]进入Unity官方中