Comments on: Fine Tuning Steering Forces I think you highlight the only place it really works ok - when each entity has a lot of freedom and space around it and I'm dealing with only one potential collision at a time. The problem comes when I have to avoid multiple collisions - like a space filled with random columns for example. Basically the response to a potential collision results in you heading directly into another collision and you just oscillate between them until you crash. Other problems occur when you are trying to avoid entities next to other obstacles and the basic steering rules just push you into the wall where you get stuck. You need to have a solution to all near collisions, and won't conflict with other entities collision avoidance solutions (both entities avoid in the same direction and run into each other). I personally think that dynamic collision avoidance is the single most complicated issue in game AI at the moment. Most of the thinking seems to be focused on either runtime modifications to the navigation data that pathfinding uses or on avoidance steering involving velocity objects (RVO and the like). I think you highlight the only place it really works ok – when each entity has a lot of freedom and space around it and I’m dealing with only one potential collision at a time. The problem comes when I have to avoid multiple collisions – like a space filled with random columns for example. Basically the response to a potential collision results in you heading directly into another collision and you just oscillate between them until you crash. Other problems occur when you are trying to avoid entities next to other obstacles and the basic steering rules just push you into the wall where you get stuck. You need to have a solution to all near collisions, and won’t conflict with other entities collision avoidance solutions (both entities avoid in the same direction and run into each other). I personally think that dynamic collision avoidance is the single most complicated issue in game AI at the moment. Most of the thinking seems to be focused on either runtime modifications to the navigation data that pathfinding uses or on avoidance steering involving velocity objects (RVO and the like).

]]>
By: kenny b/2011/05/14/fine-tuning-steering-forces/#comment-4218 kenny b Mon, 16 May 2011 19:11:02 +0000 Interesting. Yes even though I update the various components of the AI at different rates (sensing and decision making primarily) Any low level stuff like steering I find needs to be updated every frame. And yeah, oscillations are the worst. I found that besides needing nicely behaved forces that ramp up slowly the system needs some motion dampening and some stickiness once entities come to rest. Also making sure that animation blends aren't carrying the entity farther than they want to go. Analyzing the forces that are causing the entities to be unable to find an equilibrium point is certainly non-trivial at times, but it usually reduces to their response to a force carrying them passed their equilibrium point so that they can't modify their velocity before they get there. Obviously updating at a lower frame rate would only exacerbate this problem. Interesting. Yes even though I update the various components of the AI at different rates (sensing and decision making primarily) Any low level stuff like steering I find needs to be updated every frame. And yeah, oscillations are the worst. I found that besides needing nicely behaved forces that ramp up slowly the system needs some motion dampening and some stickiness once entities come to rest. Also making sure that animation blends aren’t carrying the entity farther than they want to go. Analyzing the forces that are causing the entities to be unable to find an equilibrium point is certainly non-trivial at times, but it usually reduces to their response to a force carrying them passed their equilibrium point so that they can’t modify their velocity before they get there. Obviously updating at a lower frame rate would only exacerbate this problem.

]]>
By: Clodéric Mars/2011/05/14/fine-tuning-steering-forces/#comment-4206 Clodéric Mars Mon, 16 May 2011 14:07:19 +0000