利用NavMeshAgent控制敌人巡逻,即敌人在一组位置间循环巡逻。

首先我们要知道NavMeshAgent中有两个方法:1.锁定当前巡逻的某一目标位置,即navMeshAgent.destination

2.到达目标位置停止巡逻(休息一定时间继续巡逻),即navMeshAgent.Stop();

代码实现如下:

usingUnityEngine;

usingSystem.Collections;

using UnityEngine.AI;

public class EnemyMoveAI : MonoBehaviour {

public Transform[] directPoints; //0-3

privateint index = 0;

public float patroTime = 3f;//到达某一点停止等待时间

private float timer = 0;//计时器

privateNavMeshAgentnavMeshAgent;

void Awake()

{

navMeshAgent = GetComponent<NavMeshAgent>();

navMeshAgent.destination = directPoints[index].position;

}

void Update()

{

if (navMeshAgent.remainingDistance< 0.5f)

{

timer += Time.deltaTime;

if (timer==patroTime)

{

index++;

index %= 4;//在4个点之间循环巡逻

timer = 0;

navMeshAgent.destination = directPoints[index].position;

}

}

}

}

注意:

1.为了保证敌人能在该组点内循环巡逻(而不是只巡逻一圈),采用取余的方式获得点数组的下标。

2.没有使用navMeshAgent.Stop();原因是,如果使用了则到达一个巡逻点后敌人将不会再向新的目标点移动。

转载于:https://www.cnblogs.com/shirln/p/9105556.html

unity_小功能实现(敌人巡逻功能)相关推荐

  1. 【UE4】模仿《黑暗之魂》系列游戏制作一个简单的锁定敌人的功能

    这是我拆解游戏项目的CameraSystem做出的一点点小总结,然后写了一个非常非常简单的锁定敌人的功能: 第一步:设置敌人属性,标志为可被锁定 创建一个敌人蓝图,随便搞个模型进去 创建一个接口蓝图, ...

  2. 现阶段的微信小程序能实现直播功能么?

    对于没有技术背景的商家要使用微信小程序的直播,可以直接用来客推的免费开源版本,代码直接开源还接入微信小程序直播!符合开通条件的商家都可以快速制作直播小程序商城,享受小程序直播带来的早期红利 微信小程序 ...

  3. 条令考试小程序辅助器_在线考试题库小程序开发有哪些功能?

    因疫情的关系导致很多考试都没办法在线下进行,所以在线考试和考试题库小程序就运营而生了.那么考试题库小程序可以开发哪些功能呢? 1.同步练习:为了强化学生课堂所学内容,小程序会为用户提供相应的同步练习课 ...

  4. 游戏开发需要具备哪些技术_生鲜小程序需要具备哪些功能板块?生鲜小程序开发...

    线上生鲜小程序开发让用户购买蔬菜水果更加便捷,不仅可以有利于发展生鲜行业之后的规模,而且也能够吸引更多的用户,低成本获客.那么,这样一款生鲜小程序需要具备哪些功能板块呢? 线上生鲜小程序需要具备什么? ...

  5. java代码实现购物车小程序_使用Taro实现小程序商城的购物车功能模块的实例代码...

    Taro 是一套遵循 React 语法规范的 多端开发 解决方案. 现如今市面上端的形态多种多样,Web.React-Native.微信小程序等各种端大行其道,当业务要求同时在不同的端都要求有所表现的 ...

  6. nodejs android 推送,利用Nodejs怎么实现一个微信小程序消息推送功能

    利用Nodejs怎么实现一个微信小程序消息推送功能 发布时间:2021-01-20 13:55:29 来源:亿速云 阅读:92 作者:Leah 今天就跟大家聊聊有关利用Nodejs怎么实现一个微信小程 ...

  7. php 微信小程序 循环 多选,微信小程序实现多选功能

    本文为大家分享了微信小程序实现多选功能的具体代码,供大家参考,具体内容如下 代码: {{num + 1}}/{{quesyion.length}}{{question[num][0]}} A {{qu ...

  8. 用小程序·云开发打造功能全面的博客小程序丨实战

    用小程序·云开发将博客小程序常用功能"一网打尽" 本文介绍mini博客小程序的详情页的功能按钮如何实现,具体包括评论.点赞.收藏和海报功能,这里记录下整个实现过程和实际编码中的一些 ...

  9. 微信小程序装修解决方案ppt_装修公司微信小程序都有哪些功能?

    传统装修行业存在收费不透明.消费者装修服务过程体验差等问题,传统装修已无法满足消费者的实际需求,面临无客量.无签约的困境.然而,随着移动互联网的发展,许多装饰企业利用微信小程序来帮助其疏导和推广.一个 ...

最新文章

  1. ios开发 自定义btn_iOS一步步实现一个高度自定义UIButton控件
  2. 机器学习算法:补一个k-近邻算法的测试
  3. Python文件输入输出
  4. 【Android安全】JEB技巧汇总
  5. 比较一下 淘宝、易趣、拍拍、百度有啊
  6. 网站被挂马的处理办法以及预防措施
  7. java 禁用cookie的解决办法
  8. 对话微软大中华区CEO梁念坚:WP7为云而生
  9. 陈莉君linux操作系统,Linux操作系统原理与应用(陈莉君)学习笔记.pdf
  10. css第四课:id选择器及通配选择器
  11. 从来不是别人的不幸和痛苦
  12. 华硕冰刃4不显示,拆开检查2个故障,如不仔细分析上电又要烧板
  13. 【网络-实验】恐怖的网络环路
  14. JMeter BeanShell 应用
  15. SysML图例-核聚变
  16. 配置teamviewer远程无显示器ubuntu工控机实操
  17. webpack的摇树、拆包、热更新、按需加载等难点
  18. 2020,多少新能源车企倒在风口中?
  19. 计算机管理评价指标,评价指标体系
  20. BugkuCTF~Misc~WriteUp

热门文章

  1. Tensorflow中GRU和LSTM的权重初始化
  2. hsf 架构_java分布服务:我打赌,没人可以这么精短的讲出分布服务架构吧
  3. 火车票售票系统mysql_为何火车上明明有很多空位,售票系统却会显示无座?
  4. c语言实战1200例 pdf6,C语言程序设计6.6.2.pdf
  5. python 购物车分析_python 简易购物车程序解析
  6. linux 磁盘检测卡主_Linux启动过程
  7. Java学习从入门到精通
  8. [codevs 1343] 蚱蜢(省队选拔赛湖南)
  9. 固定资产拆分比例怎么计算_持有的基金要被份额拆分?对收益有影响吗?
  10. 面向对象发牌Java_面向对象思路的斗地主发牌小程序