バージョン
(以下「Wwise Reflectのプロパティ」参照。)
Wwise Reflectプラグインエフェクトは、マルチtapのフィルタ付き時変性( time-varying)delay lineを実装して、スペーシャリゼーション(spatialization)されたアーリーリフレクションのシミュレーションを目的とします。
音響のジオメトリックモデリングを検討す上で、スペーシャリゼーションしたアーリーリフレクションは"image source technique"を使って計算することが典型的です。このアプローチで、アーリーリフレクションをイメージソースとして、まるで音が反射するジオメトリが鏡であるかのように表現できます。下図は、そのイメージ図です。
この図では、エミッタEとリスナーLが、囲いのボックス(黒の実線)で表された1つのジオメトリ(部屋)内に存在します。エミッタからリスナまでの反射パスが、緑の実線で表されています。イメージソース手法(image source technique)では、各表面に対して、エミッタの"鏡像(イメージ)"を生成します。イメージソースは、エミッタを通る面に垂直な直線上の、面から同じ距離だけ離れた、面の裏側の場所に配置されます。音が伝わる距離の合計は、イメージソース・リスナーカンの距離に該当します。なお、イメージソースの配置はエミッタのポジションやジオメトリに厳密に依存するもので、リスナーのポジションに関係ありません。
ゲームが、イメージソースのリストを対象となるプラグインインスタンスにプッシュします。イメージソース毎に、その相対的な3Dポジョン、ディスタンスに基づくカーブ、そして関連 「Acoustic Textures」に基づいて、ディレイラインにタップが追加され、フィルタリングされ、パンニングされ、スケール調整されます。
Wwise Reflectはアーリーリフレクションを表現するAuxiliary Busで使うのが典型的です。アーリーリフレクションのシミュレーションは、バスに送られる音を発するゲームオブジェクトがこのバスに関連付いていれば、正しく行われます。
事例: FPSゲームのプレイヤーが発する音にWwise Reflectを使う
Wwise Reflectを、Auxiliary Busに追加する。
AK::SoundEngine::SetGameObjectAuxSendValues()
を使って、ゲーム内で、このAuxiliary Busにプレイヤーゲームオブジェクトを送る。
AK::SoundEngine::SendCustomGameData()
を使って、ゲーム内で、プラグインのそのインスタンスの、イメージソースを表すBlobデータ(リスナー周辺の、周りのジオメトリに該当するもの)を送信する。データフォーマットの説明は、SDK/include/AK/plugin/AkReflectGameData.h
参照。各イメージソースが、それぞれWwise Reflectを通過する信号の、パンニングされて、フィルターをかけられて、ディレイしたコピーとなる。
イメージソースのポジションを更新する必要がある時に、新しいBlobを送信する。
イメージソース1つにつき、最大4つのAcoustic Texturesを通せます。Acoustic Textureは「Acoustic Texture Editor」で設定して、素材のプロパティを表します。プラグイン実行に際して、そのTextureに設定された4種類のAbsorption(吸音)バンド(Low、Mid Low、Mid High、High)が、4つの周波数バンドの減衰に変換されます。
2つ以上のAcoustic Textureを適用すると、バンド吸音係数を合算して、信号を順次フィルターにかけたようにします。この結果、複数の面に反響したかのような効果がでます。
Wwise ReflectのデフォルトのFrequency Absorption Bandのマッピング
Low: < 250 Hz
Mid Low: > 250 Hz and < 1,000 Hz
Mid High: > 1,000 Hz and < 4,000 Hz
High: > 4,000 Hz
ReflectのFrequency Absorption Bandデフォルト値は、変更可能です | |
---|---|
ReflectのFrequency Absorptionのデフォルト値を変更できますが、非常に特殊なシナリオ以外では、必要ないはずです。変更するには、 |
Wwise Reflectをプレイヤーから見た第三者の音に適用するには、エミッタに関連付けられたバスのインスタンスに、Wwise Reflectを実行する必要があります。詳細は、3D Bussesや、 AK::SoundEngine::SetGameObjectAuxSendValues()
を参照してください。バスインスタンスを適切に設定するには、AK::SpatialAudio
の機能を利用できます。
注記 | |
---|---|
Reflectをリスナーとは異なるオブジェクトに関連付けたバスに使用する場合、現状はバスのポジショニングモードを2Dに設定する必要があります。そうしないとWwise Reflectによって生成され空間配置(spatialize)されたイメージソースを、Wwiseが更に変換(パンニングと減衰)させてしまうからです。 |
Reflectの反響効果を調整できる基本的なパラメータがいくつかあります。
反響とは、インプット信号をダウンミックスして、それをパンニング、フィルター、ディレイしたものになります。ディレイタイムは、ゲーム側で操作するイメージソースの距離と、ReflectのSpeed of Sound(音速)によって左右されます。フィルターや、ボリュームの増減は、イメージソースの距離を様々なカーブと比較して決められます。また、フィルターはイメージソースのAcoustic Textureの設定にも、影響されます。
Tip | |
---|---|
距離の減衰カーブは、空気の吸収とエネルギーのディケイをシミュレーションします。 |
項目 |
内容 |
|||||
---|---|---|---|---|---|---|
Inclusion
|
このオブジェクトが含まれるのかどうかを示す。選択すると、このオブジェクトが含まれる。選択しないと、含まれないことを示す。 デフォルトでは全プラットフォームに適用します。 プラットフォーム専用のカスタマイゼーションを設定したり決定するにはLink indicator (チェックボックス左側)を使います。 チェックなしの場合は、Property Editorのプロパティや動作を設定できない。 |
|||||
Name |
エフェクトインスタンスの名前。 エフェクトインスタンスは、エフェクトのプロパティ設定をまとめたものである。カスタムインスタンスとShareSetの2つのタイプがある。カスタムインスタンスは1つのオブジェクトだけに使用できるのに対し、ShareSetは複数のオブジェクト間で共有できる。 |
|||||
Effect |
エフェクトのタイプ。 |
|||||
Shared by (Used by) |
選択されているShareSetに現在サブスクライブされているオブジェクトのリスト。 エフェクトのカスタムインスタンスを編集している場合は、このフィールドが"Used by"となる。 |
|||||
|
検索フィールドが開き、標準的な英数字の検索によってマッチしない項目がビューで非表示となる。詳しくは「表の使用」を参照。 検索フィールドを閉じて検索フィルタを解除するには、Searchアイコン左のCloseアイコンをクリックする。
|
|||||
|
エフェクトのプロパティ設定をデフォルト値に戻す。 エフェクトのカスタムインスタンスを編集している場合のみこのオプションが使用可能。 |
|||||
Notes |
エフェクトに関する追加情報。 |
|||||
エフェクト設定 | ||||||
General | ||||||
Speed of Sound |
単位毎秒。単位とは、ゲームで使用してReflectに送信される、距離の単位を指す。空中の音速は、~秒速340m(単位m/s)。ゲームの単位がcmであれば、秒速は約34,000(cm)/sとなる。 |
|||||
Center% |
3Dポジショニングに使うCenter%。Wwiseで扱う3DポジショニングのCenter%については、「Positioningタブ: Audio Bus、Auxiliary Bus」を参照。 |
|||||
Output Level |
wet signalのボリュームレベル(dB)。 |
|||||
Monitoring List | ||||||
Filter |
ゲームオブジェクトのNameやIDの内容に完全に一致する、または部分的に一致するものを自由に入力する。Monitoring List表にも、グラフビューのカーブカーソル にも、一致するイメージソースのみが表示される。 |
|||||
|
Filterフィールドの内容がクリアされるので、この下の列にも、関連するグラフ中のカーブにも、Wwise Reflectが適用される全てのイメージソースが表示される。 |
|||||
イメージソースのMuteやSoloの状態をコントロールしたり、潜在的なミュートやソロの状態が表示したりする。 イメージソースをミュートすると、現在のモニタリングセッションにおいて音がミュートとなる。イメージソースをソロにすると、Wwise Reflectの現在のインスタンスにおいて、他の全てのイメージソースの音がミュートとなる。 太字のMやSは、このイメージソースが明確にMuteまたはSoloの状態に設定されたことを示す。太字でない薄字のMやSは、このイメージソースのMuteまたはSoloの状態が、他のイメージソースの状態の結果として潜在的に設定されたことを意味する。
|
||||||
Image Source ID |
イメージソースに付けられるID番号。固有の番号をゲームが割り振る。 |
|||||
Image Source Name |
イメージソースの名前。 |
|||||
Game Object ID |
ゲームオブジェクトに付けられるID番号。固有の番号をゲームが割り振る。 |
|||||
Game Object Name |
ゲームオブジェクト名。 |
|||||
Textures |
サウンドが反射するAudio Textureの名前(名前が分からない場合は、ID)。
|
|||||
Distance (距離) |
イメージソースとリスナーの間の距離を、ゲームの単位で示したもの。 |
|||||
(Image Source Graph View) |
Distance (X軸) とイメージソースのプロパティ値 (Y軸) の関係を図示したもの。 グラフビューに、同時に複数のカーブを表示できる。 |
|||||
Display |
グラフビューで表示(または非表示)するパラメータフラグを指定するリスト。
|
|||||
X |
選択したコントロールポイントのX座標。X値は、選択したDistanceの値を表す。 2つ以上のコントロールポイントを選択すると、このフィールドの数値が「0」となり、これを増減させることで、選択中の全てのコントロールポイントを、現在の数値から増減できる。例えば2つのコントロールポイントを選択して、Xスライダを-5だけ移動させると、コントロールポイントが2つとも、左に5単位だけ動く。 |
|||||
Y |
選択したコントロールポイントのY座標。Y値は、プロパティ値(Distance Attenuationボリュームのデシベル値、またはDistance Spread率、またはLow-PassまたはHigh-PassフィルタのHz値)を表す。。 2つ以上のコントロールポイントを選択すると、このフィールドの数値が「0」となり、これを増減させることで、選択中の全てのコントロールポイントを、現在の数値から増減できる。例えば、2つのコントロールポイントを選択して、テキストボックスYに「-5」と入力すると、両方のコントロールポイントが、下に「5」だけ移動する。 |
|||||
|
グラフビューの中心にズームインする。 |
|||||
|
グラフビューの表示を、デフォルトのズーム比「1:1」にリセットする。 |
|||||
|
グラフビューの中心からズームアウトする。 |
|||||
Max Distance |
ゲームの単位で示した、カーブの最大距離。 |
|||||
(Pin/Unpin) |
Pinアイコンを選択すると、プロパティが選択されていない時でも、プロパティのカーブの輪郭がグラフビューで表示されたままになる。 |
|||||
色 |
グラフビューのそれぞれのカーブを見分けるための、色の凡例。 |
|||||
Property |
選択すれば、以下の5種類のWwise Reflectイメージソースのカーブがグラフビューに表示された時に、編集できる。
|