微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Unity Navmesh 性能问题

如何解决Unity Navmesh 性能问题

我目前正在使用 Unity Engine 导航网格组件进行消防疏散项目。但是,当我增加代理数量时,疏散性能显着下降。一些特工等待很长时间才能撤离。你知道我该如何解决这个导航网格代理的性能问题吗?

Evacuation Script

解决方法

将您的 SetDestination 移至 Start()

public Transform hedef;
NavMeshAgent agent;

void Start()
{
    agent = GetComponent<NavMeshAgent>();
    agent.SetDestination(hedef.position);
}

根据 NavMesh 文档,您正在帧更新和重新创建代理的路径。除非您的 hedef 位置发生变化,否则我认为没有理由这样做,从我从您的用例中可以看出,它不应该发生变化。如果它确实发生了变化,那么逐渐向单位发出位置发生变化的信号,这样当 Unity 重新计算它们的路径时你就不会出现任何卡顿现象。

,

我认为您需要提供更多详细信息,因为如果您的代理出门或类似的事情,您可以使用列表或队列先激活

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。