具有A * Pathfinding Unity的500个代理的性能非常差

问题描述 投票:0回答:1

我正在游戏中使用AI系统的A *寻路和行为管理器,并使用500个代理在地图上巡逻。正常吗我需要将FPS增加到60 FPS,现在大约是5 ...我该怎么办?

经过大量试验,分析器结果为;

1)没有astar寻路,行为管理器和任何代理(在主线程上大约2ms)。enter image description here

2)如果没有astar寻路和行为管理器,则只有500个代理enter image description here

3)仅具有500个代理的astar寻路(无任何移动命令)enter image description here

4)同时具有astar寻路和行为管理器(带有巡检命令),具有500个代理enter image description here

注意:我在代理中使用字符控制器,我试图禁用它,但是增益微不足道。此外,我在AIBase.cs()中禁用了fixedUpdate部分。

顺便说一句,我正在使用1个单个重铸图,其中包含以下选项和结果。enter image description here

unity3d a-star
1个回答
0
投票

您是否尝试过在线程之间拆分它们?寻路算法的计算量很大,不应在更新中进行。

© www.soinside.com 2019 - 2024. All rights reserved.