モバイルVRにおけるサウンドの要とは。GREE Creators' Meetup第4回レポート
今回はGREE Creators' Meetup 第4回にて行われたセッション「モバイルVR開発テクニック:『Tomb of the Golems』の事例とSocial VRの取り組み」から,同作で音周りの実装を担当したサウンドアーティストによるノウハウの紹介についてお届けする。
「Tomb of the Golems」公式サイト
モバイルVRにおけるサウンドの立ち位置
なお,「Tomb of the Golems」はUnityで開発されており,サウンド実装にはUnityの標準サウンドとOculus Audio SDKを利用しているという。
まず井上氏は,昨今のゲームサウンドの事情について紹介した。
残念ながら,モバイルゲームの開発においてはサウンドの優先度は低めに見られがちであった。なぜなら,プレイヤーが外でゲームを遊ぶ際は,そもそも音を出していない場合も多く,アプリ容量の制限・ハード側の処理能力の限界などで,凝った表現をやりにくい状況にあったのだ。
極端な話,「音のこだわりとモバイルゲームの売上との相関が見えづらい」という言説もかつてはあった。このあたりは音ゲーのヒットや,モバイルゲームにも押し寄せてきたコンテンツのリッチ化に伴って徐々に改善されてきたが,いまだモバイルゲーム開発の中では軽視されがちである。
一方で,VRコンテンツ開発におけるサウンドは非常に重要な要素である。プレイヤーがゲーム世界に入ったときの没入感には,サウンド面の緻密な設計が欠かせない。VRコンテンツを体験する際はヘッドフォンを着用するスタイルが多いことも,サウンドクリエイターにとって有利な条件だ。性能面でも,Oculus RiftやHTC Vive,PS VRを利用する際には十分なハードウェアのパワーが期待できる。
しかし,今回井上氏が挑戦したのはGear VRという「モバイル」かつ「VR」なプラットフォームだ。これら相反する二つのスタンスの狭間にあるモバイルVRのサウンドでは,バランスが重要だという。
ハードの制限として厳しめな容量の問題・処理能力の限界が存在する一方で,一般のモバイルゲームと比べてヘッドフォンをつけて遊ばれる割合がかなり高い。制約の中でVRコンテンツらしい高品質さを保つためには,無駄なく臨場感を上げられるよう,綿密な調整が重要だ。
VRゲームに登場するサウンドの分類
井上氏は本作のサウンド実装において,初めに音の種類を分類して分析したのだという。
具体的には「2D Sound」「3D Sound」「Spatialized Sound」の三つと,従来のゲームサウンドと少し異なる分け方になる。
1つめの「2D Sound」は,音量の距離減衰やパンニングなどの影響を受けないサウンドのことだ。ゲーム内の世界には存在しない音で,BGMやME(Music Effect),システム音などがこれにあたる。
2つめの「3D Sound」は,プレイヤーの距離や角度によって音量の減衰やパンニングがかかる音だ。こちらは逆にゲーム内の世界に存在する音を指している。
そして3つめの「3D Sound」に分類されるものの中でも,VR用に“立体化”された音が「Spatialized Sound」だ。Spatialized(空間化,立体化)とは,音が発生してから人間の耳に知覚されるまでの変化をシミュレーションしていることを指す。
サウンドの録音方式の一つに,バイノーラル録音というものがある。これはダミーヘッドの耳に当たる部分にマイクを入れて録音し,ヘッドフォンで再生することで,あたかもその場にいるかのような臨場感を得られるという方式だ。バイノーラル録音は決め打ちの方式だが,これと同じ考えで,人に聞こえる際の音の変化をリアルタイムにシミュレーションしているものがSpatialized Soundになる。
さて,実際にゲームでSpatialized Soundを実装する場合なのだが,このシミュレーションはUnityの標準機能でカバーできるところと,そうでないところがある。よりリアルな音を追求するために,両耳の間での時間差や,頭,肩,耳の形による音の変化などをシミュレートしたいのだが,標準の機能だけでは実装が難しい。
そこでUnityを使ったVRコンテンツ開発者向けには,各社から音の立体化を行うためのSDKが提供されている。本作ではそのうち,Oculus Audio SDK for Unityが採用されている。
Oculus Audio SDKにはいくつかの機能が含まれているが,最初に使う機能が「Oculus Native Spatialiser」だ。
これは,ゲームシーン内に配置した音源(Audio Source)を含むオブジェクトに加えるコンポーネントで,HRTF(頭部伝達関数)によるフィルタリングを行うものだ。
音が発生して人間が知覚するための間には,壁の反射・反響などの「環境要因」と,人間の体の作りによって変化する「人的要因」がある。HRTFフィルタリングは,この人的要因によって変化する部分をシミュレートしてくれる。よって,後ろから発生した音はしっかり後ろから聞こえてくるようになり,音の定位感がはっきりしたものになる。
しかし,このコンポーネントの利用にはそれなりの負荷がかかる。オブジェクトの数が多ければ多いほど,CPUに負荷がかかってしまう。モバイルにおいて負荷対策は切実な問題だ。そこで井上氏は,この処理を行うべき音とそうでない音の適用基準を作って,適宜判断を下したのだそうだ。
基準は二つ。一つは,音源の定位がゲームとして重要になる演出だ。例えば360度を見渡せるシーンで,後ろや横から敵が出現する可能性がある場面では,敵がプレイヤーに近づいていることを音で気付かせる必要がある。
二つめは,演出として音源がプレイヤーの近くを通る場面だ。VRコンテンツにはよくある表現なのだが,何かが自分の頭の周りを回ったり,自分の真横を通ったりする場面で音を効果的に使うことで,プレイヤーをゲーム世界へ引き寄せ,没入感を高めることができる。
この判断基準をベースに,一つのシーンの中にNative Spatialiserの使用数を10個前後に制限することで負荷をコントロールしていたとのことだ。
ゲーム中ではさまざまな方向から歩み寄ってくる敵の足音や,一度消えた敵が別の場所から突然出現するときの音など,プレイヤーにしっかり方向情報を与えたいものに絞って利用しているという。
また,この調整のために,シーン中にSpatializerコンポーネントがいくつあるか確認できる仕組みをあらかじめエンジニアに作ってもらい,確認の手間を抑えたそうだ。
ここでいう初期反射音とは,音が発生してからさまざまな場所で反射する中で,少ない反射回数のうちに人間の耳に入る音のことを示している。先ほどの説明における「環境要因」のシミュレーションにあたるものだ。
人間は音源から直接聞こえる音と,こうした反射音によって,空間の距離感を把握している。「Spatializer Reflection」を使用することによって,VR空間内の物体が本当にそこにあるかのように感じられる……はずなのだが,この処理は負荷がかなり高かったため,今回は採用を見送ったそうだ。
PC上で実験したところ,通常は四つの音源で10%の負荷であったものが,Spatializer Reflectionをオンにすると一気に44%もCPUを持っていってしまった。
また,立ち上げ時に主な間的にCPU負荷がかかり,実機上でカクつきが発生したり,音が聞こえなくなったりという現象が起きたそうだ。
Spatializer Reflectionは非常に効果的ではあるが,まだまだモバイルでの利用は難しいというのが実情のようだ。本作ではUnity標準機能のリバーブゾーンを利用して,簡易的に対応することにしたという。
ゲーム内の世界に存在しない音の扱い
先ほど井上氏が取り上げた「2D Sound」(3次元処理を行わない音)の扱いだが,場合によってはVRコンテンツの没入感の妨げになる可能性があるのだという。プレイヤーにとって2D Soundは,ゲームの世界の中にない音が聞こえてくることになるからだ。
しかしゲームとしては,BGMやMEといったサウンドがプレイヤーの心情にもたらす効果も強い。
このあたりの判断について井上氏は,ゲームの世界観によって考えるべきだろうと述べた。リアルに近い世界観では2D Soundをなるべく抑え,デフォルメされた世界観ならばある程度あってもいい,というバランス感だ。
本作はアニメ調の世界観のため,ダンジョン内ではBGMを鳴らしている。しかし,通常のモバイルゲームよりはBGMの音量を控えめにしているという。プレイヤーがその世界の中で起きている「3D Sound」のほうに気が付いてもらいやすいようにすることも大切なのだそうだ。
違和感を減らす工夫
井上氏は最後に,特定の「3D Sound」についての注意点について紹介した。
本作のボスキャラクターが上から落ちてくるときの効果音は,接地の衝撃音に加えて,周りの物体が振動する音や,リバーブでは表現できないダンジョン内の響きの音も含めて一つのサウンド素材になっている。
こうした空間の広がりを伴った音が,3D Soundの扱いで,ある一点音源からモノラルで鳴ってしまうと,違和感の原因になるのだという。
この問題に対しては,Spatial BlendというUnity標準Audio Sourceのパラメータを活用したそうだ。
このパラメータカーブは,距離に応じて2D/3Dのバランスを変えるもので,近ければ2Dとして聞こえ,遠いと3Dの点音源に聞こえるように設定することができる。
衝撃音のような,広がりがありつつ定位感も含まれるような音は,この機能を使って調整を行っている。
VRコンテンツにおけるサウンド技術の行方
VRコンテンツ開発においてゲームサウンドの重要性が再注目されてはいるものの,モバイルでは無尽蔵にリソースが使えるわけではなく,実際に「Tomb of the Golems」ではCPU負荷は10%程度に抑える,という目標で調整が行われている。
そして今回井上氏が紹介したような,VRならではの工夫点や注意点はこれだけではない。筆者がマルチプラットフォーム展開についての質問をしたところ,井上氏はハードウェアの差の問題について触れた。
例えば,PSVRとRiftのマルチタイトルを作ろうとした場合,PSVRには独自のバイノーラルプロセッサが実装されているため,Rift側では同じような鳴り方になるようソフトウェアで調整しなくてはならない。
井上氏は,こうした機種ごとのハードウェアによる差異については,ある程度吸収するサウンドミドルウェアが出てきてほしいと語っていた。
VRコンテンツの開発界隈においては,グラフィックスにおけるコツや3D酔いの防止策など,さまざまなノウハウが集積されつつある。こうしたサウンド面での研究もまた,さらに進んでいくものと思われる。今後の発展に大いに期待できる分野といえるだろう。