Unity上の敵AIとアニメーション
目次:
- はじめに
- 敵AIの作成準備
- 敵のスプライト設定
- アニメーションの作成と設定
- 4.1. アイドルアニメーションの作成
- 4.2. 移動アニメーションの作成
- 敵の制御スクリプトの作成
- 5.1. 変数の設定
- 5.2. 関数の作成
- 5.3. プレイヤーの追跡
- 5.4. 攻撃処理
- まとめ
はじめに
このビデオでは、簡単な敵AIを作成する方法について説明します。敵キャラクターには、アイドルアニメーションと歩行アニメーションがあり、プレイヤーに追従し、近くになると攻撃します。まずは、敵のスプライト設定から始めましょう。
敵AIの作成準備
敵AIを作成する前に、いくつかの準備が必要です。まず、敵のスプライトを設定する必要があります。使用するアートパックに含まれる"ログ"スプライトを使用することをおすすめします。
- スプライトのフィルターモードを"ポイント(フィルターなし)"に設定します。
- スプライトの圧縮を9ピクセルに設定します。
- 1ユニットあたりのピクセル数を16に設定します。
- スプライトモードを"マルチプル"に設定します。
これでスプライトが正しく表示され、ピクセルが奇妙な色にならないはずです。特定のアートパックによっては、スライス設定が設定されている場合がありますので、必要に応じて適切なセルサイズを設定してください。
敵のスプライト設定
スプライトの設定が完了したら、アニメーションを作成して設定します。最初にアイドルアニメーションを作成しましょう。
アイドルアニメーションの作成
- アニメーションタブを開きます。
- プロジェクトパネルから"ログ"スプライトをドラッグしてアニメーションクリップを作成します。
- アニメーションクリップの名前を"ログアイドル"に設定します。
- 必要なフレーム数を設定します。
- サンプルレートを調整してアニメーション速度を調節します。
以上でアイドルアニメーションの作成は完了です。同様の手順で歩行アニメーションを作成しましょう。
アニメーションの作成と設定
アニメーションを作成する前に、アニメーターコントローラーを作成する必要があります。アニメーターコントローラーは、アニメーションのトランジションを管理するためのものです。
- アニメーターコントローラーを作成します。名前を"EnemyLog"に設定します。
- ログエネミーのアニメーターコンポーネントにアニメーターコントローラーを追加します。
- アニメーターに各アニメーションクリップを追加します。
アニメーションクリップを追加する際には、サンプルレートやトランジション設定などの詳細な設定があります。詳細は割愛しますが、必要に応じて調整してください。
敵の制御スクリプトの作成
敵の制御スクリプトを作成して、アニメーションとAIを管理しましょう。
変数の設定
まず、必要な変数を設定します。
これらの変数は、プレイヤーを追跡し、攻撃を開始するタイミングを決定するために使用されます。
関数の作成
次に、制御に必要な関数を作成します。
- Start関数: 初期設定を行います。
- Update関数: フレームごとの処理を行います。
- MoveCharacter関数: キャラクターを移動させます。
このような関数を作成することで、敵キャラクターの制御が容易になります。
プレイヤーの追跡
敵キャラクターがプレイヤーを追跡するためには、プレイヤーの位置情報が必要です。この情報は、タグを使用して取得できます。
攻撃処理
敵キャラクターが攻撃するタイミングは、プレイヤーとの距離によって判断されます。攻撃可能な範囲内にいる場合は、攻撃アニメーションを再生します。
以上で敵キャラクターの制御スクリプトの作成は完了です。このスクリプトを使用することで、敵AIを容易に実装することができます。