TOPICS

2018年9月20日

音で空間を表現するには? サウンドプログラマーの取組みを紹介します!

カプコンサウンドチームがCEDEC、AESに登壇しました!

以前、CAP’STONEでもお伝えしていた通り、2018年8月、CEDEC・AESにて、カプコンサウンドチームからいくつかの発表を行いました。
各会場にお越しいただいた皆さん、改めてありがとうございました!
今回はカプコンサウンドプログラマーの発表内容についてざっくり紹介します!
CEDEC・AESではいずれも「音で空間を表現する」をテーマに、これから発売されるゲームに実装しようと考えている内容を発表しました。
「サウンドプログラマーっていったいどんな仕事をしているんだろう?」
なかなかイメージがつきにくい、そんなあなたにもピッタリの内容のはずです!

音で空間を表現するには?

今回は、プレイヤーが隣の部屋で鳴る音を聞く場合を題材に、音の漏れ聞こえや伝播を、どのように表現するかを発表しました。

壁の向こうの音はどこからどのように聞こえるでしょうか?

まずはカプコンサウンドにおける、これまでの表現、今後やりたい表現の動画を紹介します。

カプコンサウンド – これまでの表現とやりたい表現

5.1ch高画質動画はこちら

このような表現を実現する数々の工夫について、順番に見ていきましょう!

1.音が鳴る空間、音を聞く空間を判定する

まず重要なことは、音がどこで鳴って、それをどこで聞くかです。
これを特定することをカプコンサウンドでは空間判定と読んでいます。
従来、空間判定にはレイキャストと呼ばれる光線を飛ばす方法などを使用してきました。

レイキャストは光線の当たる位置でプレイヤーと音源の位置を特定します

今回の発表では、このような処理負荷の高いレイキャストや、その他の手間がかかる方法にかわる、Layered Quadtree Grids (LQG)を提案しました。
三次元空間を四分木のグリッド(Quadtree Grids)が積み重なって(Layered)できたものと考えることで、プレイヤーと音源の位置を高速・軽量に判定します。

Layered Quadtree Grids (LQG) による空間判定

高画質動画はこちら

実験の結果、レイキャストの約30倍高速に空間を判定できることが示されました

2.空間ごとに音の鳴らし方を変える

音がどこで鳴り、どこで聞くかが決まれば、空間ごとの音をどのように表現するかを考えます。
空間ごとに音を表現するためには、その空間に応じて、音に対してリバーブやローパスフィルタといったエフェクトを設定することで実現します。

従来、ゲームで使用されてきたバス構成の例

これまでカプコンでは、プレイヤーの音、敵の音、といったように音の種類ごとにバスを構築していました。
この方法では、音がプレイヤーに到達するまでの途中経路の空間の特徴を表現することはできませんでした。

今回発表した、空間の連結関係を考慮してバスを構築する例

今回の発表では、空間がどのように連結しているかに応じてバスを構築しました。
これによって、音が鳴る空間、音を聞く空間、そしてその途中経路の空間、すべての特徴をバスで付与して、より豊かに表現できることを示しました。

3.部屋の連結部分に音を移動させる

そして今回の発表でもう一つ重要なことはズバリ、開口部分からの漏れ聞こえです!
これまでの説明で、高速に空間を判定して、空間ごとに音を豊かに表現できるようになりました。
あとはその音が「それっぽい場所」から聞こえてくるようにする必要があります。

これまでは壁の遮蔽は表現できても、回折は表現できませんでした…

今回の発表では、プレイヤーがいない空間で鳴る音を、プレイヤーがいる空間の連結部分に再配置する方法を紹介しました。

部屋の入口付近に音が再配置されると、隣の部屋から音が聞こえてくるように感じます!

開口部分の音をバスでまとめて処理することで、処理負荷も削減できる、というアイデアです。
冒頭のやりたい表現で紹介した、入り口から音が聞こえていた理由は再配置だったんですね!

4.その他いろいろ(状況に応じて音の鳴らし方を変える)

発表では、これらに加えてその他様々なシチュエーションにおける空間表現についても紹介しました。
たとえば、距離や方向による音の減衰、遮へいの表現、ドアの開閉などなどです。
ここでは動画のみ紹介しますが、より詳細をお知りになりたい方はぜひ発表資料もチェックしてみてくださいね!

カプコンサウンドにおける空間表現

5.1ch高画質動画はこちら

まとめ

改めて振り返ってみると盛りだくさんの内容ですね!
よくわからない部分などは発表資料でより詳しく説明していますので、ぜひチェックしてみてください。
今回の発表で紹介した内容は、ベテランサウンドプログラマーと若手を中心に、メインのゲーム開発のすきま時間などで協力しあって取り組みました。
学生時代はそれぞれ異なる分野(音響学、ゲーム、情報工学などなど…)を専攻していた若手たちも、いまではそれぞれの得意分野を活かしてサウンドプログラマーとして活躍しています。
カプコンサウンドプログラマーは、このような研究開発とゲーム開発いずれも取り組める、なんとも贅沢なお仕事ですね!

今回の発表のために共にがんばったサウンドプログラマーたちです!

ご意見やご感想、その他ご質問などございましたら、ぜひお気軽にお便りコーナーからご連絡ください。