【Unity】ThirdPersonUserControlの方向転換動作おかしい時の対処
事象
Standard AssetsのThirdPersonUserControlを使用してEthanを動かすとき、デフォルトの正しい動きは↑↓キーで前進後退、←→方向キーで方向転換するはずだが、なぜが←→キーを押すとそれぞれグローバル座標の-XとX方向を向いてそのまま走り出してしまうようになってしまった。
←方向キーを押していると、-X方向を向いて走り出す
調査
デフォルトの状態との違いをいろいろと調べてみると、どうやらcameraが怪しいそうだと分かった。いろいろと触っているうちにMain Cameraを削除してしまい、別途Cameraを作成してEthanの子オブジェクトとして入れている状態であった。
またこのCameraのInspectorを調べたところ、Tagが振られていない。
一方、別環境のデフォルト設定を調べてみるとTagにはMain Cameraがついていた。どうやらこれが怪しい。
対処
CameraにMain Camera Tagを設定したところ、正常な動きである←→キーでの方向転換が行えるようになった。
どうやら、Standard AssetsのThirdPersonControlスクリプトはMain Camera Tagのオブジェクトを呼び出して使っているらしい。
スクリプトをしっかり読んでないので正確なことは分かりませんが、Main Camera Tagが見つからない場合には←→キーではグローバル座標のX軸を目指して動く仕様になっているように見えた。
勉強になりました。
Unityを一から学ぶのにおすすめの本はコチラ