Unity(C#)初心者・入門者向けチュートリアル ひよこのたまご

AndroidやiOS向けアプリを簡単に作れるゲーム開発環境Unity(ユニティ)の使い方を、チュートリアル方式で一緒に学びましょう!

【Unity開発】Audioまとめ(基本編)【ひよこのエッセンス】

Unity5.0.0f4 Personal(2015年5月)

 

f:id:hiyotama:20150504205926p:plain

 

ひよこエッセンスの時間です〜

今回はAudioを実装し、BGMを鳴らしてみましょう〜

 

Audioまとめ(基本編)

 

①BGMを入手する

まずはAsset StoreからBGMをダウンロードしてきましょう〜Asset Storeの使用方法についてはエッセンスをご参照下さい〜

 

 

Asset Store内で「bgm」で検索し〜

 

f:id:hiyotama:20150513174553p:plain

 

Miscellaneous BGM Vol. 1が無料だったので、これをダウンロード・インポートします〜

皆さんは好きなのをダウンロードしてもらって大丈夫です〜

 

f:id:hiyotama:20150513175111p:plain

Miscellaneous BGM Vol. 1

 

②BGMを鳴らす

インポートが完了しましたら、Main CameraのInspectorビューから、Add Component>Audio>Audio Sourceを選択し、取り付けて下さい〜

 

f:id:hiyotama:20150513181629p:plain

Audio Sourceを追加

 

Audio Sourceが音を再生するCDプレーヤーのような役割をして、Main Cameraに最初からついていたAudio Listenerがその音を聴き、PC等から音を出力するマイクとスピーカーのような役割を担っています〜そして、Audio Listenerの中のAudio Clipが楽曲そのもの、つまりCDのような役割です〜

 

それではAudio SourceのAudio Clipに、先ほどインポートしたBGMを設定して下さい〜

 

f:id:hiyotama:20150513182000p:plain

BGMを設定

 

これでCDプレーヤーにCDを入れ、同じ位置にマイクとスピーカーがあるような格好になりました〜

この状態でゲームを再生してみて下さい〜

BGMが鳴っています〜

 

③BGM設定

とりあえずBGMは鳴りましたが、他にも色々と設定があるので見て行きましょう〜

 

f:id:hiyotama:20150513182333p:plain

多い・・・

 

Audio Clipの次、Outputは、Audio Mixerという機能で使用しますが、別途エッセンスを用意しようと思います〜

 

Muteはtrueにすると無音状態になります〜

 

Bypass Effectsは、フィルター効果のOn-Offを制御します〜「Bypass」は回避するという意味なので、trueの時フィルター効果をOffにします〜

「フィルター効果」とは、Audio Sourceから流れる音をよりリッチな音に変換する機能です〜例えば、音にエコーをかけたりできます〜

InspectorビューからAdd Component>Audio>Audio Echo Filterを選択して下さい〜

 

f:id:hiyotama:20150513193825p:plain

 

これだけで音にエコーがかかるようになります〜このような音に効果を与える機能をフィルター効果といい、これをBypass Effectsによって制御できるというわけです〜

 

Bypass Listener EffectをOnにすると、Listener EffectをOffにできるそうですが、Listener Effectが何を意味するのかよく分かっておらず、保留にさせて下さい〜

 

Bypass Reverb Zonesは、残響効果のOn-Offを設定できます〜Reverb Zoneについては、Add Component>Audio>Audio Reverb Zoneから選択できます〜

 

f:id:hiyotama:20150513200457p:plain

Audio Reverb Zone

 

この中のReverb Presetの内容によって、残響効果が変わってきます〜例えばお風呂(Bathroom)や洞窟(Cave)などありますので、色々とお試し下さい〜

Bypass Reverb Zonesは、この残響効果のOn-Offを制御しているというわけです〜

 

Play On Awakeは、Scene開始時に音を鳴らし始めるかどうかを決めています〜

もし任意のタイミングでBGMを再生した場合はPlay On AwakeをOffにしておき、例えば画面をクリックした時にBGMを鳴らし始めたい時は、以下のスクリプトをMain Cameraに取り付けると実現します〜

 

 

audioSource.Play( )メソッドによって、Startメソッドで取得しておいたAudioSourceが再生を始めます〜

 

LoopをOnにすると、BGMは繰り返し再生し続けます〜

 

Priorityは、Scene内における他のAudio Sourceと比較した時の優先度を表します〜

0が最優先で、256が最も低い優先度となります〜

 

Volumeは、音の大きさです〜

 

Pitchは、音の早さです〜0が遅く、3が早くなります〜

 

 

Stereo Pan以下は3Dサウンドに関する機能が中心になるため、別途エッセンスを用意させて頂きました〜

 

 

以上、ひよこエッセンスでした〜

ありがとうございました〜