ぶろぐめんどくさい

技術系の記事と漫画レビューが入り混じった混沌

2DゲーのキャラクターにつけるRigidbody

f:id:be116:20180513153904p:plain

壺おじさんは上下左右にしか動けない。 壺おじさんの体は地形に合わせて傾く。 壺おじさんの体は常にこちらを向いている。 そんな壺おじさんの物理挙動をUnityで再現したい。

キャラクターにRigidbodyをつけるだけでは全方向に進み、回転する。 それでは、2DゲーにおけるRigidbodyのConstraintsをどうすべきか。

答えはこれ。

f:id:be116:20180513154212p:plain

  • Freeze PositionのZにチェック
  • Freeze RotionのXYにチェック

これは、キャラクターがこちらを向いている場合の制約である。 キャラクターが進行方向を向いている場合XとZが入れ替わる。

これで上下左右に動き、地形に合わせて傾き、常に一定の方向を見ているキャラクターができあがる。