【3Dゲームエンジン】Unity質問スレッド26 [無断転載禁止]c5ch.net [無断転載禁止]©5ch.net
■ このスレッドは過去ログ倉庫に格納されています
0588名前は開発中のものです。
2016/10/03(月) 16:16:35.95ID:tU0CswWL>>583
クラス宣言に[RequireComponent(typeof(AudioSource))]アトリビュートを付けてAudioSourceが存在することを保証しておく
インスタンス変数に以下の2つを宣言しておく
public List<AudioClip> playList;
private AudioSource audioSource;
※ playListは配列でもいいがアクセス回数が少なく、スクリプトからBGMの追加削除をしたいケースを考慮してリストにしとく
適宜playListにAudioSourceを追加、インスペクタからでもスクリプトからでもおk
AwakeでGetComponent<AudioSource>()してaudioSourceに代入
面倒になったので以下ソース
public void PlayRandom(){
if(playList.Count >0){
//本当はaudioSourceの状態チェックとかclipのnullチェックが必要だが面倒なので割愛
audioSource.clip = playList[Random.Range(playList.Count)];
audioSource.Play();
}
}
あとは再生したいタイミングでPlayRandomを呼べばおk
■ このスレッドは過去ログ倉庫に格納されています