Build 1088で条件分岐に基づく行き止まりステートの使用が非推奨になりました

この記事は約3分で読めます。

Build 1088により発生した既知の問題により、次のようなAnimator Controllerの使用が非推奨となっています。

問題点

Build 1088により次のような問題が発生しました。

When loading into an AV3 avatar, the TrackingType param is unexpectedly set to 2 for 1-2 frames. This will cause any avatar controllers that are built with “dead-ends” to have issues.

Avatars3.0のアバター読み込み直後、TrackingTypeパラメーターがわずかな時間誤って”2″と設定されてしまう問題が発生しています。

解決策として、条件分岐後に行き止まりとなるステートマシンは非推奨となりました。

Documentation has been added to indicate that avatar authors should never “dead-end” animator branches based off parameters, otherwise undocumented or unintentional behavior may result

Write DefaultsはBuild 1004時点で非推奨となっています。
もしAnimator Controllerの動作に問題がある場合、Write Defaultsが有効となっている場合はそれが原因である可能性があります。

対応が必要なステートマシンについて

次のようなステートマシンは、変更が必要です。

条件分岐した先で行き止まりとなっており、最初に誤ったパラメーターが入力された後に変更が効きません。

ほとんどの場合でこのような構成は、誤って作成されたAnimator Controllerです。
多くの場合ではこのパターンに当てはまらないため修正の必要はありませんが、心当たりがある場合は念のため確認してください。

対応が不要なステートマシン

次のようなステートマシンは、変更不要です。

Exitまで接続されている

行き止まりとならないようにEntry~Exitまで接続されている場合は問題ありません。

Any Stateを使用している

行き先のステートに到達していても、Any Stateではその後条件に応じてステートが遷移するため行き止まりになりません。

条件分岐をしていない

条件分岐をせずに行き止まりとなるケースでは、今回の対応は必要ありません。

補足(Write Defaults関連)

Write Defaults関連でトラブルが起きたときのための補足事項。

【Unity】知らないと面倒くさい事になるかもしれないAnimatorの「Write Defaults」の動作について - テラシュールブログ
今回はWrite Defaultsについて。 この挙動は少し分かりにくいので、少し補足します。 Write Defaultsという項目 キーが未定義なアニメーションは起動時のパラメータをデフォルト値として使う Write Defaultsと...
タイトルとURLをコピーしました