Prismaton Prismaton
見出し画像

リスナー位置はカメラにはない、プレイヤーにもない、創るものだから

ゲームオーディオにおける「リスナー」とは「聴き手」を表し、効果音の減衰やパンニングを行う際に、基準となる位置と向きを表します。

FPV(First-Person View) のゲームではカメラとプレイヤーキャラクター(以下プレイヤー)が位置も向きも一致しており、リスナーは多くの場合カメラの位置と向きがそのまま採用されます。

しかし、TPV(Third-Person View) のゲームでのリスナーはそうはいきません。どういう位置に置いてもメリットとデメリットが生じ、また人による感覚差も大きいところで意見が割れやすく、どうするか決めることが難しくなる傾向にあります。

本稿はそんな「リスナー」を考える難しさを分析しつついろいろな工夫の可能性を紹介して、実用的なリスナー検討におけるガイドラインのようなものを提示できるといいなと思い書くことにしました!

1. カメラ位置 vs プレイヤー位置

TPV のリスナー決めで最も良くある議論がこの「カメラ位置」か「プレイヤー位置」かというものになっているのではないかと思います。

リスナーは「位置」と「向き」の要素がありますが、「向き」に関しては概ね「カメラ向き」が採用され、「プレイヤー向き」などが採用されることはよっぽどそれを意図した表現以外ではありません。「向き」は一旦「カメラ向き」で良いとして、「位置」を考えます。

(「プレイヤー向き」を採用するとプレイヤーがカメラ側を向いた場合に下図のようにパンニングの左右が見た目と反対になってしまいます。これは近年基準だと多くの人がナシと感じると思います。しかし、例えば「ラジコン操作」なども以前はあったことを考えると、個人的には完全にナシとは思っていなかったりしますが……)

画像

リスナーの「位置」を決める際に素朴に思い付くのが前述した「カメラ位置」と「プレイヤー位置」です。

「カメラ位置」は観測者の立場として没入するイメージに近いので理解はしやすいと思います。

画像

「プレイヤー位置」はプレイヤーの立場として没入するイメージに近くなります。TPV の視点は多くの場合そこに「観測者が居る」わけではなく、あくまで「プレイヤーとその周辺の描写を行うための視点」と捉えることもできます。そう捉える場合、音も同様に「プレイヤーとその周辺の描写を中心にする」考え方が重要になります。

画像

もう少し具体的にそれぞれのメリットデメリットを記すと次のようになります。

カメラ位置のメリット、デメリット

  • ○ : ゲーム画面を「観測者の視界」だと捉える場合に音源のパンニング方角と音量感が合う

  • △ : 戦闘音などの主要な効果音のパンニングが正面付近に集中しやすく締まりが出るが、一方で広がりと動きの少ない音像になってしまう場合がある

  • × : カメラの周囲などのプレイヤーにとっての重要性がそこまで高くない音の音量が大きくなってしまう

  • × : カメラを動かすことでプレイヤーとの距離が変化する場合、プレイヤーから発生する音の音量が安定しなくなってしまう

  • × : カメラを回すだけでプレイヤーが移動しない場合も、周囲の音の音量が大きく変化してしまう

  • × : カメラ内のプレイヤー位置が左右どちらかに寄り続ける場合、プレイヤーから発生する音も寄り続けてしまう

プレイヤー位置のメリット、デメリット

  • ○ : プレイヤーにとっての重要性(近さ)と音量が合いやすい

  • △ : 戦闘音などの主要な効果音のパンニングが左右に割れやすく広がりと動きのある音像になるが、一方でまとまりに欠ける音像になる場合がある

  • × : カメラの前でプレイヤーの後ろにある音のパンニングが後ろ側になってしまうなど、ゲーム画面を「観測者の視界」だと捉える場合に音源の方角が合わない場合がある

どうでしょうか?どちらも割と明らかなメリットとデメリットがあることが分かると思います。

このままどちらを選ぶか?という話になってしまうと、できることが「違和感」を低減する守備的なアプローチばかりになってしまい、魅力を活かす方向への舵切りが難しくなってしまいます。

2. 良いリスナーの条件

本稿ではこの「カメラ位置 vs プレイヤー位置」の勝敗は掘り下げません。どちらも何の工夫も無しに使うには欠点だらけだからです。

代わりに、「カメラ位置 vs プレイヤー位置」で浮き上がってきたメリットとデメリットを分析して、リスナーに要求される条件として抽出します。

  • A(見パン) : 見た目とパンニング方角の整合性がある程度取れている

  • B(重要度) : プレイヤーに対しての重要度と音量が概ね合っている

  • C(パン割) : 戦闘音などの主要な効果音のパンニングの割れ具合が意図通りになっている

  • D(距離安) : カメラとプレイヤーとの距離が変化してもプレイヤーの発する音の音量がある程度安定する

  • E(回転安) : カメラを回すだけでプレイヤーが移動しない場合、周囲の音の音量変化が小さめである程度安定する

  • F(寄り防) : カメラ内のプレイヤー位置が左右どちらかに寄り続けても、プレイヤーから発生する音が寄り続けない

基本的にはカメラ操作ができるタイプの 3D ゲームを想定した条件なので、ゲームによってはいくつかの条件を修正したり無視したりする必要があると思いますが、概ねこれらの条件を全て満たすリスナーは「良いリスナー」と言えるのではないでしょうか?

(怪しい略称が付いていますが、以下でこれら条件を参照する際に少しでも分かりやすくなればと付けました……)

3. リスナーを創る

「良いリスナー」の条件を提示してみましたので、次はそれに合致するリスナーの決め方を考えます。具体的な手法の解説に入る前に、そもそも「リスナー」とは何かを改めて掘り下げます。

「リスナー」は「耳の位置」と捉えられることが多いですが、そうとは限りません。

比較として、TPV のカメラは「目の位置」でしょうか?多くの場合違うはずです。TPV のカメラはプレイヤーの描写とプレイヤーへの没入を両立させるために「創られた視点」になっていることが多いと思います。

また、もう一つの比較として、映画などの撮影でのマイキングはカメラ位置に備え付けられたマイクだけを使って行うでしょうか?これも多くの場合違うはずです。ガンマイクを使うなど、マイキングは映像とは違った手法で音像を創ります。

これらを踏まえて「リスナー」の在り方を捉えるなら、リスナーは「良いオーディオ表現を目指すため」に、カメラとはまた別の考え方で工夫して「創られた基準点」であって良いということになるのではないでしょうか?

また、工夫を行うのは「リスナー位置」だけの話ではありません。減衰、パンニング、音源位置などリスナーを取り巻く様々な要素においての工夫によって「リスナー」が形創られるといえます。

要は「なんだってアリ」で考えていきます!

4. 伝統的?な工夫

まず、昔からよくある?工夫についてざっくり紹介します。

「これだけで十分な工夫!」とまではいかないものではありますが、重要な考え方が含まれていると思います。

4-1. プレイヤーの発する音は減衰やパンニングを無しで鳴らす

これはリスナー位置に関わらず、 D(距離安) と F(寄り防) の完全な対策となります。他の条件に関してはあまり効果が無いので他の工夫と組み合わせることが前提になっていると思います。

工夫のデメリットとしては、大きめの武器などプレイヤーの音でもパンニングしたいものが出てくる場合に整合性が取れないことが挙げられます。そうでなくても音響空間表現としての整合性は若干失われてしまうので、その点にも注意は必要です。

また、プレイヤーの音のみを特別扱いすることで実装が複雑になってしまうことも挙げられます。同じキャラクターがプレイヤーや敵や援軍など色々な役割を担う場合は切り替えが必要になるのでかなり面倒になってしまいます。

4-2. 減衰やパンニングがあまり掛からない範囲を大きくする

これは D(距離安)、E(回転安)、F(寄り防) の緩い対策となります。また、B(重要度) に関しては合わせることはできませんが、大きく外すことを防げます。

一方、やり過ぎると B(重要度) や C(パン割) をしっかり狙いにいくのが難しくなってしまうことがデメリットになっています。

また、ゲームにおいては意図せずリスナーのすぐ近くで音が鳴るようなことも時にあり得てしまうため、そもそも完全に物理現象に沿った減衰設定は良いとは言えません。減衰やパンニングの具合調整は、リスナーのことだけでなく、いろいろな条件を加味して行う必要があるといえます。

4-3. カメラとプレイヤーの間を取る

これはたまに見かける手法です。カメラ位置でもプレイヤー位置でも合わないなら間を取ってみようということで、順当な工夫ではあると思います。

画像

間を取るので、カメラに寄せるほど A(見パン) の対策となり、プレイヤーに寄せるほど B(重要度)、D(距離安)、E(回転安)、F(寄り防) の対策となりますが、逆に考えるとどの条件も中途半端になりがちです。

一方、C(パン割) に関しては間の取り方の調整で割としっかりと狙いにいくことが可能です。

5. リスナー位置の工夫

ここからは少し凝った工夫について紹介していきます。

リスナー位置の工夫に関しては内容自体はそこまで難しくないので、特に認識が広がると良いなと思っている部分です!

5-1. 減衰用とパンニング用で位置を分ける

減衰を判定するリスナー位置とパンニングを判定するリスナー位置を分けて考える手法です。

よくある例が、減衰用にはプレイヤー位置、パンニング用にはカメラ位置を使うもので、その場合 A(見パン)、B(重要度)、D(距離安)、E(回転安) を同時にしっかりと対策できることになります。

画像

一見それだけで良さそうですが、この例では C(パン割) はコントロールできず、F(寄り防) の対策にもなっていません。良い工夫であるとは思うのですが、いつでも良い結果になるとは限りません。

また、デメリットとしてミキシング処理の複雑さが増し、音響空間表現としての整合性を取ることが難しくなることも挙げられます。

5-2. カメラとプレイヤーの間を取る、改

4-3 では素朴にカメラとプレイヤーの間の点を取ることを想定していましたが、間の取り方?を更に工夫することが考えられます。

カメラ向き基準での手前奥、上下、左右の各軸を別々にコントロールします。

画像

例として、手前奥はカメラに寄せるけど、上下左右はプレイヤーに寄せるといったことが考えられます。この場合、A(見パン) をそこまで大きくは外さずに F(寄り防) への対策ができることになります。

また真逆の例で、上下左右はカメラに寄せるけど、手前奥はプレイヤーに寄せることも考えられます。これはトップダウンビューなどのゲームでプレイヤーが居る付近の画面中央をリスナー位置としたいようなケースで使える手法になると思います。

5-3. オフセットする

さらに、いい基準点になる位置を「狙う」ためには固定の長さでのオフセットを付けることもありえます。

このオフセットも、カメラ向き基準で手前奥、上下、左右を別々にコントロールしますが、主に使用するのは「手前奥」です。

例として、プレイヤーの手前数mに置く場合を考えます。

画像

このとき、D(距離安) と F(寄り防) は完全に対策され、B(重要度) と E(回転安) も概ね問題無し、C(パン割) はオフセットの距離調整で狙えるという、あと A(見パン) だけなんとかすればいいというところまでリスナー調整ができることになります。

もう一つの例として、カメラの奥数mに置くというのも考えられます。これは A(見パン) を忠実に守りたいけどその上でできる限り他の条件をマシにしたい場合に使える手法です。

画像

カメラには Near と呼ばれるそれ以上近くは描画されない距離が設定されていることがあります。描画されないなら A(見パン) にはあまり影響しないのでその辺りまでリスナーを前に出して B(重要度) や E(回転安) を緩く対策しようという魂胆です。

また、オフセットは 5-2 と組み合わせることで、プレイヤーとリスナーの距離が大きく変化する場合の微調整などもできるので、いろいろと試してみる価値はあると思います!

6. リスナー位置以外の工夫

リスナー位置を工夫するだけじゃ足りなそうな場合の最後の詰めができるような工夫を考えてみます!

6-1. リスナー付近減衰

グラフィクスの手法としてカメラのすぐ前で視界を覆ってしまう物を半透明にして目立たなくする手法があります。

同じノリでリスナー付近で意図せず大きな音で鳴ってしまう音に減衰を加えて目立たなくする手法はどうでしょうか?

リスナー位置をカメラ付近にする場合の B(重要度) への対策など、調整的に使いやすい考え方と思います!

また、リスナーとの距離減衰とは別の減衰で処理することになるので、音響空間表現との整合性も取りやすいです。

6-2. 空間を歪ませる

A(見パン) と F(寄り防) を同時にちゃんと?満たすためには、空間を歪ませる必要があります。過激派です。

これまでの手法と組み合わせて、全ての条件をそれなりに満たしていそうなリスナーの構成例を作成してみます。

ポイントは下記の感じです

  • カメラ付近にある音源に対しては、A(見パン) を問題ない程度まで満たすため、カメラから Near 分程度奥方向にオフセットした位置にリスナーがあるような振る舞い。リスナーの近くには減衰を適用

  • カメラからある程度離れた位置にある音源に対しては、B(重要度)、D(距離安)、E(回転安)、F(寄り防) をある程度満たすため、プレイヤー付近にリスナーがあるような振る舞い。C(パン割) の調整のためプレイヤーからカメラ手前方向に若干オフセットする

これを図にすると下記のような感じになります。良くわからないですね……笑。

画像

(実制作でここまではやったことないです……。機会があったらこのくらいまで詰めたいですねー)

7. その他リスナーに関する要対応事項など

リスナー位置に関するいろいろな工夫を紹介してきましたが、リスナー周りの表現を完成させるためには状況に応じた対応なども必要になってきます。

7-1. カメラがプレイヤーを映すのをやめるとき

カットシーンやそれに近い演出を行う時、カメラのモードが変化してプレイヤーを映さない状態になる場合があります。

リスナー位置の導出にプレイヤー位置を使用している場合、この状況になった場合はリスナーの導出方法を変更する必要が出てきます。

リスナー位置の導出方法自体をプレイヤー位置を使用しないものに変更する方法や、プレイヤー位置の代わりにカメラ注視点を使う方法などが考えられます。どちらにせよ状況の判定と、それに応じたリスナー設定のスムーズな切り替えが必要になります。

7-2. カメラがワープするとき

7-1 と同様にカットシーンのような演出を行う場合に多いですが、カットの切り替わりなどカメラが一気にワープする挙動が起こる場合があります。

この時にリスナーもワープさせてしまうと、各音の音量などが一気に切り替わり、場合によってはノイズのように聴こえてしまう場合があります。

対処方法はワープの前後で音をフェードさせる、遷移効果音で誤魔化す、リスナー位置のフェード(面倒!笑)、など考えられますが、ワープの検出が必要になる事もありなかなか大変です。

7-3. 様々なゲームの構成への対応

ゲームの構成によってはこれまで挙げてきたような手法が通用しない場合があります。

例えばサイドビューのアクションやシューティングではそのままパンニングすると音の左右の偏りが激しくなりがちなので、通常の 3D パンニングは適用しない場合が多くみられます。

サイドビューは特に極端ですが、トップダウンビューや奥スクロールなどのカメラ操作ができないゲームに関してはプレイヤーが画面中央から大きく外れたりカメラのズームが大きく変化したりするなど厳しい条件が多く、はっきりとした距離減衰やパンニングを適用するのは難しい傾向にあります。

また、複数の画面で操作する場合や複数のプレイヤーを同時操作する場合には、カメラ位置やプレイヤー位置が 1 つに定まらないため良い感じの減衰やパンニングを実現するためにはいろいろなことを考える必要があります。大変ですね……。

7-4. 「上下」と「カメラにとっての上下」

ここまでずっとリスナーの「向き」に関しては「カメラ向き」で良いとしてきましたが、「上下」というのは重力方向であることもあり他の方向とはちょっと気持ちの面が異なっていて、場合によっては「カメラ向き」に合わせることで違和感に繋がってしまうことがありそうです。

物理スピーカーによるイマーシブオーディオ環境で上下を感じられるようにする場合、鳥の声など普段上から聴こえやすい音で「上」を演出したくなると思います。

しかし、カメラを上下に向けると「上」はカメラにとっては正面や背面に変わります。カメラを上下に向けても画面を見ている人の首の向きは正面のままなので、「上」にあるはずの音が何故か「上」でなくなったかのような印象に感じてしまう場合がありそうです。

視聴環境によってもリスナーの考え方に違いが出そうというのは、なかなか沼が深いと思いますね、、、

7-5. 実は FPV も簡単ではない?

FPV のリスナーは「カメラ=プレイヤー位置」の場合が多いのですが、これまでの話をふまえるとこれもまだ工夫の余地があります。

例えば、サラウンド以上の物理スピーカー環境では、プレイヤーの発する音がリスナーとほぼ同位置で鳴ることになり、パンニングの結果全てのスピーカーから音が聴こえる状態になる場合が多いです。

この状態はもろもろの都合によりあんまりよろしくないことがあるので、FPV の場合においても、プレイヤーの発音をパンニング無し(この場合は前面のステレオからだけ鳴るような処理)で鳴らす工夫や、リスナー位置を若干手前側にオフセットする工夫などは有効に働く場合があります。

また、VR などの没入する環境で正確な音響空間表現を実現することを考える場合、「リスナー」をより「耳」に近づけるために、「左右 2 つに分けて考える」ことが必要になってきます。考えてみれば当たり前なんですけど、なかなかそこまでいかないですよね……。

8. 減衰やパンニング以外のためのリスナー

ここまでは減衰とパンニングのための「リスナー」について紹介してきましたが、リスナーにはそれ以外の役割も存在します。

また、減衰のためのリスナーとパンニングのためのリスナーを別にする工夫があったように、その役割ごとに異なる位置を採用することも考えられます。

詳細に触れ始めるとキリがなくなってしまうので、今回は列挙と簡単な解説だけしておこうと思います。

  • 環境判定リスナー : 場所による環境音変更や室内外などの判定地点。減衰やパンニングと共通の場合が多いが、よりプレイヤー目線での表現をしたい場合やカメラを回すことで判定が変化するのが不自然になってしまう場合など「プレイヤー位置」を選ぶ場合がある。判定する内容によって変える場合もある

  • 残響リスナー : 周囲の形状から残響のかかり方を決める判定開始地点。環境判定リスナーと概ね同様の考え方になるが、カメラのめり込みで事故るのが怖いなどの理由もあって「プレイヤー位置」を採用する場合が多い

  • 遮蔽リスナー : 音源との位置関係で遮蔽具合を決める地点。見た目上は「カメラ位置」を採用したくなるが、ゲーム性によっては「プレイヤー位置」からの遮蔽情報が重要でそれを反映したい場合もある

  • 音楽判定リスナー : 場所による音楽変更の判定地点。「リスナー」から少し意味は外れるが同じオーディオ関連なのでよく纏められる。殆どの場合「プレイヤー位置」にするのが良さそう

9. 誰かリスナーを創るか?

このようにリスナーを創るということは、ゲームの特徴に応じた本当に様々な工夫で構成され、それをもってオーディオ表現の向上に繋げていけるものと思うのですが、これらを適切な担当者なしで推進するのは非常に困難です。(そして担当者は居ないことが多いんですが……)

ゲームエンジンやオーディオミドルウェアの機能だけで出来ることも限られていて、サウンドデザイナーがリスナーの知識を得るだけでは実現が難しい工夫も多くなっています。

カメラ制御やキャラクター制御などにも踏み込んでリスナー制御を組み立ていけるオーディオプログラマーやテクニカルオーディオデザイナーを立てて、サウンドデザイナーとよい協力関係を結び、良いリスナーを創ることに挑んでいければと思います!

おわりに

今回は話題自体は狭いので「短めに纏めよう!」と思っていたのですが、、まぁ全然短くないですね……。

「空間音響」「イマーシブオーディオ」などへの形式的な対応が求められてきている昨今ですが、「リスナー」はそういったものの基礎となり創り手の思想が特にはっきりと出る重要な要素の 1 つだと考えています。

こういった知見がゲームオーディオ業界に浸透して、オーディオ表現のレベルが上がる材料の 1 つになったらなと思います!


いいなと思ったら応援しよう!

ピックアップされています

Prismaton - オーディオと周辺分野の技術関連

  • 15本

コメント

ログイン または 会員登録 するとコメントできます。
リスナー位置はカメラにはない、プレイヤーにもない、創るものだから|Prismaton
word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word

mmMwWLliI0fiflO&1
mmMwWLliI0fiflO&1
mmMwWLliI0fiflO&1
mmMwWLliI0fiflO&1
mmMwWLliI0fiflO&1
mmMwWLliI0fiflO&1
mmMwWLliI0fiflO&1