【Unity】ナビメッシュエージェントを自然に振り向かせる #1
攻撃後の敵がプレイヤーの方へ振り向く動作が少し不自然なので、振り向くアニメーションを追加してみます。 まずBlenderで左右に振り向くアニメーションを作りました。 今回はとりあえず攻撃した後必ずターンするようにしました… 続きを読む »
攻撃後の敵がプレイヤーの方へ振り向く動作が少し不自然なので、振り向くアニメーションを追加してみます。 まずBlenderで左右に振り向くアニメーションを作りました。 今回はとりあえず攻撃した後必ずターンするようにしました… 続きを読む »
敵を近接攻撃すると敵が怯むアニメーションをして唸り声を上げるようにします。 まずBlenderで怯むアニメーションを作りました。 アニメーターコントローラーに新しいステートを作ってこれを設定します。新しいトリガーパラメー… 続きを読む »
前の記事と同様にプレイヤーも敵を近接攻撃できるようにしてみました。敵のHPゲージも作って攻撃が当たると減らします。 // プレイヤーにつけたスクリプト // 刀で攻撃中 else if (animator.GetCurr… 続きを読む »
FPSコントローラーで手榴弾を投げてみます。 まずBlenderで手榴弾を作って前の記事の方法で手に持たせ、アニメーションを作りました。 手榴弾は右の手のひらのボーンの子オブジェクトになっています。ピンは手榴弾の子オブジ… 続きを読む »
FPSコントローラーに両手を付けて、刀で攻撃させてみます。 まず前の記事と同様にBlenderで腕を作ってアニメーションを付け、Unityに持ってきました。 今回は「刀を取り出す」「刀を構える」「刀を振る」「刀を持って歩… 続きを読む »
一人称視点で手に持った武器で攻撃してみます。 まずBlenderで右腕のモデルにボーンを付けました。 これに前の記事の方法でナイフを持たせてアニメーションを作ります。 今回は、呼吸とともに腕がかすかに上下するアニメーショ… 続きを読む »
アバターマスクを使って歩くアニメーションの上から別のアニメーションを上書きしてみます。 歩くアニメーションの他に、腕をパタパタと羽ばたくアニメーションを作りました。 歩くアニメーションをBase Layerに設定し、二番… 続きを読む »
ナビメッシュエージェントに巡回させて、目的地に付いた時に一旦巡回を停止させて、その場でアニメーションさせてみました。 NPCにスクリプトを付けて、ベンチと2つの目的地をアタッチしています。 目的地は空のゲームオブジェクト… 続きを読む »
UnityのStateMachineBehaviourを使ってみました。 アニメーターコントローラーに、モーションの付いた2つのステートを追加して、背景を左クリックします。 インスペクタで、「Add Behaviour」… 続きを読む »
マガジンのアイテムを拾うと、銃の残弾数が増えるようにします。 まずマガジンのオブジェクトを新規作成して、コライダーとRigidbodyと新規スクリプトを付けました。 今回は衝突しないようにIs Triggerにチェックを… 続きを読む »
弾数を表示します。0になると弾を発射できなくなり、リロードすると弾数が増えて撃てるようになります。 using System.Collections; using System.Collections.Generic; … 続きを読む »
頭以外の部分を撃たれた時に、立ち止まってゾンビのアニメーションを変更します。 アニメーターコントローラーをみると、歩くアニメーションと他のアニメーションのステートが同じレイヤーで管理されています。 整数型のパラメータがあ… 続きを読む »
まずはNPCに歩いているアニメーションをさせながら、プレイヤーを追跡させます。 Asset Storeで無料のキャラクターのアセットをダウンロード・インポートしました。 モデルをシーンに配置します。 インスペクタを見ると… 続きを読む »
右クリックで照準器を覗き込むアニメーションを付けます。 まず銃のオブジェクトを選択して、AnimationウィンドウでCreate New Clip…をクリックし、新規アニメーションの名前を付けて保存します。… 続きを読む »
マウス左クリックを押したときに銃弾の発射が始まりますが、左クリックを押してすぐに離すと、銃を撃つ状態のまま戻らなくなります。 デフォルトの何もしない状態から銃を撃つ状態への遷移の矢印のインスペクタを見てみると、遷移の時間… 続きを読む »
前の記事でインポートした銃のアセットにはデフォルトでアニメーションが付いています。 銃のアニメーターコンポーネントのControllerをダブルクリックすると、アニメーターコントローラーが表示されます。 Aキーを押すと全… 続きを読む »
地面からモグラを出現させて、前の記事の方法で玉を当てるFPSミニゲームを作りました。→3Dモグラ撃ちゲーム シーンの床の下にカプセルを配置して、アニメーションを付けます。 Add PropertyでPositionを追加… 続きを読む »
Cubeに複数のアニメーションを付けて、スクリプトでアニメーションを切り替えます。 まずアニメーションをつけたいオブジェクトを選択した状態で、AnimationタブからCreateをクリックして、新規アニメーションの名前… 続きを読む »
ナビメッシュでNPCを動かす 普段は同じところを巡回させて、プレイヤーを見つけると追ってくるNPCを作ります。 まずNPC(エージェント)の体をカプセルで作り、簡単な頭をカプセルの子オブジェクトに設定します。 顔のオブジ… 続きを読む »
例えば、ゲームのキャラクターには、立ち止まっている→歩いている→走っている→ランニングジャンプしている、というような状態がありますね。そして、その状態ごとにキャラクターのアニメーションが違います。 ところで、立ち止まって… 続きを読む »