unity3d敌人随机行走
时间: 2023-07-29 11:13:23 浏览: 324
在Unity3D中,可以通过编写脚本来实现敌人的随机行走。以下是实现的一种方法:
1. 创建一个空物体作为敌人的父级对象,并将敌人模型作为其子对象。
2. 在敌人父级对象上添加一个包含以下代码的脚本:
```
using UnityEngine;
using System.Collections;
public class EnemyMovement : MonoBehaviour {
public float speed = 2.0f; //敌人的移动速度
public float range = 10.0f; //敌人的移动范围
private Vector3 targetPosition; //敌人移动的目标位置
void Start () {
//随机生成敌人的初始位置
targetPosition = new Vector3(Random.Range(-range, range), 0, Random.Range(-range, range));
}
void Update () {
//计算敌人当前位置与目标位置之间的距离
float distance = Vector3.Distance(targetPosition, transform.position);
//如果敌人已经到达目标位置,则重新生成一个新的目标位置
if (distance < 1.0f) {
targetPosition = new Vector3(Random.Range(-range, range), 0, Random.Range(-range, range));
}
//让敌人向目标位置移动
transform.LookAt(targetPosition);
transform.Translate(Vector3.forward * speed * Time.deltaTime);
}
}
```
3. 在场景中将该脚本挂载到敌人父级对象上,并调整敌人的移动速度和移动范围。
这样,敌人就可以在场景中随机行走了。
阅读全文