【Unity】壁の移動処理で悩む

前回、Rayの設定まで出来たので、 キャラクターの移動処理を考え行きます。 横スクロールのアクションと言う事で、 横に移動しながら、ジャンプ・壁を登る・スライディング・落下 こんな動きを実装したいなと考えています。 そこで、キャラクターを移動させる方法を勉強してみたいと思います。 簡単に移動実装させるならCharacterControllerがあるみたいですが、 折角なんで自前で考えてみようと思います。 ちなみにAndroidアプリを意識しているので、 横移動は、強制的に右移動させる予定です。 まず移動処理なんですが、今まではTransformを使っていました。 しかし、Rigidbodyを積んでるキャラには使えないって言うか向いてません。 なぜかと言うと、Transformは座標移動を強制的に行うので、 物理計算が効きません。 単純に言うと壁をすり抜けたりします。 また、Transform移動中でも物理計算が行われている為、 物理計算の移動と違う移動量だと物理計算が再計算を繰り返す為、 リソースを取るんだとか、 なのでTransformを使う場合はKinematicにする必要があります。 アクション系は、物理計算を使いたいので、 Transformは封印して、違う方法を探す事に… Google先生に聞いたところ、 Rigidbodyには、直接移動命令を出す事ができるって事です。 これなら物理計算の恩恵を受け…

続きを読む