【Unity】火の付いたろうそくを持たせる
VFXグラフで作った火の付いたろうそくをFPSキャラに持たせてみます。 煙のエフェクトの色や速度を変えて炎のエフェクトを作りました。これをプレイヤーに持たせるろうそくに追従させます。 火のVFXグラフに位置を伝えるための… 続きを読む »
VFXグラフで作った火の付いたろうそくをFPSキャラに持たせてみます。 煙のエフェクトの色や速度を変えて炎のエフェクトを作りました。これをプレイヤーに持たせるろうそくに追従させます。 火のVFXグラフに位置を伝えるための… 続きを読む »
FPSコントローラーで手榴弾を投げてみます。 まずBlenderで手榴弾を作って前の記事の方法で手に持たせ、アニメーションを作りました。 手榴弾は右の手のひらのボーンの子オブジェクトになっています。ピンは手榴弾の子オブジ… 続きを読む »
FPSコントローラーに両手を付けて、刀で攻撃させてみます。 まず前の記事と同様にBlenderで腕を作ってアニメーションを付け、Unityに持ってきました。 今回は「刀を取り出す」「刀を構える」「刀を振る」「刀を持って歩… 続きを読む »
ハンドルを回して開閉するゲートに重力を加えます。前の記事では、マウスドラッグによってハンドルとゲートを両方動かしていましたが、今回はゲートだけを動かして、ゲートの速度を使ってハンドルを回転させてみました。 using S… 続きを読む »
ゲートの移動範囲がずれないように修正しました。 前の記事ではハンドルの回転だけを制限していましたが、ジョイントやコライダーの衝突を使ってゲートの動きを制限して、ゲートが制限まで達したときにハンドルを固定するようにします。… 続きを読む »
マウスドラッグでハンドルを回転させて、ゲートを開閉してみます。 前の記事のバルブを回す処理をバルブにつけるスクリプトで行います。 using System.Collections; using System.Collec… 続きを読む »
レバーを使って機械をオンオフしてみます。 まずレバーを作ってHingeジョイントを付けます。レバーの根本で、レバーの回転に垂直な方向に軸を設定しました。レバーが元の位置に戻るようにSpringを使います。また、Limit… 続きを読む »
前の記事でカメラを回転させるときに、カメラを縦横に動かして柱の角から覗けるようにします。 FirstPersonControllerクラスではカメラの移動はUpdateCameraPosition()で行うので、ここにカ… 続きを読む »
曲がり角から覗き見るように、一人称視点のプレイヤーのカメラを横に傾けます。今回はカメラの回転だけをやってみました。 Qキーで左、Eキーで右にリーンします。FPSコントローラーでカメラの回転をMouseLookクラスのLo… 続きを読む »
一人称視点で机の引き出しや扉を動かしてみます。 まず、Blenderで机を作って、UnityでコライダーやRigidbodyを追加します。引き出しにはConfigurable Jointを、扉にはヒンジジョイントを付けま… 続きを読む »
FPSキャラの手を引っ込めたり、持たせる武器を切り替えてみます。 まず前の記事と同様に、ナイフやライターを取り出すアニメーションやライターの火を付けるアニメーション等を作りました。 これらをUnityに持っていって、アニ… 続きを読む »
一人称視点で歩いているときに足のステップに合わせて手元を小刻みに動かしてみます。 スタンダードアセットには、キャラクターが歩くのに合わせてカメラを上下左右に揺れ動かすためのCurveControlledBobクラスがある… 続きを読む »
一人称視点で手に持った武器で攻撃してみます。 まずBlenderで右腕のモデルにボーンを付けました。 これに前の記事の方法でナイフを持たせてアニメーションを作ります。 今回は、呼吸とともに腕がかすかに上下するアニメーショ… 続きを読む »
一人称キャラの手元を作って、カメラの動きに少し遅れてついてくるようにしてみます。 まず、人型のモデルの腕以外を削除して、ボーンを付けて、懐中電灯をもたせました。 今回はこの状態で固定して、ボーンを削除してUnityに持っ… 続きを読む »
ドアを開閉中にドアがプレイヤーに当たると、キー入力がなくても自動でプレイヤーを後ろに移動させます。 ドアの開閉中はプレイヤーの移動や回転をロックしているので、ドアが引っかかると一旦ドアの開閉をやめてプレイヤーを移動させて… 続きを読む »
スタンダードアセットのFPSコントローラーでしゃがめるようにしてみました。 FirstPersonControllerでは、カメラの位置をUpdateCameraPosition()で更新しているので、ここで高さを変えら… 続きを読む »
走っている時に引き戸を素早く開けられるようにします。 if (CrossPlatformInputManager.GetButtonDown(“Fire1”) && hit.collider.tag == “Slidin… 続きを読む »
一人称視点でオブジェクトを掴んで移動させます。掴んでいる間も、物理演算で他のアイテムや床と衝突するようにします。 前のスクリプトに追記して、近くでアイテムにレイがあたっているときにマウスの左クリックをすると、アイテムを掴… 続きを読む »
前の記事の方法で持ち上げて回転させるアイテムを遠ざけたり近くに寄せたりして観察できるようにします。 アイテムを持ち上げている時にマウスドラッグでアイテムを回転させますが、シフトキーを押しながらドラッグするとアイテムは回転… 続きを読む »
一人称で掴んだオブジェクトを目の前に持ってきて、マウスドラッグで回転させてみました。 スタンダードアセットのFPSコントローラーのカメラにスクリプトを付けます。 using System.Collections; usi… 続きを読む »