-
A* version: lastest
-
Unity version: 6000.3.9f
Hi, please, I want to migrate from my current grid graph to recast graph because I suppose that is much more optimiced
Currently I have a map of 160 x 160 cells, I think that compute paths in that amount of cells is more heavy that compute the same path in recast graph, I know that is more performant to modify cells of grid graph, but that modifications happens very very low times.
I want to be sure that my performance increase will be notorious
I am develop a RTS with 600~ units per battle moving in the whole current map of 160x160 cells
Thanks so much!
I’d take a look at the profiler and see where you’re losing frametime to start. What part of pathfinding is bottlenecking your agents in the profiler?
160x160 isn’t particularly huge for a grid graph, so I’m wondering where you’re seeing the bottleneck- is just when you modify your graph or searching the paths? If it’s the former, how are you modifying your graphs- the whole thing at once or in sections?
Hi @tealtxgr
Here is the complete deep profile that show me something related to astar path
This is the profiler of only 100 units moving about 20 units of distance
May be I am execute something in wrong way?
I am confident about take care of each call optimization, but I don’t know
May be you can help me after see this
Thanks so much!
Whats your total frametime on a frame like this? Also if you can post your agent and graph settings (and ideally a video too so I can better piece this together) that would help
Note that in this particular example, the game is running pretty slowly (due to deep profiling). The FollowerEntity systems have had to resort to run 19 times in a single frame to try to ensure movement is still predictable despite the low frame rate. This makes it seem much more expensive than it actually is at a more reasonable frame rate.
That is a good metric for a grid map. Do you have any benchmarks? For example, should 1,000 units on a 250x250 grid be performant on a dual-core 2.5GHz mobile device? I am looking for a reference point to help me identify and resolve potential optimization issues.
1000 units on a 250x250 grid graph on mobile seems like a bit of a stretch I would say. Of course, mobile devices can vary significantly in how performant they are. But in my estimate, it seems like too much.
One last question, please.
My project is currently a hybrid of standard C# and your asset. Does this mix cause any performance bottlenecks at any point? In other words, would there be a noticeable difference if I used pure ECS for everything, or is it okay to keep this C# hybrid?
For example, my units frequently access remainingDistance. Does accessing this property from standard C# slow down the overall process?
Hi, i want know a little bit more about the packet working with my last question please
