2014年12月03日

ゲームのアップグレード (35) | 音を付ける!実装編

じゃあ今回はようやく実装編!


まずはデータのインポート
もし AssetStore から音源データをインポートしていれば関係ないけど、どこか他の場所からデータを持って来た時の対応です。
ま、特に怖がる必要は無くて、ただドラッグ&ドロップなんですけどね。

じゃあ前回、こちらの小森平の使い方 からダウンロードさせて貰った音源をインポートしますね。

単純に、ファインダーのファイルをドラッグして、Unityのプロジェクト内にドロップ!
Screen Shot 2014-12-02 at 12.37.25 AM.png
事前にコピー先のUnityの Project フォルダを選択
今回は、emergency_signal.mp3 をドラッグ。
DragandDrop2.png
そしてドロップ!

Imported2.png
これでインポートは完了!

さて、ホントにこれだけなんだけど、もうちょっと各音源データに、オプションが指定可能なんですよね。
クリップを選択状態にして、Inspector ビューをチェック!!
Options2.png
ここで、データの保存場所、方法、圧縮率なんかも設定可能。
今回のデータはHUDからの警告音なんで、3D Sound のチェックは外して、サンプリングレートも少し下げちゃいますね。
MusicClipOptions.png
設定変更後、"Apply" ボタンをクリックして、データを更新!
これでデータの準備は完了ね。


念のため AudioListener の確認
さ、実装前に一つだけ確認。
チュートリアルで言ってたけど、ゲーム中の"耳"にあたる、"AudioListener" コンポーネントの確認。
多分、元々ある Camera の GameObject にくっ付いてるとおもうんだけど、カメラを追加したら、複数存在してるかも。
エラーか警告が出るはずなんで、みんな放置はしてないと思うんだけど、カメラを追加したりしたら、ちゃんと正しい"耳"の位置を残して、他は削除しましょうね。
AudioListner2.png


Unity で効果音を実装
じゃ、実装していきますね〜。
Unity のビデオチュートリアルはここから

それも面倒な人はこの先を読むだけで(たぶん)バッチリだからね!

また新規の GameObject とクラスを効果音用に作りました。
Screen Shot 2014-12-02 at 1.33.25 AM.png
SoundManager っていう GameObject で、ここに、効果音を鳴らす実装部分の YGSoundEffect コンポーネントと、さらにダミーの AudioSource コンポーネントをくっ付けます。
Screen Shot 2014-12-02 at 1.41.18 AM.png
AudioSource は、通常は音源データとなる AudioClip を指定して、音源の設定を保持しつつ、GameObject と行動を共にするイメージになると思うんですが(特に3D音源の時)、ここでは2Dのメニュー効果音達を鳴らす為のダミーになります。
で、同時に、YGSoundEffect では、管理する音源データを AudioClip 型の配列で持っておきます。

で、呼び出し側。
Screen Shot 2014-12-02 at 1.49.09 AM.png
ほんと単純でしょ?
GameObject 起動時に、AudioSource コンポーネントを取得(36行目)。
で、ゲーム中、効果音を鳴らしたい場面になったら、Play メソッドを効果音番号と共にコール!(45行目)
最初に取って来た AudioSource を使って効果音をプレイ!(50行目)

一応念のため、同じフレームに鳴らす処理が存在した効果音は鳴らさない様に、辞書に鳴らした効果音を登録してチェック(49行目と51行目)。
その辞書を Update で毎フレームクリア(42行目)。

これだけ!効果音の設定は終了ね!!

        にほんブログ村 ゲームブログ×PlayNCBlogへ
 初めてみました。よかったらクリックお願いね ♪

ラベル:unity IOS 効果音 BGM
posted by やまけん at 10:36| Comment(0) | Unity | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント: