#導入方法
Googleが出しているSDKなので、下記のUnity向けインテグレーションを参考に導入していきます。
Resonance Audio公式サイト
GithubのReleasesから最新のUnityパッケージをダウンロードし、Unityにインポートします。
パッケージの配布場所
最新版は2018年2月28日時点でv1.2.0ですのでこちらで進めていきます。
インポートが終わったら、まずはじめにAudioManagerを開いて使用するプラグインをResonance Audioに変更します。
Ambisonic Decorder PluginはAmbisonics音源を使用することがない場合そのままでも大丈夫です。
Assets/ResonanceAudio/Demos/Scenes以下にデモシーンがあるのでそこから試すことができます。
基本的には以下の4つのコンポーネントを使用します。
- ResonanceAudioListener
- ResonanceAudioSource
- ResonanceAudioRoom
- ResonanceAudioReverbProbe
ResonanceAudioListener
AudioListenerと併用します。
無くても問題はないのですが、いくつか追加でパラメーターが調整できるようになります。
また、このコンポーネントでUnityシーンの音場をAmbisonics音源として録音することも可能です。
ただし、Editor上非実行時のみ録音可能という制限付きです。
ResonanceAudioSource
AudioSourceと併用します。
こちらも無くても問題ないです。いくつか追加でパラメーターが調整できるようになります。
AudioSource側の設定をSpatial Blendを3D、Spatilize、Spatialize Post Effectsをオンにします。
ただし、Ambisonics音源を再生する場合は、Spatial Blendを2D、Spatilize、Spatialize Post Effectsをオフにします。
Ambisonicsは音場を録音し、再生する機能なのでオブジェクトベースではなく、シーンベースになります。
そのため、ここでは3Dではなく2Dで設定します。
少しややこしいですが、Unityでは3Dがオブジェクトベースで、2Dがシーンベース、チャンネルベース扱いになります。
立体音響についてはこちらの記事が参考になります。
空間音声入門:360度VR動画時代の音響とは(イベントレポート)
ResonanceAudioRoom
Dyanamic early reflectionsとLate reverberationの反射処理を行います。反射音に関しては下記のサイトが分かりやすいです。
Early Reflection(初期反射音)と他の反射音の違いって何?
部屋のサイズに合わせて配置し、Left Wall、Right Wall、Floor、Ceiling、Back Wall、Front WallのMaterialを設定します。
Surface Materials | |
---|---|
Transparent | 設定なし |
Acoustic Ceiling Tiles | 吸音材(音楽室の壁) |
Brick Bare | 裸のレンガ |
Brick Painted | 塗装されているレンガ |
Concrete Block Coarse | 粗いコンクリート |
Concrete Block Painted | 塗装されたコンクリート |
Curtain Heavy | 厚手のカーテン |
Fiberglass Insulation | ガラス繊維断熱材 |
Glass Thin | 薄いガラス |
Glass Thick | 厚いガラス |
Grass | ガラス |
Linoleum On Concrete | リノノウム床張りされたコンクリート |
Marble | 大理石 |
Metal | 金属 |
Parquet On Concrete | 合わせ木床張りされたコンクリート |
Plaster Rough | 粗い石膏 |
Plaster Smooth | 滑らかな石膏 |
Plywood Panel | 合板 |
Polished Concrete Or Tile | 磨き上げられたコンクリート、タイル |
Sheetrock | 石膏ボード |
Water Or Ice Surface | 水面、氷面 |
Wood Ceiling | 木製の天井 |
Wood Panel | 木製のパネル |
ResonanceAudioReverbProbe
場所によって細かくリバーブの調整を行うことができます。
またこのリバーブ設定は事前計算で焼き込むことが可能です。
ReverbBakingDemoシーンを見るとかなり細かく設定できることがわかります。
Only When Visibleをオンにすることで建物の中にいる時だけリバーブ処理のかかった音を聞くことができるようになります。
例えばShapeをSphereにして設置した際に、Sphere内には入ってはいるが、建物の中には入っていないというシチュエーションが発生するときに使える機能です。
チェックボックスをオンにすることでSphere内に入っている、かつ、建物の中に入ってるときのみリバーブの効いた音を聴くことができるようになります。
#まとめ
ResonanceAudioでできること
- Resoncance Audio PluginのHRTFの適用
- Dyanamic early reflectionsとLate reverberationの反射処理
- 反射素材の設定(全22種類)
- Reflection ProbeによるReverbのBaking
- Ambisonics音源の再生、録音(非実行時のみ)