結合 Animation 和AudioSource組件,使得 3D的實體 播放動畫,並且 播放聲音。
當含有AudioSource組件的物體的AudioSource組件的Avtive爲false,則不播放。
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class CubeJump : MonoBehaviour {
/// <summary>
/// 播放聲音 的音效 的AudioSource組件
/// </summary>
[SerializeField]
private AudioSource audioSource;
// Use this for initialization
void Start () {
if (audioSource == null)
{
audioSource = this.GetComponent<AudioSource>();
}//
}
/// <summary>
/// 播放動畫並且播放聲音
/// </summary>
private void Play3DSound()//私有或者公有,都可以
{
if (audioSource != null)
{
audioSource.Play();
}//
}//
}
如果插上耳機,音頻文件是可以正常播放的,那麼 隨着 場景的 播放,當方塊開始向上跳動 的時候,就會 播放一次音頻。
注意:
1.CubeJump實體的AudioSource組件的Loop不勾選,則音頻播放一次,如果Loop勾選,則循環播放。
2.Play3DSound函數是CubeJump.cs文件的內容,而AnimationEvent選擇調用 Play3DSound函數,是因爲 CubeJump組件和Animator組件掛載在同一個 實體 上面,如果分別在不同的實體上,那麼AnimationEvent就無法選擇Play3DSound函數。
3.