logo资料库

Tactical Shooter AI中文教程文档.docx

第1页 / 共45页
第2页 / 共45页
第3页 / 共45页
第4页 / 共45页
第5页 / 共45页
第6页 / 共45页
第7页 / 共45页
第8页 / 共45页
资料共45页,剩余部分请下载后查看
操作步骤,简单介绍
1.给自己的士兵模型添加布娃娃
2.添加子物体Eye,Z轴朝前
3.添加手的子物体----枪
4.枪下添加子空物体Bullet Spawn
5.创建动画控制器Assets > Create > Tactical AI Animation Con
6.创建AI控制脚本GameObject > 3DObject > Tactical AI Agent,
7.导航地图,可以始终使用动态地图,也可使用静态覆盖图
跑酷案例BETA_ParkourTestingMap(Parkour跑酷)
8.交战,为了使代理与一个目标交战,只需要添加TargetScript脚本,确保MyTeamID是敌方的
9.子弹,
10.血量Health Script
UFPS集成
行为简介
休闲行为
漫游:最简单的空闲行为之一。代理人在其位置的一定半径内选择一个位置开始行动。一旦他们靠近那个地点,他
巡逻:代理遵循由BaseScript中保存的转换列表标记的路径PatrolNodes。
移动到指定位置:代理移动到其在BaseScript中指定的指定键转换KeyTransform。
搜索:特工积极寻找目标。
战斗行为
狂暴者Berserker:特工将采取最短的路径到达目标。如果代理具有密钥转换在BaseScript中
战术Tactical:战术特工将利用掩护来维持自己的生命和保持最佳位置。大多数远程代理都会使用这种行
散兵Skirmish:在没有掩护的地区这种行为通常是最好的选择,,当试图从侧翼攻击敌人并迫使他们离开
战术行为
侧翼Flank:代理将遵循开发者指定的攻击路线。这可以让特工们绕很远的路,从侧面或背后攻击敌人。
压制Suppress:特工移动到一个指定的压制火力位置,并一直呆在那里直到被命令离开。
凌驾于行为之上
逃离手榴弹:在接受到一个警告后,找到可以离开的位置和安全的距离,代理将试图逃离危险对象。这种行为在手
检测到声音:如果探员听到一个声音,并且他们处于空闲状态,他们将以BaseScript指定的警报速度到
使用动态对象:代理将移动到变换位置并面向指定方向。他们会播放动画并调用指定对象上的方法。当动态对象被
闪避:特工播放闪避动画,并移动到侧面以甩开敌人的目标。当代理对其目标具有视线时周期性地发生。
指挥官作战
命令中心脚本CommandCenter
创建指挥官
创建小组成员
动态物体(场景里会动的障碍物)
代理使用动态对象的过程:
自定义行为
如何使代理使用自定义行
脚本详解
基本脚本BaseScript
Rotate To Aim Gun Script
Health Script
SoundScript
CoverFinderScript
GunScript
Animation Script
TargetScript
Controller Script
BulletScript
Explosion Script
Explosive Barrel Script
GrenadeScript
HitBox
CoverNodeScript
Dismemberment Script
Dynamic Object Add Force Script
Dynamic Object Script
问题解决
Tactical Shooter AI 教程 操作步骤,简单介绍 1. 给自己的士兵模型添加布娃娃 2. 添加子物体 Eye,Z 轴朝前 3. 添加手的子物体----枪 4. 枪下添加子空物体 Bullet Spawn 5. 创建动画控制器 Assets > Create > Tactical AI Animation Controller 6. 创建 AI 控制脚本 GameObject > 3DObject > Tactical AI Agent,即一个 空物体上带所有需要的控制脚本,如上图 Team 2_Rife 7. 导航地图,可以始终使用动态地图,也可使用静态覆盖图
覆盖图由手动放置的节点组成(可以隐藏的位置(一个较小的实心球体),可以 开火的位置(较大的钢丝球)) 任何上面有 CoverNodeScript 脚本的物体都可以是覆盖节点(“Short Cover node”用于蹲在一个低矮的障碍物后面,站起来,不向侧面开火,“tall short cover” 用于让人工智能移到一边从高墙后边出来,向敌人开火时使用),覆盖节点的旋 转和方向无所谓,只用位置 CoverNodeScript 的 LayerMask 注意是 Bullet
跑酷案例 BETA_ParkourTestingMap(Parkour 跑酷) 它允许 agents 离开导航网格,位置由 links 指定,总是从大的节点移动到小的 节点,如果想让两个方向都通过,需要放置两个相反方向的连接,Vault 用于跳 高,Leap 用于跳跃 确保玩家的 NavMeshAgent 里自动离开网格没有勾选
8. 交战,为了使代理与一个目标交战,只需要添加 TargetScript 脚本,确保 MyTeamID 是敌方的 EnemyTeamsID 9. 子弹, 确保子弹的 LayerMask 包括你想要击中的物体,当击中物体时子弹会调用被击 中物体上的 Damage 方法
为了允许对象受到近战伤害,确保 Health Script Holder 关联上影响物体健康 的物体,默认 Health Script 在本物体上,即就是本物体 10. 血量 Health Script Linked Components 关联上小的子物体,这些物体上带 HitBox 脚本
UFPS 集成 1 在 项 目 视 图 中 搜 索 所 有 UFPS 项 目 符 号 和 爆 炸 预 制 , 并 将 RequireDamageHandler 设置为 OFF。 如果你使用的是 UFPS 1.6 或更高版本,伤害模式必须设置为“统一信息”。 2 确保在角色的层次结构(主相机通常是个不错的选择)。要使近战生效,必 须指定 TargetScript 的 healthScriptHolder 变量设置为角色层次结构中最上面的对象(具有 PlayerDamageHandler 脚本 的对象)。 有关详细信息,请参阅以上部分。 3 确保子弹的 LayerMask 包含玩家所在的物理层。 Tactical AI explosions 爆炸“Should Do Single Hitbox Damage”禁用。 4 检查触觉控制器和 Node 节点上的 LayerMask 注意,在将战术人工智能导入 UFPS 项目时,Unity 可以在默认情况下随机交换 动画控制器。如果要使用默认动画控制器,则必须手动替换它们。 行为简介 1.空闲行为:代理在不参与战斗时执行这些行为。 2.战术行为:用于协调攻击的行为 3.战斗行为:当特工主动与敌人作战时所做的事情。 4.重写行为:允许代理对外部因素作出反应的短暂行为,例如,逃离手榴弹。 休闲行为
漫游:最简单的空闲行为之一。代理人在其位置的一定半径内选择一个位置开始 行动。一旦他们靠近那个地点,他们就会选择一个新的。 巡逻:代理遵循由 BaseScript 中保存的转换列表标记的路径 PatrolNodes。 移 动 到 指 定 位 置 : 代 理 移 动 到 其 在 BaseScript 中 指 定 的 指 定 键 转 换 KeyTransform。 搜索:特工积极寻找目标。 战斗行为 狂暴者 Berserker:特工将采取最短的路径到达目标。如果代理具有密钥转换在 BaseScript 中指定,它们将移动到该转换的位置。这种行为最适合特工他们根 本不考虑如何避免损失。例如,僵尸或重装甲机器人。 战术 Tactical:战术特工将利用掩护来维持自己的生命和保持最佳位置。大多数 远程代理都会使用这种行为。它适用于两个想一直保持距离的特工,那些想用掩 护掩护自己前进的人。行为有几个参数在多个组件中,可以调整以获得最佳结果。 散兵 Skirmish:在没有掩护的地区这种行为通常是最好的选择,,当试图从侧 翼攻击敌人并迫使他们离开掩护时可以非常有效。散兵寻找一个可直接瞄准并攻 击目标的地方。 战术行为
分享到:
收藏