SuperAPI AI 工具集

game-ai

设计与创作

查看项目

更新于 10-15 21:49

技能介绍

用途:实现敌人/NPC 逻辑,如巡逻、追击/逃跑、守卫状态、群体移动或“寻找到玩家的路径”;也用于在 FSM、行为树、转向之间做选择,以及集成 A* 网格/图寻路或驱动引擎导航网格代理。

主要能力:把 AI 拆成三层——决策(做什么)、转向(怎么移动)、寻路(如何绕开地图)。决策层输出意图(目标位置、动作),转向或寻路把意图变成运动。决策模型按复杂度选择:2–5 个状态且转换明确用 FSM;行为多、有优先级、可中断、需复用用行为树;连续“多想要某选项”用效用评分。寻路在网格、路点图或烘焙导航网格上进行,节点越少 A* 越快;3D 优先用引擎导航网格,瓦片游戏用网格 A*。转向沿路径的下一个路点前进,而非直奔目标,以便绕过拐角。

使用方式:FSM 中每个状态是小对象,含 enter/update/exit,update 返回新状态表示转换,返回 null 表示保持;行为树节点 tick 返回 SUCCESS、FAILURE 或 RUNNING,Sequence 顺序执行并在首个非 SUCCESS 处短路,Selector 依次尝试直到成功或 RUNNING;转向用 seek 与 arrive 计算力,每帧 vel += steering * dt、pos += vel * dt;A* 启发式必须可采纳(不高估),4 向网格用曼哈顿距离,8 向网格用 octile 距离。

限制与注意:不要每帧寻路,应按计时器或目标移动一格时重算并缓存路径;不要直奔目标,否则贴墙卡角;启发式高估会失去最短路径保证;行为树叶子对多帧动作须返回 RUNNING,否则每帧重启动作;FSM 转换逻辑应留在状态内,避免散落的 if 判断;缺少视线或卡住检测会导致智能体一直撞墙,应加超时强制重寻路或换状态。引擎具体导航网格/代理 API 与烘焙请参考对应引擎技能,移动与碰撞手感参考物理调优,生成 AI 所导航的图/关卡参考程序化生成。