fc2ブログ

Unityでシーン遷移時にBGMを継続して鳴らし続ける方法

12 06, 2013
Unityでシーン遷移時にBGMを続けて再生する方法です.以下のようなコード(Javascript)で実現できます.ほぼ参考サイトからコピペです.


#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
スポンサーサイト



0 CommentsPosted in Unity
0 Comments
Leave a comment
管理者にだけ表示を許可する
0 Trackbacks
Top
プロフィール

津田沼

Author:津田沼

学生です。ドラムとDTMをやっていますが、多分向いていません。Macを使っています。好きなお笑い芸人はさまぁ~ずです。

最新記事
最新コメント
最新トラックバック
月別アーカイブ
カテゴリ
Ninjaアクセス解析