zoukankan      html  css  js  c++  java
  • Unity3D--学习太空射击游戏制作(四)

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

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

    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属性关联,如图:

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

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

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

    在当前的游戏中,只是随意放了几个敌人,消灭后就没有了,我们需要创建多个敌人,使游戏可以一直玩下去。

    01:

    步骤九:添加游戏管理器

    现在的游戏中还缺少显示游戏信息的UI和游戏失败的状态提示,我们创建一个游戏管理器来处理这些东西。

  • 相关阅读:
    【读书笔记】组合计数中的行列式方法 基础
    【读书笔记】有序分拆和无序分拆的结论速览
    三种常见的卷积概述(线性卷积周期卷积圆周卷积)以及重叠保留法重叠相加法
    大会COOKIE与session
    JVM监测&工具[整理中](五)
    谷歌浏览器启动参数
    Maven的配置文件pom.xml
    classLoader卸载与jvm热部署
    在Windows Server 2008R2中安装配置SMTP服务
    Could not start the MS DTC Transaction Manager
  • 原文地址:https://www.cnblogs.com/yk123/p/4907981.html
Copyright © 2011-2022 走看看