single.php

UEでTransform変数の値を変更した際に別の値が更新される

久しぶりにゲーム開発を試してみようと、Unreal Engine 5で開発する過程で見つけたTransform変数の変な動作を備忘録的に投稿します。

回転のX方向を変更するとZ方向が変更される

Unreal Engineでは、Transform変数を使うと回転方向を固定値で変更するとおかしな動作になる場合があります。

大抵の場合、別のノードからピンを接続するので、遭遇するケースは少ないですが実際に遭遇すると頭が追い付かなくなる場合があります。

例えば、構造体で[Transform]変数を定義します。

データテーブルに設定すると、変数が設定できます。

表示された変数の[回転]のX方向を90に変更します。

[Enter]キーなどで確定すると、[回転]のX方向は 0.0 となり Z方向が -90.0 に更新されます。

遭遇すると[不具合?]となりますが、Unreal EngineではTransform型の仕様のようで、回転方向の値が更新された際に、X、Y、Z方向を含めた回転が再計算されて表示されるので、更新した軸とは異なる値になるようです。

つまり、再計算された結果を表示しているので、意図しない数字の並びになるという話です。

まとめ

今回は短い記事になりましたが、Unreal Engine 5のTransform変数の変な動作ついて書きました。

Transform変数の回転方向の設定を変更すると、別の方向軸の値が変更されてしまうケースがあります。

Unreal Engine でTransform型の変数を値を更新すると表示される値が意図しない形になる人の参考になれば幸いです。

スポンサーリンク

最後までご覧いただき、ありがとうございます。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です