本系列文章是根据官方视频教程而写下的学习笔记,原官方视频教程网址:https://unity3d.com/cn/learn/tutorials/s/tanks-tutorial
系列其他笔记传送门
Unity官方教程《Tanks》学习笔记(一)
Unity官方教程《Tanks》学习笔记(三)
Unity官方教程《Tanks》学习笔记(四)
Unity官方教程《Tanks》学习笔记(五)
一、创建坦克以及控制坦克
首先,在Models文件夹内找到Tank这个model,把它拖拽到Hierarchy内,我们在Tank的inspector视图中,对其层级进行修改,选择Players,并仅对当前对象修改。如下图所示:
接着,我们选中Hierarchy中的Tank,为其添加若干个Component,分别是:Rigidbody、Box Collider、Audio Source、Audio Source,并对这些部件进行设置如下:
然后,我们把配置好的Tank从Hierarchy拖拽到Prefabs文件夹下,让它成为一个预制件,这样以后我们可以重复利用该Tank,而不用每次都重新配置。然后保存当前场景。
因为整个游戏场景是在沙漠中的,所以坦克的行驶会有沙尘滚滚的效果,所以我们需要添加这一效果。在Prefabs文件夹内,把DustTrail预制件拖拽到Hierarchy下的Tank内,让其成为Tank的子对象,然后复制粘贴DustTrail,并分别重命名为LeftDustTrail和RightDustTrail,根据下面的官方教程,把两个DustTrail的position进行调节:
设置完毕后,接下来就是对Tank的移动脚本进行设置。在/Assets/Scripts/Tank文件夹内,找到TankMoveMent.cs文件,并把它拖拽到Hierarchy下的Tank内。我们打开并编辑该脚本,把里面的注释符号去掉,并添加逻辑如下:
using UnityEngine;
public class TankMovement : MonoBehaviour
{
public int m_PlayerNumber = 1; //游戏者的序号
public float m_Speed = 12f; //坦克移动速度
public float m_TurnSpeed = 180f; //坦克转向的角速度
public AudioSource m_MovementAudio;
public AudioClip m_EngineIdling; //静止的音效
public AudioClip m_EngineDriving; //移动的音效
public float m_PitchRange = 0.2f;