Wwise SDK 2023.1.8
|
次のセクションでは、Wwiseバージョン2021.1.10とバージョン2022.1の間での変更点を挙げ、説明します。
プラットフォーム固有の情報は、こちらにあります:
以前のバージョンの詳細については、 以前のリリースノート をご覧ください。
AK::SpatialAudio::SetDistanceProbe
APIを追加しました。サードパーソン視点のゲームにおいて、Listener Game Objectに対し相対的なパンニングやスペーシャリゼーションを維持しつつ、別のGame Objectまでの距離に基づく音の減衰を行うことが可能となりました。AK::IAkGlobalPluginContext
にRandom Number Generatorサービスを追加しました。AK::Monitor::AddTranslator
関数、および AkXMLErrorMessageTranslator と AkWAAPIErrorMessageTranslator クラスを参照してください。大規模なプロジェクトではエラーが発生した時に遅延が生じることがあり、その場合はXMLトランスレータまたはWAAPIトランスレータを無効にすることができます。どちらのトランスレータにも識別子を検索する時間を制限するタイムアウトパラメータがあります。Auto-defined SoundBanks(自動定義サウンドバンク)は SoundBank Settingsで有効にします。詳細は SoundBank Settings を参照してください。
AK::SpatialAudio::SetImageSource
を使用することが可能となりました。AK::SpatialAudio::SetImageSource
APIはルーム引数を受け入れなくなりました。イメージソースにフィルターを適用しエミッタとリスナーのルームに合致するルームのみとすることで、この機能の適用が限定されます。ユーザは希望する動作が提供されるよう、ゲーム側のロジックからイメージソースを追加または削除します。AkSpatialAudioInitSettings::uDiffractionOnReflectionsOrder
を追加し、bEnableDiffractionOnReflectionsを置き換えました。これまではTrueに設定した場合にリフレクションパスの回折が1つだけ計算されました。これで回折ポイントの数をカスタム設定することが可能となりました。 AkInitSettings::fnProfilerPostMarker
経由で報告されるようになりました。AK::IAkMetering
インターフェースをプレーンな構造体の AK::AkMetering
に変換しました。CAkFileHelpers::CloseFile
は入力パラメータとしてすべてのプラットフォームで AkFileHandle ではなく AkFileDesc を受け入れるようになりました。AK::ISourceControl::PluginInfo
を追加しました。新しいコマンドは出力ファイル(生成されたサウンドバンクファイルやコピーされたメディアファイル)をソースコントロールで更新する時に使用します。IAkMixerInputContext::GetInputParam()
に、新しい引数が必要です。AkMemSettings::bUseDeviceMemAlways
初期化パラメータを追加し、デバイスと非デバイスの両メモリのヒープを別々にインスタンス化するのではなく、1つのヒープだけをインスタンス化できるようにしました。AK::Wwise::SourceControlContainers::IAkList
が1回につき1つのAkPosインスタンスに対応するようになりました。このためAkPosインスタンスを返すメソッドはそれ以前に取得されたAkPosを無効にするため、リストのイテレーション中にこのようなメソッドを呼び出さないようにする必要があります。詳細はインコードのSDKドキュメントを参照してください。AkCommSettings::uNotification
を削除しました: このためWwise Authoringとの通信のためのダイナミックポートは1つだけとなりました。AK::Wwise::Plugin::IProgress::IsCancelled
をconstとしました。ak.wwise.unknown_class_id
を追加しました。エラーの ak.wwise.invalid_language 、 ak.wwise.unknown_language 、 ak.wwise.unknown_platform 、 ak.wwise.invalid_type で、より多くの詳細を提供するようになりました。AK::SpatialAudio::String
の使用を削除して標準c-stringsに置き換え、外部コードによるSound Engine内のメモリ割り当てを防止しました。さらにこれらの文字列を AkRoomParams や AkPortalParams の構造体から削除し、それぞれの関数に直接渡されるようにしました。これによりパラメータ構造体におけるconstructor、copy、destructorの各メソッドが不要になり、クライアントコードが簡素化されました。AkInitSettings::uNumSamplesPerFrame
のデフォルト値を512に変更しました。これによりWwiseの初期CPU使用が増加する一方、サウンドエンジンのオーディオレイテンシ合計が大幅に減少します。引き続きゲームの総オーディオレイテンシと利用可能な演算リソースのバランスをとるために"Samples Per Frame"や"Number of Refills In Voice"の微調整を行うことが推奨されます。AK::SpatialAudio::SetEarlyReflectionsVolume
を使用して設定したアーリーリフレクションのボリュームは、ジオメトリに基づいて計算されたリフレクションのほかに AK::SpatialAudio::SetImageSource
を使用して設定されたイメージソースにも適用されるようになりました。AkPipelineBufferBase::GetCachedBuffer
で発生する短時間メモリの割り当て数を、一度に複数のフレームに割り当てられたバッファを維持する事により削減しました。AkSpatialAudioInitSettings::uMaxReflectionOrder
が0に設定されている時のリフレクションレイキャスティングを無効にしました。AK::Monitor
スレッドのCPUオーバーヘッドを大幅に削減しました。これによりWwiseで報告されるCPU測定の精度が大幅に改善されると考えられます。AK::Wwise::Plugin::CustomData::InitFromWorkunit()
関数が呼び出されません。StartProfilerCapture()
を呼び出して開始された場合は表示されません。AK::SoundEngine::SetOutputDeviceEffect
は、Audio Device ShareSetを指定しながらもデフォルトハードウェアID(0)を使用すると、適切なデバイスがあるにもかかわらず"Device not found error"を出します。CAkListener::MultiDirectionGainCorrectionForObjects
のクラッシュ。AK::SoundEngine::ReplaceOutput
を呼び出す時に古い出力Audio Deviceが複数のオーディオバスに接続されている場合は音声が途切れる可能性があります。AkInitSettings::bDebugOutOfRangeCheckEnabled
を有効にしてある時に外部ソースや一部のストリームを再生することにより、無効なオーディオデータを示す誤ったエラーが作成されます。