【Unity】FPSカメラを自動で回転させて指定した位置へ向ける
FPSコントローラーのカメラが指定したオブジェクトの方へ向きかけたら、自動でそのオブジェクトが正面に見えるようにカメラを回転してみます。 まずターゲットのCubeにタグとコライダーを付けました。 プレイヤーのスクリプトで… 続きを読む »
FPSコントローラーのカメラが指定したオブジェクトの方へ向きかけたら、自動でそのオブジェクトが正面に見えるようにカメラを回転してみます。 まずターゲットのCubeにタグとコライダーを付けました。 プレイヤーのスクリプトで… 続きを読む »
FPSキャラのカメラを横に傾ける #1、FPSキャラのカメラを横に傾ける #2でFPSコントローラーのカメラを動かすと、壁を貫通して向こう側が見えてしまいます。 傾けていて壁に当たると自動でキャンセルするようにしてみます… 続きを読む »
ロッカーを左クリックすると開いて、FPSコントローラーで動かすプレイヤーが中に入ります。もう一度左クリックするとロッカーから出ます。 まず一人称のカメラからレイを飛ばして手が届く位置にロッカーがあるかどうかを調べます。 … 続きを読む »
一人称視点で手に持った武器で攻撃してみます。 まずBlenderで右腕のモデルにボーンを付けました。 これに前の記事の方法でナイフを持たせてアニメーションを作ります。 今回は、呼吸とともに腕がかすかに上下するアニメーショ… 続きを読む »
一人称キャラの手元を作って、カメラの動きに少し遅れてついてくるようにしてみます。 まず、人型のモデルの腕以外を削除して、ボーンを付けて、懐中電灯をもたせました。 今回はこの状態で固定して、ボーンを削除してUnityに持っ… 続きを読む »
スタンダードアセットのFPSコントローラーでしゃがめるようにしてみました。 FirstPersonControllerでは、カメラの位置をUpdateCameraPosition()で更新しているので、ここで高さを変えら… 続きを読む »
掴んだオブジェクトがプレイヤーの視線方向の軸に沿って回転できるようにしました。 // アイテムを移動させる else if (state == 2) { itemRb.velocity = (transform.forw… 続きを読む »
前の記事の勘違いを修正しました。 前の記事では、プレイヤーとItemの正面のなす角が小さくなるように回転させたいのに、内積をそのまま使っていました。 コサインは角度が小さいと1になって90度のときに0になるので、内積を1… 続きを読む »
左クリックを押している間はアイテムを持ち上げて、右クリックを押すと視線方向にそのアイテムを投げます。 前の記事のスクリプトのアイテムを移動させる箇所に投げる処理を追記します。 // アイテムを移動させる else if … 続きを読む »
一人称視点でオブジェクトを掴んで移動させます。掴んでいる間も、物理演算で他のアイテムや床と衝突するようにします。 前のスクリプトに追記して、近くでアイテムにレイがあたっているときにマウスの左クリックをすると、アイテムを掴… 続きを読む »
前の記事の方法で持ち上げて回転させるアイテムを遠ざけたり近くに寄せたりして観察できるようにします。 アイテムを持ち上げている時にマウスドラッグでアイテムを回転させますが、シフトキーを押しながらドラッグするとアイテムは回転… 続きを読む »
一人称で掴んだオブジェクトを目の前に持ってきて、マウスドラッグで回転させてみました。 スタンダードアセットのFPSコントローラーのカメラにスクリプトを付けます。 using System.Collections; usi… 続きを読む »