添加navmeshAgent会导致游戏冻结

时间:2017-10-22 18:10:09

标签: c# unity3d navmesh

我有一个脚本,在我创建的地形上经过一段时间后会产生敌人。它适用于创建的前三个敌人,但是当它第四次添加navmeshagent时它会冻结整个游戏。

     select u).Take(10).Select(x => new schoollinfo() { Name = x.name, Lat = x.Location.Latitude, Lng = x.Location.Longitude, Distance = DbGeography.FromText("POINT(" + x.Location.Longitude + " " + x.Location.Latitude + ")", 4326).Distance(point) }); 

我使用服务员和spawnWait延迟了时间。在创建第四个对象并向其添加navmeshagent之后,它似乎总是冻结并崩溃。我发现它可能来自现场的反叛。有没有办法阻止它冻结或重新绑定。或者有没有更好的方法用navmeshagents在一个设定的位置产生敌人?

1 个答案:

答案 0 :(得分:0)

对我来说,你的剧本工作正常。只用一个spawnable对象尝试它(可能是你有null对象或从数组边界开始)。逐步调试它。尝试将Spawn方法放入Coroutine进程(docs.unity3d.com/Manual/Coroutines.html)。