「Unity/3d/アニメーション/追跡」の版間の差分
提供: 初心者エンジニアの簡易メモ
(→追跡アクション追加) |
(→追跡アクション追加) |
||
行2: | 行2: | ||
#敵オブジェクトにAddComponentsでRigidbodyとCapsuleColliderを追加 | #敵オブジェクトにAddComponentsでRigidbodyとCapsuleColliderを追加 | ||
#床オブジェクトの(名前の横にある)staticにチェックをつける | #床オブジェクトの(名前の横にある)staticにチェックをつける | ||
− | #Window/Navigationから床オブジェクトを選択し、Bakeタブを選択しBakeボタンを押す。 | + | #Window/AI/Navigationから床オブジェクトを選択し、Bakeタブを選択しBakeボタンを押す。 |
#敵オブジェクトのAddComponentsからNavMeshAgentを追加 | #敵オブジェクトのAddComponentsからNavMeshAgentを追加 | ||
#敵オブジェクトに以下csのようにNavMeshAgentを追加 | #敵オブジェクトに以下csのようにNavMeshAgentを追加 |
2020年10月11日 (日) 15:56時点における版
追跡アクション追加
- 敵オブジェクトにAddComponentsでRigidbodyとCapsuleColliderを追加
- 床オブジェクトの(名前の横にある)staticにチェックをつける
- Window/AI/Navigationから床オブジェクトを選択し、Bakeタブを選択しBakeボタンを押す。
- 敵オブジェクトのAddComponentsからNavMeshAgentを追加
- 敵オブジェクトに以下csのようにNavMeshAgentを追加
- 障害物オブジェクトを設置してstaicにチェックを入れる。
- 障害物オブジェクトにもBakeを設定する。
using UnityEngine.AI; public class EnemyController : MonoBehaviour { Animator animator; NavMeshAgent agent; void Start() { animator = GetComponent<Animator>(); if (GetComponent<NavMeshAgent>() != null) { agent = GetComponent<NavMeshAgent>(); agent.updateRotation = false; agent.updatePosition = true; } } void Update() { GameObject target = GameObject.Find("Main Camera"); if (target != null && agent != null) { agent.SetDestination(target.transform.position); } } }