|Session Name:||Dynamic Navmesh - AI in the Dynamic Environment of Splinter Cell: Conviction|
|Company Name(s):||Ubisoft Montreal|
|Track / Format:||Programming|
Today's game environments are becoming more dynamic. Whether it be more objects moving around, or fully destructible environments, NPCs need a way to deal with the changing state of the environment in an intelligent manner. With just a few objects moving around, standard avoidance algorithms worked well, but with the complexity of this generation of games, a more sophisticated approach is necessary.
The goal of this session is to present to the approach used on Splinter Cell: Conviction to deal with dynamic environments: The Dynamic Navmesh. The attendee will be shown the initial solutions developed to implement the fundamental Dynamic Navmesh operations, why some of them failed, and the final solutions we came up with. Along the way many performance and robustness issues were encountered. Some of those will be presented as well, along with the solutions developed to overcome them.