このエラーはGame Object IDを必要とするAPI関数が、認識できないIDでコールされた時に発生します。関数の名前がゲームコードで参照できるように提供されます。Game Objectは過去のある時点で知られていたもので、その古い名前がGame Object列に表示されます。ゲームオブジェクトのライフタイムは、AK::SoundEngine::RegisterGameObjから、AK::SoundEngine::UnregisterGameObjまでです。これらのコールの後にこの関数がコールされた場合、このエラーが起きます。
なお、コールシーケンスとして、例えば:
AK::SoundEngine::RegisterGameObj(MyGameObjID);
AK::SoundEngine::PostEvent("Play_MySound", MyGameObjID);
AK::SoundEngine::UnregisterGameObj(MyGameObjID); というようなコールシーケンスは、反則でありません。
![]() | Unityユーザー |
|---|---|
Wwise Game Objectのライフタイムは、 |
考えられる原因:
関数コール前にゲームオブジェクトの登録が解除されました。
Unityユーザーへ: "Script Execution Order"が正しくないと、上記の現象が起きる可能性があります。
推奨される解決策:
Profiler Settings で API Calls を有効にします。次に、あなたのシナリオを再現します。Capture Logでは、問題となっているコールとすべてのパラメータがエラー直前に表示されるはずです。
Game Object 3D ViewerでGame Objectのライフタイムを確認します。Capture Logと比較するために、タイムスタンプをメモしておきます。
関数コールの順序、関連する RegisterGameObj と UnregisterGameObj の間にあるように変更します。
Unityユーザーへ: Unityの"Script Execution Order"を確認してください。