目次

統合の詳細 - RTPC

RTPCは、 AK::SoundEngine::SetRTPCValue() 関数を使用して更新可能なリアルタイムパラメータです。Event Actionによって RTPC 値を変更することはできないので、自分で設定する必要があります。

RTPC 値

RTPC値は、常に32ビット浮動小数点値を表す AkRtpcValue として渡されます。この値は、サウンドデザイナーが Wwise で事前に定義した RTPC カーブに直接補間するために使用されます。

パラメータが Wwise で定義されたカーブを超えている場合には、カーブ上の極値が使用されます。パラメータが最大値を超えると、カーブの右端の値が使用され、パラメータが最小値未満の場合は、カーブ上の左端の値が使用されます。RTPC が、ブール値を示す場合は、1が True、0が False を表します。

RTPC値の設定

RTCP値は以下のように設定されます:

AKRESULT AK::SoundEngine::SetRTPCValue( 
    AkRtpcID        in_rtpcID,                                      // ID of the RTPC
    AkRtpcValue     in_value,                                       // Value to set
    AkGameObjectID  in_gameObjectID = AK_INVALID_GAME_OBJECT        // Associated game object ID
);

または

AKRESULT AK::SoundEngine::SetRTPCValue( 
    const char *    in_pszRtpcName,                                 // Name of the RTPC
    AkRtpcValue     in_value,                                       // Value to set.
    AkGameObjectID  in_gameObjectID = AK_INVALID_GAME_OBJECT        // Associated game object ID
);

または

AKRESULT AK::SoundEngine::SetRTPCValue( 
    const wchar_t * in_pszRtpcName,                                 // Name of the RTPC
    AkRtpcValue     in_value,                                       // Value to set.
    AkGameObjectID  in_gameObjectID = AK_INVALID_GAME_OBJECT        // Associated game object ID
);

RTPC値は、ゲームオブジェクト上で再生中のサウンド、バスパラメータ、ソースプラグインやエフェクトプラグインに影響を与えます。以下では、これらすべての可能性を検討して行きます。

ID 使用の有効化

ID を使用して作業するには、WwiseのGenerate SoundBanks ダイアログボックス内 "Generate header file" オプションでバンクを生成する必要があります。Wwise_IDs.h という名前の定義ファイルには、全ての必要なIDが含まれています。この定義ファイルは、バンクが生成されるたびに更新されます。

RTPCとゲームオブジェクト

RTPCは、Sound SFX、Sound Voice、コンテナまたはアクターミキサーのオブジェクトに影響を与えることによりゲームオブジェクトの動作を変更するのに使用されます。また、スイッチも RTPC の使用を介して変更されます(Switchの駆動 を参照)。

1つの関数呼び出しで、グローバルな RTPC 値を設定することができます。これを実行するには、AK_INVALID_GAME_OBJECT をゲームオブジェクトIDとして使用、または、AkGameObjectID パラメータを指定せずに、AKSoundEngine::SetRTPCValue() メソッドを呼び出します。 ただし、サウンドオブジェクトが、有効な AkRtpcID および AkGameObjectID 入力を使用して、このメソッドへの呼び出しをいったん受け取ると、ゲームオブジェクトはアサインされたものとみなされ、もはやグローバル RTPC 値の影響を受けません。

RTPC とバス

Wwise では、バスのパラメータの一部を RTPC を使用して変更することができます。バスが、RTPC 値変更の影響を正常に受けるようにするには、RTPCとゲームオブジェクト で説明されているように、AKSoundEngine::SetRTPCValue() メソッドへの呼び出しが AK_INVALID_GAME_OBJECT パラメータを使用して実行される必要があります。

RTPCとプラグイン

Wwise では、エフェクトプラグインとソースプラグインのプロパティ、例えばリバーブレベル、ピッチやローパスカットオフ周波数などに、RTPC が影響を与えるようにすることができます。プラグインを使用しながら、バス上のこれらのプロパティに RTPC 値が正常に影響を与えるようにするには、RTPCとゲームオブジェクト で説明されているように、AK_INVALID_GAME_OBJECT パラメータで、AKSoundEngine::SetRTPCValue() メソッドへの呼び出しが実行される必要があります。プラグインがゲームオブジェクトに使用される場合は、有効な AkGameObjectID 値を使用して AK::SoundEngine::SetRTPCValue() メソッドへの呼び出しが実行される必要があります。

Note.gif
注釈: グローバル RTPC 値の設定と、ゲームオブジェクトごとの RTPC 値の設定の違いに注意することが重要です。スイッチコンテナなどのサウンド再生中 Wwise オブジェクトが RTPC の影響を受ける場合、有効な AkGameObjectID 値を使用して、AKSoundEngine::SetRTPCValue() メソッドへの呼び出しを実行しなければなりません。再生時に、このようなゲームオブジェクト固有の値が設定されていない場合、サウンドエンジンは、AK_INVALID_GAME_OBJECT パラメータでの、または、指定ゲームオブジェクトなしでの、AKSoundEngine::SetRTPCValue() 呼び出しにより設定されるグローバル RTPC 値を探します。このグローバル値が存在しない場合、サウンドエンジンは Wwise オーサリングアプリケーションで指定されている Game Parameter のデフォルト値を使用します。
Caution.gif
注意: 同じ RTPC を、サウンド、バスおよびエフェクトに使用することが可能であることに注意してください。これにより予期しない動作が発生する場合がありますので、ゲームオブジェクト、バス、エフェクトそれぞれに異なる RTPC を使用することをお勧めします。例えば、レーシングゲームで、デフォルト RPM 値を10台の車のエンジンに設定したとします。同時に、車のエンジンサウンドを再生するバスへローパスフィルタを適用することができます。この推奨事項に従えば、ローパスフィルタエフェクトのソースを特定するのが容易になります。

RTPC 統合例は、RTPC 統合例 をご覧ください。