【Unity】ナビメッシュ上に敵を出現させる #1
プレイヤーを囲うようにナビメッシュ上に敵を配置する方法を考えてみました。 ナビメッシュ上に予め空のゲームオブジェクトをたくさん配置しておいて、その中からプレイヤーとの距離によって選ばれたものと同じ位置に敵を出現させること… 続きを読む »
プレイヤーを囲うようにナビメッシュ上に敵を配置する方法を考えてみました。 ナビメッシュ上に予め空のゲームオブジェクトをたくさん配置しておいて、その中からプレイヤーとの距離によって選ばれたものと同じ位置に敵を出現させること… 続きを読む »
棒を登っているときに、歩いているときのようにカメラを周期的に動かしてみます。 カメラの回転はMouseLookクラスのLookRotation()で行うので、その中で体のY軸の回転と、カメラのX軸の回転にそれぞれ変数を足… 続きを読む »
棒を登っているときにカメラの水平な回転を制限します。 スタンダードアセットのMouseLookクラスにはカメラの縦回転を制限するClampRotationAroundXAxisメソッドが用意されているので、これを使ってみ… 続きを読む »
FPSコントローラーの移動方向を変えて棒や垂れ下がる鎖などを登れるようにしてみます。 まず頭のスクリプトで、近くで棒にレイが当たっているときにFキーが押されると、体のスクリプト(FirstPersonController… 続きを読む »
VFXグラフを使ってスモークグレネードを作ってみます。 まず、Blenderでスモークグレネードを作って、前の記事の手榴弾と同様にFPSキャラが投げれるようにしました。 そして、前の記事の煙のエフェクトの色やサイズを変え… 続きを読む »
VFXグラフで作った火の付いたろうそくをFPSキャラに持たせてみます。 煙のエフェクトの色や速度を変えて炎のエフェクトを作りました。これをプレイヤーに持たせるろうそくに追従させます。 火のVFXグラフに位置を伝えるための… 続きを読む »
FPSコントローラーで手榴弾を投げてみます。 まずBlenderで手榴弾を作って前の記事の方法で手に持たせ、アニメーションを作りました。 手榴弾は右の手のひらのボーンの子オブジェクトになっています。ピンは手榴弾の子オブジ… 続きを読む »
FPSコントローラーに両手を付けて、刀で攻撃させてみます。 まず前の記事と同様にBlenderで腕を作ってアニメーションを付け、Unityに持ってきました。 今回は「刀を取り出す」「刀を構える」「刀を振る」「刀を持って歩… 続きを読む »
ハンドルを回して開閉するゲートに重力を加えます。前の記事では、マウスドラッグによってハンドルとゲートを両方動かしていましたが、今回はゲートだけを動かして、ゲートの速度を使ってハンドルを回転させてみました。 using S… 続きを読む »
ゲートの移動範囲がずれないように修正しました。 前の記事ではハンドルの回転だけを制限していましたが、ジョイントやコライダーの衝突を使ってゲートの動きを制限して、ゲートが制限まで達したときにハンドルを固定するようにします。… 続きを読む »
マウスドラッグでハンドルを回転させて、ゲートを開閉してみます。 前の記事のバルブを回す処理をバルブにつけるスクリプトで行います。 using System.Collections; using System.Collec… 続きを読む »
レバーを使って機械をオンオフしてみます。 まずレバーを作ってHingeジョイントを付けます。レバーの根本で、レバーの回転に垂直な方向に軸を設定しました。レバーが元の位置に戻るようにSpringを使います。また、Limit… 続きを読む »
プレイ中にマウスでクリックした場所のテクスチャの色を変更してみます。 まずシーン上のPlaneオブジェクトのマテリアルに設定するテクスチャをスクリプトで新規作成して、白く塗りました。 [SerializeField] G… 続きを読む »
前の記事でカメラを回転させるときに、カメラを縦横に動かして柱の角から覗けるようにします。 FirstPersonControllerクラスではカメラの移動はUpdateCameraPosition()で行うので、ここにカ… 続きを読む »
曲がり角から覗き見るように、一人称視点のプレイヤーのカメラを横に傾けます。今回はカメラの回転だけをやってみました。 Qキーで左、Eキーで右にリーンします。FPSコントローラーでカメラの回転をMouseLookクラスのLo… 続きを読む »
マウスカーソルをくるくると円形にドラッグして、バルブのオブジェクトを回してみます。 まずバルブにコライダーとリジッドボディ、ヒンジジョイントを付けます。リジッドボディのAngular Dragで抵抗を設定します。 ヒンジ… 続きを読む »
マウスカーソルを円形にくるくる動かして値を増減させてみます。 空のゲームオブジェクトにスクリプトを付けます。 using System.Collections; using System.Collections.Gene… 続きを読む »
UnityのMask Mapを作ってみました。 マスクマップでは、テクスチャのR,G,B,A値をそれぞれ、メタリック、アンビエントオクルージョン、ディテールマスク、スムーズネスに使います。 今回は各値を別々に設定して統合… 続きを読む »
Rigidbodyとジョイントを付けた机の引き出しや扉にLODグループコンポーネントを設定してみました。 頂点数の違う机を用意して、LODグループで近くでは詳細な机を、遠くでは二段階でシンプルな机を表示し、最後は机が表示… 続きを読む »
一人称視点で机の引き出しや扉を動かしてみます。 まず、Blenderで机を作って、UnityでコライダーやRigidbodyを追加します。引き出しにはConfigurable Jointを、扉にはヒンジジョイントを付けま… 続きを読む »