CriWare Unreal Engine
Plug-ins for CriWare solutions.
|
自分と音源の間に壁があったとしても、音が全く聞こえてこないわけではありません。現実世界の物理現象としては、遮られた音は障害物の背後にも廻り込んで伝播します(回折)。
その結果、音量は少し小さくなってしまいます。また、周波数の高い音がより強く減衰し、明瞭度の弱いこもった音として聞こえるようになります。
今回は、壁の向こうからこもった音が聞こえてくる演出の実現方法をご紹介します。
説明上の混乱を避けるため、前回のチュートリアル「ADX チュートリアル No.7 : 3Dサウンドを再生する」でレベルに配置した音を取り除いてください。
まずはCubeを配置・変形して壁を作ります。
壁を挟んでプレイヤーの反対側に SimpleMusicAcb キューシートアセット内の simple_bgm キューアセットを配置してください。本稿の趣旨に従って、 PlayerStart の位置に対して壁を挟んで反対側になるように配置しておく必要があります。
Uneal Editor 上でレベル上の simple_bgm を選択し、詳細ウィンドウから AtomComopnent のAttenuation項目にあるOverride Attenuationにチェックを入れてください。
チェックを入れると新たに設定項目が表示されるため、「Attenuation (Occulusion)」を表示してください。
Attenuation (Occulusion) 内の各種プロパティについて、下記のように設定してください。
各種設定の詳細は後述します。
上記設定をすべて終えたらゲームを開始してください。 カメラと音源の間に壁があるとき、simple_bgm の音声がこもったように聞こえるはずです。キャラクターを移動させ、カメラと音源の間に遮るものがないときに音声の明瞭度が変化するかどうかも確認してください。なお、デフォルトの設定ではカメラの位置に連動してオーディオリスナーが移動する挙動になります。キャラクターの位置から音を聴きたいと思っている場合は少し不自然に聴こえるかもしれません。この問題は次のチュートリアルで解決します。