http://book.2cto.com/201410/47222.html
.unitypackage文件是Unity专用的资源包,在Project窗口选择资源,如脚本、模型、声音等任何资源,然后单击右键选择【Export Package】,可以将所选资源导出为.unitypackage格式的包,然后重用到其他Unity工程中。
选择主角飞船游戏体,在菜单栏选择【Component】→【Audio】→【Audio Source】为主角添加一个Audio Source组件,凡是需要发声的游戏体,必须有这个组件。
打开Player.cs 脚本,添加并修改代码如下:
// 声音
public AudioClip m_shootClip;
// 声音源
protected AudioSource m_audio;
// 爆炸特效
public Transform m_explosionFX;
// Use this for initialization
void Start () {
m_transform = this.transform;
m_audio = this.audio;
}
m_shootClip属性是射击的声音,在后面会将它和音效文件关联。
m_audio属性是声音源组件,用于播放声音,在Start函数中将其指向实际的声音源组件。
在Player脚本的Update函数中添加播放声音的代码:
if ( Input.GetKey( KeyCode.Space ) || Input.GetMouseButton(0) )
{
Instantiate( m_rocket, m_transform.position, m_transform.rotation );
// 播放射击声音
m_audio.PlayOneShot(m_shootClip);
}
在Player脚本的OnTriggerEnter函数中添加创建爆炸特效的代码:
if (m_life <= 0)
{
// 爆炸特效
Instantiate(m_explosionFX, m_transform.position, Quaternion.identity);
Destroy(this.gameObject);
}
选择主角游戏体,在Project窗口的FX文件夹下分别找到shoot.WAV音效文件和Explosion.prefab爆炸特效文件,在Player组件中将其分别与m_shootClip和m_explosionFX属性关联,如图2-33所示。
选择爆炸特效的Prefab,为其添加一个Audio Source组件,然后在FX文件夹下找到explosion.WAV文件,将其指定到Audio Source的Audio Clip中,因为默认Play On Awake选项是处于选中状态,所以当爆炸特效被实例化后,会自动播放爆炸的声音,如图2-34所示。