回転」カテゴリーアーカイブ

【Unity】ナビメッシュエージェントを自然に振り向かせる #2

前の記事では、ナビメッシュエージェントをアニメーションで振り向かせようとすると、ルートのオブジェクトはそのままで、ボーンだけが回転してしまいました。 これはアニメーションのインポート設定でRoot Transform R… 続きを読む »

【Unity】ナビメッシュエージェントを自然に振り向かせる #1

攻撃後の敵がプレイヤーの方へ振り向く動作が少し不自然なので、振り向くアニメーションを追加してみます。 まずBlenderで左右に振り向くアニメーションを作りました。 今回はとりあえず攻撃した後必ずターンするようにしました… 続きを読む »

【Unity】はしごに登る #4

はしごに裏から乗ろうとするとキャラクターがはしごに引っかかってしまう問題を解決してみました。 キャラクターをはしごの前に移動させるときにキャラクターコントローラーのMoveメソッドを使うと、はしごのコライダーに当たって止… 続きを読む »

【Unity】はしごを登る #2

はしごにレイが当たっているときにマウスクリックではしごを登り始め、登っているときはプレイヤーの回転を制限します。また、ななめのハシゴに沿って登れるようにします。 // カメラ // はしごをのぼる else if (hi… 続きを読む »

【Unity】はしごを登る #1

FPSコントローラーではしごを登ってみます。 はしごを登る時は、はしごからの距離やキャラが回転できる範囲を常に同じにしたいと思ったので、今回はキャラクターコントローラーをはしごの前の指定の位置へワープさせ、指定の方向へ回… 続きを読む »

【Unity】一人称視点で棒を登る #2

棒を登っているときに、歩いているときのようにカメラを周期的に動かしてみます。 カメラの回転はMouseLookクラスのLookRotation()で行うので、その中で体のY軸の回転と、カメラのX軸の回転にそれぞれ変数を足… 続きを読む »

【Unity】ハンドルで開閉するゲートに重力を加える

ハンドルを回して開閉するゲートに重力を加えます。前の記事では、マウスドラッグによってハンドルとゲートを両方動かしていましたが、今回はゲートだけを動かして、ゲートの速度を使ってハンドルを回転させてみました。 using S… 続きを読む »

【Unity】ハンドルを回転させてゲートを開け閉めする #2

ゲートの移動範囲がずれないように修正しました。 前の記事ではハンドルの回転だけを制限していましたが、ジョイントやコライダーの衝突を使ってゲートの動きを制限して、ゲートが制限まで達したときにハンドルを固定するようにします。… 続きを読む »

【Unity】マウスドラッグでバルブを回す

マウスカーソルをくるくると円形にドラッグして、バルブのオブジェクトを回してみます。 まずバルブにコライダーとリジッドボディ、ヒンジジョイントを付けます。リジッドボディのAngular Dragで抵抗を設定します。 ヒンジ… 続きを読む »

【Unity】一人称視点でオブジェクトを掴んで移動させる #2

前の記事の勘違いを修正しました。 前の記事では、プレイヤーとItemの正面のなす角が小さくなるように回転させたいのに、内積をそのまま使っていました。 コサインは角度が小さいと1になって90度のときに0になるので、内積を1… 続きを読む »

【Unity】一人称視点でオブジェクトを掴んで移動させる

一人称視点でオブジェクトを掴んで移動させます。掴んでいる間も、物理演算で他のアイテムや床と衝突するようにします。 前のスクリプトに追記して、近くでアイテムにレイがあたっているときにマウスの左クリックをすると、アイテムを掴… 続きを読む »

【Unity】Cubeをカメラから見て常に同じ向きに回転させる

カメラの前に置いたCubeなどのオブジェクトを、カメラの向きを基準にして回転させてみます。 マウスカーソルの移動を使って回転させるときに、Cubeの向きに沿って回転させると、Cubeの回転と一緒に軸も回転するので、カメラ… 続きを読む »