• Advertisement
Sign in to follow this  
  • entries
    235
  • comments
    509
  • views
    172298

Navigation Adjustments

Sign in to follow this  

93 views

The Industrial game level is starting to shape up, and it features some new architecture that the AI hasn't dealt with before, including pipes that run along walkways, and others that have shown up previously, like walkways and handrails.

I placed some enemies in the level and tested them chasing me around, and I found that they would get stuck near the piped walkway - the nav system was connecting the grid points on both sides of the handrail, so the AI thought it could go through it.

This is most likely caused by the AI using swept spheres instead of capsules for the nav tests, but rather than jump into that code again, which hasn't been touched for ages, I added a feature that I think will be needed later anyway, and can be used to address this.

Tonight I made the engine pick up two new facets on static meshes, static entities and triggers to influence the navigation map.

Here is a shot of a user-created trigger surrounding the pipe mesh to make the AI avoid walking on the pipe, or pathing through it.


During the level build process, the engine finds all nav paths near the oriented bounding box of the tagged mesh, entity or trigger object, and adjusts the path costs. If the nav path crosses or is contained in the box, its navigation costs are adjusted.

The "nav_modulate" facet multiplies the factor by the current nav cost.

The "nav_add" facet adds an offset.

Nav costs < 1 are clamped to 1. A link with a Nav costs >= 100 is broken completely.

So the level designer can either add triggers to influence the path finding AI towards or away a certain route, or block it completely. Alternately, she can just add the facet to a static mesh itself to make the AI prefer or avoid it for navigation purposes.

Here is a shot of resulting surviving paths, with both the railing and the pipe mesh tagged with impassable nav costs.


A similar method is planned to identify cover and vulnerable tactical map sections.
Sign in to follow this  


2 Comments


Recommended Comments

I have been following your progress in this journal for quite some time now, and I have to say that I am really impressed with how it is shaping up. The early posts were really more like tech demos showing off your renderer, but the more recent posts that have been incorporating the newer meshs and level design aspects are really starting to look like nice.

Do you have any type of rough idea about when the prequel is supposed to be ready (or in beta?)? It would be really cool to have seen the progress on the game come so far and see the final product. Keep up the good work!

Share this comment


Link to comment
"I have been following your progress in this journal for quite some time now, and I have to say that I am really impressed with how it is shaping up. The early posts were really more like tech demos showing off your renderer, but the more recent posts that have been incorporating the newer meshs and level design aspects are really starting to look like nice."

Thanks - yes artists are great, aren't they? It really adds a whole new level. And our custom theme music is quite good as well.

"Do you have any type of rough idea about when the prequel is supposed to be ready (or in beta?)? It would be really cool to have seen the progress on the game come so far and see the final product. Keep up the good work!"

Yes, it's supposed to be finished in a few weeks. If you are interested in doing beta testing, let me know at simmer@gmail.com. Obviously if you don't have a physics card you won't be able to test those aspects, but the beta will be playable without one for compatibility and perf testing.

Share this comment


Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Advertisement