在写之前,先对昨天寻路插件再做一些补充,因为该插件不是很完善,所以当我发现有不能满足需求的时候,就会试图更改源代码,或增加接口来符合我的需求。

昨天补充了一条是 自身转向代码,今天补充另外一条,是及时改变路向。我们发现原始插件改变路向,必须要等角色到达目标点才能再做改变,我们在ai中希望是,当目标点改变,角色在半道就要改变新方向。

好了,解决该问题的方法很简单,只需要如下方法

    public void OnStopFind()
{
m_bNavRequestCompleted = true;
}

这行代码 在 目标寻路、随机寻路、跟随寻路 这三个类都添加进去,就可以了。

下面继续研究 ai 人工智能 。

ai 智能等级:

目前定义五级,分别如下:

固定点 固定方向 发现碰撞 射击! 这种好比是 大门前两个喷火龙,当有人 踩到陷阱,就发射。智商太低为1,我们找到规律基本无视它.

固定点 360° 方向,发现碰撞 射击! 这类 经常出现在 塔防中,比如箭塔炮塔,他们不会动,但有敌人经过 射程内 都会不停射击。 智商定义2。

移动点 360°,发现碰撞 射击,发现碰撞远离 跟踪。 这类 大部分 都是 小兵,如红警 帝国时代 里面的 小兵,平时站在不动,但有敌人来 就会 跟着并射击,直到打死对方。当然如果敌人 跑得太快 他们也不会一直跟踪。所以 智商只有3.

移动点 360°,发现碰撞射击,发现有敌人,主动搜索并跟踪。 这类 就是 将领 级别了。玩过部落战争的朋友 都知道,兵一放到 敌人阵营,就会自己主动攻击,他们不需要你告诉他 打谁,他会自己安排 打人流程。所以 这类智商 比较高 ,同时也是大家都喜欢玩 这类游戏的原因,智商 定义 4.

移动点 360°,发现碰撞射击,发现有敌人,研究其 是否打的过,如果难度高,指挥 其他同伙进攻。这类智商是最高的,目前我没有发现有哪类游戏中有,好比一个兵,他们会主动找敌人,他们会选择好打的先打,他们发现难打的,会先停下来 等待同伴一起上。 智商定义 5.

下面的 章节 我将开始以这 五级的智商来做 ai。之前为何选择SimplePath 也是看中了 他可以做到 第五级 的智商。

AI 人工智能 探索 (四)的更多相关文章

  1. AI 人工智能 探索 (七)

    我简单画了一幅图,来讲下 ai 中的设计模式.图形中的这些人物,我想大家都能看的明白. 当 盗贼出现,人们发现了他们,就 呼叫 主类,然后主类再  通知 下面对应的管理局,然后管理局再 分配人手过去 ...

  2. AI 人工智能 探索 (六)

    这次我为 角色 attribute 添加了 多个属性 其中 att 是 好人 坏人 等属性, 显然 数字不同 就要打起来. grade 是智商属性 ,今天先做了 3的智商.也就是小兵智商.碰到就打 逃 ...

  3. AI 人工智能 探索 (五)

    我们把做好的 角色 拖到 内存池,如图所示,这样我们可以动态生成角色并给予他 寻路目标. //逗留碰撞 void OnTriggerStay(Collider other) { if (other.t ...

  4. AI 人工智能 探索 (三)

    三类子弹的设计 using UnityEngine; using System.Collections; public class AI : AssembleModel { private Hasht ...

  5. AI 人工智能 探索 (二)

    完整被动技能代码 using UnityEngine; using System.Collections; public class AI : MonoBehaviour { private Hash ...

  6. AI 人工智能 探索 (十)

    呼叫事件图形结构如下 蓝色代表 警察局 红色代表警察 黄色代表 死亡人 蓝色球代表呼救人 黑色代表 敌人 警察目标是 攻击 黑色人,但 路中 会碰到 黄色人,如果警察有 救人功能 则会先救人去医院再看 ...

  7. AI 人工智能 探索 (九)

    链接:http://pan.baidu.com/s/1c0AM3g0 密码:uccw 今天补充 创建物体 移动物体 ,当点击创建后 ,会出来一个 上图的 ui,他跟随 物体,当你把物体拖动到 指定的地 ...

  8. AI 人工智能 探索 (八)

    绑定下,用来释放内存 布局框架.链接:http://pan.baidu.com/s/1eQzSXZO 密码:25ir 这次 我采用 ngui 来设定界面.除工具栏模块外,其他各类ui模块都是 内存池动 ...

  9. AI 人工智能 探索 (一)

    碰撞检测 //逗留碰撞 void OnTriggerStay (Collider other) { if (other.transform.name == name) { //检测距离 //根据距离 ...

随机推荐

  1. kettle连接Hive中数据导入导出(6)

    1.hive往外写数据 http://wiki.pentaho.com/display/BAD/Extracting+Data+from+Hive+to+Load+an+RDBMS 连接hive

  2. mysql启动

    mysql启动遇到的问题

  3. 一步一步学EF系列3【升级篇 实体与数据库的映射】

    之前的三张为基础篇,如果不考虑架构问题,做一般的小程序,以足够用了.基本的增删改查也都有了.但是作为学习显然是不够的.通过之前三章的学习,有没有发现这样写有什么问题,有没有觉得繁琐的?可能有人会说,之 ...

  4. 解决yum命令时出现Error: xz compression not available

    由于CentOS6的系统安装了epel-release-latest-7.noarch.rpm 导致在使用yum命令时出现Error: xz compression not available问题. ...

  5. ubuntu安装docker

    uname -r #查看内核版本要大于3.10apt-get updateapt-get install linux-image-generic-lts-trusty wget -qO- https: ...

  6. Java "==" 和 "equals" 和 "" 问题

    //equals()方法出现的问题 String a="testd"; String b="testd"; String c=new String(" ...

  7. LINQ的Any() 方法

    Enumerable.Any 方法 确定序列中的任何元素是否存在或满足条件.

  8. Windows下PHP(Thread Safe与Non Thread Safe)版本说明

    转载“http://www.taoz11.com/archives/300.html” linux下直接下载源码,在服务器上编译即可,发现windows下有4个版本: VC9 x86 Non Thre ...

  9. WimTool(Wim映像处理工具) V1.30.2011.501 免费绿色版

    软件名称: WimTool(Wim映像处理工具) V1.30.2011.501 免费绿色版软件语言: 简体中文授权方式: 免费软件运行环境: Win7 / Vista / Win2003 / WinX ...

  10. CSV文件解析工具

    package com.common.util; import java.io.BufferedReader; import java.io.FileInputStream; import java. ...