已阅读5页,还剩4页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
目录AI课程介绍1应用案例-ARPGDemo3.X31.问题【需求】32.分析:33.设计类图64.实现9AI课程介绍人工智能(Artificial Intelligence, AI)人工智能范围很大,分支很多,工业军事等机器人的人工智能这里讲的是在游戏中的人工智能大型游戏敌人的AI很多设计AI要注意:l AI可能会有多套:尽可能复用相同的内容。l 一套AI可以调整:AI不要硬编码:l 调整但不改代码:配置l AI-有限状态机-行为树(行为上的判断,有很多插件)AI课程构成1. FSM(Finite-state machine)有限状态机2. Perception智能感知 寻路3. Steering自动操控 操控:运动操控 算法:靠近,离开,到达,跟随,徘徊,拦截,逃离等等个体操控SingleSteering,群体操控GroupSteering有限状态机,又称有限状态自动机,简称状态机,1状态:这里的状态指的是:对象的行为:人的状态: 清醒 糊涂 身体的状态:健康 感冒 康复中小怪的状态: 待机 死亡 追逐 攻击2 有限状态:对象的状态是有限的。3 状态机:状态机是一个数学模型,状态机是一个有向图形,状态机是表示有限多个状态在不同的条件下相互转换的图例如1:身体的状态:健康 感冒 康复中条件:淋雨(t1),吃药(t2),打针(t3),休息(t4)。健康-(t4)-健康;健康-(t1)-感冒;感冒-(t3)-健康;感冒-(t2)-康复中;康复中-(t4)-健康,等等。例如2:灯泡的状态:开 关条件:应用案例-ARPGDemo3. X1. 问题【需求】主角攻击妖怪,妖怪要有一些可能性的行为反应有限状态机状态转换表1待机3.11生命为0死亡3.22发现目标追逐2死亡3追逐生命为0死亡3.33目标进入攻击范围攻击4丢失玩家转为默认状态4攻击生命为0死亡3.4作业8玩家离开攻击范围追逐5打死目标转为默认状态5巡逻生命为0死亡发现目标追逐3.59完成巡逻待机阶段1:待机【生命为0】死亡阶段2:待机【发现目标】追逐阶段3:追逐【目标进入攻击范围】攻击阶段4:攻击【玩家离开攻击范围】追逐阶段5:巡逻【完成巡逻】待机2. 分析:分析思路状态与条件的数量及种类不断变化,所以将变化的部分单独封装,抽象状态类及条件类,未来有新状态及新条件时,增加新的状态或条件派生类即可,这样设计是满足开-闭原则的。修改成本最小。状态的切换与发生的条件相关,所以由状态对象来管理本状态相关联的条件对象,在本状态做为当前状态时,执行所有条件对象的检测(Reason)并执行当前状态提供的行为(Action),如果有条件发生时,则调用状态机来改变当前状态(ChangeActiveState)。状态机是一个包含AI所需所有状态的容器,负责状态对象的初始化配置,负责状态的切换;状态机实时执行(Update)当前状态的行为(currentState.Action)及条件检测(currentState.Reason)。1. 各个状态要独立,各自封装一个类,抽象一个状态父类2. 各个条件要独立,各自封装一个类,抽象一个条件父类状态可能会有增加或减少 -加新状态类转换条件可能会有增加或减少或修改-加新条件类3. 条件与状态是有关系,一个状态中可能拥有多个条件对象. 每个状态中的每个条件都对应一个输出结果,每个状态都有一个条件转换状态映射表4. 同样转换条件可能在不同状态下输出的状态可能会不同,具体的转换过程由谁来做? 定义一个状态机,负责管理AI所需的所有状态.并且协调和组织转换的过程有限状态机类结构工作原理当前状态工作时,如果检测到条件达成,则退出当前状态,进入新状态。状态机 控制状态的切换! 状态机工作原理 3. 设计类图 类图1:状态编号 FSMStateID状态编号 FSMStateID1无None2待机Idle3死亡Dead4追逐Pursuit5攻击Attacking6默认Default7巡逻Patrolling类图2:状态转换条件: FSMTriggerID转换条件 FSMTriggerID1生命为0NoHealth2发现目标SawPlayer3目标进入攻击范围ReachPlayer4丢失玩家LosePlayer5完成巡逻CompletePatrol6打死目标KilledPlayer7目标不在攻击范围玩家离开攻击范围WithOutAttackRange类图3:动画参数类AnimationParams Serializable public class AnimationParameter public string Idle = idle; public string Dead = dead; public string Run = run; public string Walk = walk; public string Attack = attack; 类图4:条件抽象类类图5:状态抽象类类图6:状态机 BaseFSM类图7:BaseFS
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 千年瓷都景德镇
- 甘肃省张掖市民乐县第一中学2025年化学高二第一学期期末复习检测试题含解析
- 信阳农林学院《数字视音频技术》2024-2025学年第一学期期末试卷
- 全科医学科慢性疼痛综合干预指南规范
- 老年医学科支气管哮喘急性发作护理指南
- 新生大学生职业规划
- 牛皮癣患者皮肤护理规范
- 血友病的护理与预防措施培训
- 肠梗阻急诊处理流程培训方案
- 新生儿窒息急救知识
- 2025年基层党支部书记述职报告
- 中国稀土镁合金治炼项目投资可行性研究报告
- GB/T 30340-2025机动车驾驶员培训机构业务条件
- 新保密教育线上培训考试试题及答案
- 2025年幼师考编真题及答案
- 科技企业员工绩效考核管理办法
- 12 在牛肚子里旅行 课件 2025-2026学年统编版语文三年级上册
- 班组建设培训课件完整版
- GJB3243A-2021电子元器件表面安装要求
- DL-T 1476-2023 电力安全工器具预防性试验规程
- 产前检查和孕期保健
评论
0/150
提交评论