当前位置:网站首页>Unity行为树AI分享
Unity行为树AI分享
2022-08-04 05:25:00 【丁小未】
前言
之前在公司做了一个简单的行为树相关的知识分享,感觉还是花了不少心思和精力在准备上,现在分享给大家,一起学习,共同进步!
需求
三个敌人默认在老巢,如果检测到周围有“敌人”(主角),就追随主角并且达到一定距离范围就射击,如果“敌人”跑远追不上了则返回老巢,如果在追击“敌人”的过程中,自己被射击血量低于20%则向老巢方向逃跑,并且返回老巢指定位置进行回血,当血量回满之后则返回初始位置。我方主角由玩家自己控制,可以移动,可以射击。这里AI主要是设计敌方的AI。
分析
根据上面需求,可以看出来敌方AI大体分为待机巡视、追击、返回、回血几个阶段,具体设计可以看下面效果的第六步。
效果
1.敌人初始化并且返回老巢调整面向
2.碰到“敌人”靠近,跟踪并且射击
3.如果追不上“敌人”则返回到老巢
4.如果在追击的过程中,自己被攻击且血量低于安全值则“逃跑”,返回到回血基地
被“敌方攻击”过程中,返回到右上角回血基地,下图是正在回血,从左下角的log即可看出。
5.多个敌人也是可以的,我们可以通过变量控制生成几个AI敌人
敌方是动态生成出来的,可以看到上图EnemyManager节点一开始是没有敌人的,后来我们控制生成3个敌人则运行的时候出现了3个Enemy。
6.敌人的AI行为树结构
PPT教案
以下PPT是我花了好几十个小时整理的,单纯一个复杂的一页图可能就需要画半天。
Demo源码
https://github.com/dingxiaowei/AIDemo
学习交流群
375151422
边栏推荐
- Chapter 5 C programming expert thinking 5.4 alert Interpositioning of links
- 【问题解决】同一机器上Flask部署TensorRT报错记录
- 8.03 Day34---BaseMapper query statement usage
- 擎朗智能全国研发创新中心落地光谷:去年曾获2亿美元融资
- 心余力绌:企业面临的软件供应链安全困境
- C专家编程 第4章 令人震惊的事实:数组和指针并不相同 4.3 什么是声明,什么是定义
- 7.16 Day22---MYSQL(Dao模式封装JDBC)
- C Expert Programming Chapter 4 The Shocking Fact: Arrays and Pointers Are Not the Same 4.5 Other Differences Between Arrays and Pointers
- 7、特殊SQL的执行
- 使用Loadrunner进行性能测试
猜你喜欢
MySQL log articles, binlog log of MySQL log, detailed explanation of binlog log
EntityComponentSystemSamples学习笔记
【问题解决】同一机器上Flask部署TensorRT报错记录
word 公式编辑器 键入技巧 | 写数学作业必备速查表
代码重构:面向单元测试
使用Loadrunner进行性能测试
数的划分之动态规划
Teenage Achievement Hackers Need These Skills
Grain Mall - Basics (Project Introduction & Project Construction)
MySQL日志篇,MySQL日志之binlog日志,binlog日志详解
随机推荐
注意!软件供应链安全挑战持续升级
C Expert Programming Chapter 5 Thinking about Linking 5.2 Advantages of Dynamic Linking
C专家编程 第4章 令人震惊的事实:数组和指针并不相同 4.3 什么是声明,什么是定义
使用Loadrunner进行性能测试
7.15 Day21---MySQL----索引
入坑软件测试的经验与建议
Do you think border-radius is just rounded corners?【Various angles】
[SemiDrive source code analysis] [MailBox inter-core communication] 47 - Analysis of RPMSG_IPCC_RPC mode limit size of single transmission and limit bandwidth test
MySQL date functions
Can 't connect to MySQL server on' localhost3306 '(10061) simple solutions
[Evaluation model] Topsis method (pros and cons distance method)
8款最佳实践,保护你的 IaC 安全!
The Road to Ad Monetization for Uni-app Mini Program Apps: Full Screen Video Ads
读者让我总结一波 redis 面试题,现在肝出来了
JS基础--强制类型转换(易错点,自用)
[One step in place] Jenkins installation, deployment, startup (complete tutorial)
Sublime Text 3 2021.8.3 个人配置
What are the steps for how to develop a mall system APP?
力扣题解8/3
少年成就黑客,需要这些技能