Unity3D--学习太空射击游戏制做(四)

步骤七:添加声音和特效(射击声音和爆炸效果)html

01:在Project窗口单机右键,选择Import Package->Custome Package,而后到资源文件目录packages浏览unity包文件,选择ShootingFX.unitypackage,将其打开,选择Import导入到当前工程中,.unitypackage类型的文件是unity的专用资源包,在Project窗口选择资源,如脚本、模型、声音等而后右键选择Export Package,能够将本身的东西处处为.unitypackage类型的包,能够屡次在不一样的项目中使用。ide

02:选择主角的飞船游戏体,在菜单栏选择Component->Audio->Audio Source为主角添加一个Audio Source组件,凡是须要发生的游戏体,必须有这个组件。而后在Player.cs脚本中添加以下代码:函数

//射击的声音 后面将和音效文件关联
    public AudioClip m_shootClip;
    //声音源组件 用于播放声音 
    protected AudioSource m_audio;
    //爆炸特效
    public Transform m_explosionFX;
 void Start()
    {
        m_transform = this.transform;
        m_audio = this.audio; //将声音源组件指向实际的声音源组件
    }
void Update()
{
  ......
         if (Input.GetKey(KeyCode.Space) || Input.GetMouseButton(0))
            {
                //Instantiate函数动态的建立子弹游戏体 发射子弹
                Instantiate(m_rocket, m_transform.position, m_transform.rotation);

                //播放声音
                m_audio.PlayOneShot(m_shootClip);
            }
}
void OnTriggerEnter(Collider other)
    {
        if (other.tag.CompareTo("PlayerRocket") != 0)//若是主角与非己方子弹相撞
        {
            m_life -= 1;
            if (m_life <= 0)
            {
                //爆炸特效
                Instantiate(m_explosionFX, m_transform.position, Quaternion.identity);

                Destroy(this.gameObject);
            }
        }
    }

  03:选择Player游戏体,在Project窗口的FX文件夹下分别找到shoot.WAV音效文件和Explosion.prefab爆炸特效文件,在Player组件中分别与m_ShootClip和m_ExplosionFX属性关联,如图:post

选择爆炸特效的Prefab,为其添加一个Audio Source组件,而后在FX文件夹下找到explosion.WAV文件,将其指定到Audio Source组件,由于默认的Play On Awake选项是出于选中状态的,因此当爆炸特效被实例化后,会自动播放爆炸的声音。this

而后为Enemy游戏体添加爆炸的特效。code

步骤八:添加敌人生成器(生成无限敌人)orm

在当前的游戏中,只是随意放了几个敌人,消灭后就没有了,咱们须要建立多个敌人,使游戏能够一直玩下去。htm

01:blog

步骤九:添加游戏管理器游戏

如今的游戏中还缺乏显示游戏信息的UI和游戏失败的状态提示,咱们建立一个游戏管理器来处理这些东西。

 

转载于:https://www.cnblogs.com/yk123/p/4907981.html