主に特定のオブジェクトに操作キャラと同等の当たり判定の適用及び操作を行いたい場合などに使用する。
応用用途は広いが、この記事を書いた時点ではバイクや車の挙動制御に用いられている場合が多い。
恐らくLogiX経由で移動制御することでNPCを歩かせるような動作も実装可能と思われる。
以下、管理人の理解度などに応じて記述が追加されます。
応用用途は広いが、この記事を書いた時点ではバイクや車の挙動制御に用いられている場合が多い。
恐らくLogiX経由で移動制御することでNPCを歩かせるような動作も実装可能と思われる。
以下、管理人の理解度などに応じて記述が追加されます。
移動時の地面や壁との衝突判定については、
設定したSlot、もしくはCharacterControllerで設定したrootの原点の中心点のみに判定が存在する。
同じSlotにColliderが設定されていてもCharacterControllerの挙動については無視される。
それ以外の衝突判定については、CharacterController内のHeightとRadiusの大きさに依存する。
子に入っているオブジェクトより小さくすることは出来ない。
何も考えずに設定をすると、モデルのど真ん中が地面と壁の判定になる為、以下のような対策が必要になる。
設定したSlot、もしくはCharacterControllerで設定したrootの原点の中心点のみに判定が存在する。
同じSlotにColliderが設定されていてもCharacterControllerの挙動については無視される。
それ以外の衝突判定については、CharacterController内のHeightとRadiusの大きさに依存する。
子に入っているオブジェクトより小さくすることは出来ない。
何も考えずに設定をすると、モデルのど真ん中が地面と壁の判定になる為、以下のような対策が必要になる。
空のSlotを追加してそれにCharacterControllerとGrabを追加。
追加したSlotの真上に設定したいオブジェクトを設置して子にする。
子のオブジェクトのGrabbableをFalseにする。
これで足元に判定を移動しつつ掴んで移動なども可能になる。
子のGrabbableをTrueにしておくと子だけが移動してしまうので注意。
追加したSlotの真上に設定したいオブジェクトを設置して子にする。
子のオブジェクトのGrabbableをFalseにする。
これで足元に判定を移動しつつ掴んで移動なども可能になる。
子のGrabbableをTrueにしておくと子だけが移動してしまうので注意。
空のSlotを追加して地面の判定を決める点までは似ているが、
CharacterRootに任意のSlotを指定することで、特定のSlotをRootにしてかつそのSlotの原点をあたり判定とすることが出来る。
CharacterControllerを追加したSlotと当たり判定のあるSlotを別にすることが出来る。
CharacterRootに任意のSlotを指定することで、特定のSlotをRootにしてかつそのSlotの原点をあたり判定とすることが出来る。
CharacterControllerを追加したSlotと当たり判定のあるSlotを別にすることが出来る。
コメントをかく