I recently integrated Unity Pro’s NavMesh solution to my RTS-like game but was quickly disappointed with the results. Say I have some simple units standing in a line, creating a wall and blocking the pathway. If I take my player controlled unit and try moving him from one side of the “unit-wall” to the other side of the unit-wall, my unit decides to run directly at the wall, rather than just simply navigating around it. In addition, whats worse is that the unit runs into the other units on the wall, and then eventually pushes them aside (all while slowing down significantly). Is this what they call local avoidance? Can you imagine if an RTS like StarCraft allowed you to push your enemies out of your way? Or if your units slowed down tremendously just because they’re clumping up and figuring out how to run together?
Knowing that Unity’s native solution was completely unacceptable, I’m looking for a framework that will let my units in my RTS avoid each other, especially if that means running around each other and not into each other while slowing each other down. I read your documentation and all the tools and features that come with this framework sound impressive, but it’s not clear whether it will actually solve my problem. How can I accomplish my goal here? It this a form of “local avoidance.” Should I be using a different strategy entirely?
Ultimately, I want a pathing solution that will prevent my units from pushing each other around, and rather have them run around each other. Do you think you can shed some light on my confusion?