バージョン
ゲームのサウンドやミュージック、モーションなどを強化するには、プロジェクト階層にあるオブジェクトに1つ以上のエフェクト(Effects)を適用する方法があります。Wwiseはオープンアーキテクチャであるため、簡単に自分でエフェクトプラグインを作成して定義できます。多様なエフェクトを活用することで、ゲームのサウンドやミュージック、モーションなどが活き活きとし、よりリアルになります。さらに、Wwiseにいくつかのエフェクトプラグインやファクトリシェアセットが同梱されているので、この作業に利用してください。
環境音響を再現するために使用されるエフェクトについては「Effectを使用して環境音響を実現する」をご参照ください。
エフェクト(Effects)は、複数のプロパティをまとめた、インスタンスと呼ばれるもので構成されます。設定したインスタンスをShareSetとして使えば、プロジェクトの複数のオブジェクトに適用できます。ShareSetを利用するメリットは、個別のオブジェクトごとにエフェクトのプロパティを変更する必要がないことです。また、目的に応じて、特定のオブジェクトに合わせたカスタムインスタンスを設定することもできます。
ShareSetのエフェクトのプロパティを変更すると、そのShareSetを使用する全てのオブジェクトが影響を受けます。
一般的に、階層のオブジェクトやバスにエフェクトを適用する時は、ShareSetとして適用します。Wwiseにデフォルトや設定済みのエフェクトShareSetsが同梱されていますが、実際には自分でもShareSetを作成して追加することになるでしょう。各エフェクトShareSetによって、エフェクトの異なるバージョンが成立し、これをプロジェクトの様々なオブジェクトに適用します。
WwiseでエフェクトShareSetを作成できるのは、以下の2ヶ所です。
Project Explorer
Property Editor
Project ExplorerでエフェクトShareSetを作成するには:
Project Explorerで、ShareSetsタブに切り替える。
Effectsセクションで、シェアセットを作成するWork Unitを、右クリックする。
ショートカットメニューが表示される。
New Childをクリックする。
設定可能なエフェクトプラグインのリストが表示される。
作成するエフェクトのタイプを選択する。
新しいインスタンスが、そのWork Unitの子として階層内に表示されます。
デフォルトのインスタンス名を、新しいShareSetの内容が分かる名前に置き換えて、Enterを押す。
ShareSetの新しい名前と、角括弧内にエフェクトのタイプが、エフェクト階層に表示される。
注釈 | |
---|---|
ShareSetの名前は、必ず固有のものとし、文字、数字、アンダースコアのみを使用してください。また、必ず英数字で始めます。ShareSet名を変更するには、ShareSetを右クリックしてRenameを選択して、新しい名前を入力します。ShareSetをゲームに実装した後は、変更すると追加のプログラミングが必要となるため、必要不可欠でなければ避けてください。 |
Property EditorでエフェクトShareSetを作成するには:
Property Editorに、オブジェクトを1つロードする。
Effectsタブに切り替える。
注釈 | |
---|---|
最上位オブジェクトでない場合、Effectを選択するためには Override parent を選択する必要があります。 |
表Effectsで、セレクタボタン (>>)をクリックする。
選択可能なエフェクトのリストが表示される。
適用するエフェクトタイプの上まで、マウスのカーソルを移動する。
該当するエフェクトShareSetのリストが表示される。
New をクリックします。
New Effectダイアログが開く。
Effect ShareSetを作成するWork Unitを選択する。
ShareSetの名前を入力する。
注釈 | |
---|---|
ShareSetの名前は、必ず固有のものとし、文字、数字、アンダースコアのみを使用してください。また、必ず英数字で始めます。ShareSet名を変更するには、ShareSetを右クリックしてRenameを選択して、新しい名前を入力します。 |
OK をクリックします。
新しいShareSetが作成され、選択したオブジェクトに適用される。
不要となったShareSetは削除できます。なお、削除する前に、そのShareSetを使うオブジェクトがないことを確認してください。ShareSetを削除すると、登録している全てのオブジェクトから自動的に削除されます。
ShareSetを削除するには:
Project Explorerで、ShareSetsタブに切り替える。
Effectsセクションで、削除するShareSetをクリックする。
Deleteキーを押す。
ShareSetが削除され、それが適用されていたオブジェクトからも削除されます。
Effect ShareSetを作成したら、編集して、プロジェクト階層にある任意のWwiseオブジェクトに適用できます。1つのWwiseオブジェクトに対して最大255種類のエフェクトを適用できます。連続する複数のエフェクトを適用すると、リストに表示された順番でエフェクトが処理されます。エフェクトを適用する順番によってオブジェクトの最終的な結果が変わってくるので、この順番が重要です。
Effectはバスにも適用でき、適用方法は各種オブジェクトと同じです。バスにエフェクトを適用すると、エフェクトが適用される前に、入ってくる全てのオーディオデータをサブミックスします。
CPUにかなりの負荷がかかるエフェクトもあるので、その場合は効率的な適用方法を充分に検討してください。エフェクトを適用する際のコツについては「Effectに関するコツとベストプラクティス」を参照してください。
ヒント | |
---|---|
時間に基づくエフェクト(RoomVerb、Delayなど)をミュージックオブジェクトに適用してしまうと、このオブジェクトで設定済みの、時間に基づくプロパティや動作と干渉することがあるので、避けた方が良いでしょう。干渉を避けるには、Effectをオブジェクトではなく、オブジェクトがルーティングされるバスに対して適用します。 |
オブジェクトにエフェクトShareSetを適用するには:
Property Editorに、オブジェクトを1つロードする。
Effectsタブに切り替える。
注釈 | |
---|---|
最上位オブジェクトでない場合、Effectを選択するためには Override parent を選択する必要があります。 |
表Effectsで、セレクタボタン (>>)をクリックする。
オブジェクトに適用できるエフェクトのリストが表示される。
適用するエフェクトタイプの上まで、マウスのカーソルを移動する。
該当するエフェクトShareSetのリストが表示される。
適用するShareSetをクリックする。
ShareSetが、そのオブジェクトに適用されます。
オブジェクトに適用するエフェクトを追加するには、上記3〜5を繰り返す。
注釈 | |
---|---|
オブジェクト1つに対して最大255個の異なるエフェクトを適用できます。 |
Wwiseのエフェクトインスタンス(Effect instances)は、以下の2種類に分類できます。
Custom effect instancesは、1つのオブジェクトのみに適用される。カスタムインスタンスのプロパティを変更すると、この1つのオブジェクトだけが影響を受けます。
ShareSets は、複数のオブジェクトに適用できる。ShareSetのプロパティを変更すると、そのShareSetを使用する 全てのオブジェクトが、影響を受ける。
デフォルトで、作成した全てのエフェクトインスタンスが、最初はShareSetとなります。1つのオブジェクトだけのために、ShareSetを調整することも可能です。その場合は、Effect ShareSetをカスタムエフェクトインスタンスに変換します。例えば、Funky_ReverbというShareSetを作成したものの、Speech_1というサウンドだけに使う、特別バージョンが必要な場合を考えます。まずSpeech_1にFunky_Reverbを適用して、それをカスタムインスタンスへと変換してから、調整します。この時の変更は、Speech_1だけに適用され、Funky_ReverbShareSetに登録されたオブジェクトには適用されません。
ShareSetをカスタムインスタンスに変換するには:
Property Editorに、エフェクトが適用されているオブジェクトをロードする。
Effectsタブに切り替える。
表Effectsで、カスタムインスタンスに変換するエフェクトの、Modeリストより、Define customを選択する。
エフェクトインスタンスの名前に、“Custom”という単語が添付される。これで、このインスタンスを変更しても、影響を受けるのは、このインスタンスを使用する1つのオブジェクトだけである。
注釈 | |
---|---|
ShareSetのデフォルト(カスタム)バージョンをオブジェクトに適用して、カスタムエフェクトインスタンスを作成することもできます。オリジナルのShareSetも引き続き存在し、それに登録されたオブジェクト用に、変更されず残ります。 |
オブジェクトにエフェクトを適用した後に、エフェクトをバイパスすることで処理前の元のバージョンを試聴することができます。1つのオブジェクトに複数のエフェクトを適用することができ、個々のエフェクトをバイパスしたり、すべてのエフェクトをバイパスしたりすることができます。階層のどのレベルにおいてもエフェクトをバイパスすることができ、ゲーム中であってもEvent ManagerのBypassアクションを使用したりRTPCやステートを使用したりすることでエフェクトをバイパスできます。
エフェクトを適用することで実行時のCPU使用量が増加します。CPU使用率に懸念がある場合はエフェクトをバイパスしてから、Performance MonitorでCPU使用量の変化を観察することができます。CPU関連のカウンタの有効化の詳細については 「Performance Monitor Settings」 を参照してください。エフェクトやCPU使用量の詳細については 「Effectに関するコツとベストプラクティス」 を参照してください。
1つまたは複数のエフェクトをバイパスするには:
ObjectタブまたはProperty Editorでオブジェクトを開きます。
Effectsタブを選択します。表Effectsにこのオブジェクトに適用されるすべてのエフェクトが表示されます。各エフェクトが別々の行に表示されます。
注釈 | |
---|---|
最上位オブジェクトでない場合、Effectを選択するためには Override parent を選択する必要があります。 |
以下のいずれかの方法で個別のエフェクト、またはすべてのエフェクトをバイパスします:
エフェクトを個別にバイパスするには、表中のそのエフェクトを探し、行の右側にある Bypass を選択します。必要に応じて繰り返します。
すべてのエフェクトをバイパスするためには、表Effectsの下の Bypass All を選択します。
選択したエフェクトは処理されなくなります。
各種オブジェクトに適用されたエフェクト(単数または複数)を、SoundBankにパッケージングする前にレンダリング(Render)することができます。こうするとゲームプレイ中の処理負荷が軽くなりますが、Bypass EffectというEvent Actionでこのエフェクトをバイパスすることができなくなります。また、エフェクトをレンダリングしてしまうと、そのエフェクトにRTPCカーブやState変更を適用できなくなります。
連続する複数のエフェクトのうち、1つのエフェクトをレンダリングすると、それ以前のエフェクトも自動的にレンダリングされます。例えば、サウンドオブジェクトに以下の3種類のエフェクトを適用した場合を考えます。
Matrix Reverb
Parametric EQ
Compressor
ここでParametric EQエフェクトのレンダリングオプションを選択すると、Parametric EQとMatrix Reverbの両方のエフェクトがレンダリングされてから、SoundBankにパッケージングされます。さらに、Effectチェインの最初にくるエフェクトをバイパスすると、そのあとのエフェクトはまったくバイパスを設定していなくても、それらをレンダリングすることはできません。
注釈 | |
---|---|
あるエフェクトのBypassオプションとRenderオプションの両方を選択すると、エフェクトのBypassオプションが優先されて、レンダリングされません。 |
エフェクトをレンダリングするには:
Property Editorに、オブジェクトを1つロードする。
Effectsタブに切り替える。
注釈 | |
---|---|
最上位オブジェクトでない場合、Effectを選択するためには Override parent を選択する必要があります。 |
表Effectsで、レンダリングする各エフェクトに対して、それぞれRenderオプションを選択する。
SoundBank生成時に、選択したエフェクトとそれ以前の全てのエフェクトが、オブジェクト上で事前にレンダリングされる。
注釈 | |
---|---|
SoundBankの生成については「プロジェクトの各種SoundBankの生成」を参照してください。 |
全てのエフェクトインスタンス(Effect instances)のプロパティを、目的に合わせて編集できます。特に新しいShareSetやカスタムインスタンスでは、エフェクトを適用する前にプロパティを編集することが多くなります。編集しないと、そのエフェクトのプロパティがデフォルト設定のままで残ってしまいます。また、エフェクトのいくつかのプロパティにRTPCを適用すれば、エフェクトインスタンスをさらに強化できます。
なお、ShareSetのプロパティ値を変更すると、そのインスタンスを使う全てのオブジェクトに影響します。一方、カスタムエフェクトインスタンスを編集すると、そのエフェクトが適用される1つのオブジェクトだけが、変更されます。
注釈 | |
---|---|
プリセットを使えば、エフェクトのプロパティを保存して、複数のエフェクトインスタンスを素早く作成できます。プリセットについてはプリセットを使用するを参照してください。 |
ShareSetを編集するには:
Project ExplorerのShareSetsタブで、編集するShareSetをダブルクリックする。またはProperty EditorにあるEffectグループのEditをクリックする。
選択したエフェクトのEffect Editorが開く。
プロジェクトで求められるサウンド表現に合わせて、エフェクトのプロパティを設定する。
注釈 | |
---|---|
エフェクトプロパティの説明は、Effect EditorのHelpボタンをクリックすると表示される。 |
カスタムエフェクトインスタンスを編集するには:
Property Editorに、オブジェクトまたはバスを1つロードする。
Effectsタブに切り替える。
表Effectsで、編集するカスタムインスタンスの、Edit icon (...)をクリックする。
選択したエフェクトのEffect Editorが開く。
プロジェクトで求められるサウンド表現に合わせて、エフェクトのプロパティを設定する。
注釈 | |
---|---|
エフェクトプロパティの説明は、Effect EditorのHelpボタンをクリックすると表示される。 |
カスタムエフェクトインスタンスのプロパティを元のShareSetのプロパティ値に戻すには、Reset Effect Settingsをクリックする。
複数のエフェクト(Effects)を処理する場合の順番は、オブジェクトの最終的な結果を大きく左右することがあります。このため、正しい順番でエフェクトを適用することが重要です。Wwiseは、エフェクト表の順番でエフェクトを処理します。必要に応じて、エフェクトをエフェクトリストの別の場所に移動して、簡単に順番を変更できます。
エフェクトの順番を変更するには:
Property Editorに、オブジェクトまたはバスを1つロードする。
Effectsタブに切り替える。
表Effectsで、順番を先または後へ移動するエフェクトを選択する。
その行が、ハイライト表示される。
リスト内の移動先まで、エフェクトをドラッグする。
リストでエフェクトが挿入される位置が、赤いラインで表示される。