Unityでシーン遷移時にBGMを継続して鳴らし続ける方法
12 06, 2013
Unityでシーン遷移時にBGMを続けて再生する方法です.以下のようなコード(Javascript)で実現できます.ほぼ参考サイトからコピペです.
適当なGameObjectをつくる → GameOnjectの名前を「BGM」にリネーム → Audio Sourceコンポーネントをくっつける(設定は何も変えない) → 上記スクリプトをくっつける → インスペクタのスクリプト欄に「Clip」が出てくるので,BGMにしたい音楽ファイルを割り当てる(Sourceの方は放置) → 完了.
C#版の実装も参考サイトに載っています.
参考: http://answers.unity3d.com/questions/11314/audio-or-music-to-continue-playing-between-scene-c.html
参考: http://marupeke296.com/UNI_SND_No2_Trigger.html
#pragma strict
var clip : AudioClip;
var source : AudioSource;
private static var instance : BGM;
public static function GetInstance() : BGM {
return instance;
}
function Awake() {
if (instance != null && instance != this) {
Destroy(this.gameObject);
return;
} else {
instance = this;
}
//次のシーンを読み込むときに、自分自身を破壊しない。
DontDestroyOnLoad(this.gameObject);
}
function Start () {
source = gameObject.GetComponent(AudioSource);
source.clip = clip;
source.loop = true;
source.Play();
}
function Update () {
}
適当なGameObjectをつくる → GameOnjectの名前を「BGM」にリネーム → Audio Sourceコンポーネントをくっつける(設定は何も変えない) → 上記スクリプトをくっつける → インスペクタのスクリプト欄に「Clip」が出てくるので,BGMにしたい音楽ファイルを割り当てる(Sourceの方は放置) → 完了.
C#版の実装も参考サイトに載っています.
参考: http://answers.unity3d.com/questions/11314/audio-or-music-to-continue-playing-between-scene-c.html
参考: http://marupeke296.com/UNI_SND_No2_Trigger.html
スポンサーサイト