Game Development Community

dev|Pro Game Development Curriculum

Walkabout R1P4: water, water, everywhere!

by Daniel Buckmaster · 03/28/2014 (1:05 am) · 10 comments

Yes, it's that time of year again! Walkabout has a new patch, which introduces a new feature I've wanted for ages - water handling. Now you have three options you can apply to your NavMeshes, as demonstrated in the image below. I think it's pretty self-explanatory, but for those of you who prefer to read my lovely words:

  • Solid mode is most appropriate when your bots can swim on the water's surface. It treats water as a solid, walkable surface and generates a navmesh on it as it does other pieces of ground. Note that currently there is no differentiation between watery and soily surfaces, so you'd better be sure all of your bot types (that use this navmesh) like water!

  • Ignore mode is the current behavior - watery objects get totally ignored, treated as if they don't exist. This is mainly for backwards-compatibility; however, if you have maybe some underwater caves that need pathfinding, you could use this.

  • Impassable mode treats water surfaces as non-walkable, so your bots will navigate around them. Note that, as in the image, navmesh is generated underwater. This happens inside all other obstacle types as well; it's an unavoidable consequence of the way Recast generates your navmesh. Do not be alarmed! As long as the water surface intersects the ground everywhere, characters won't get down there.
As usual, the update can be downloaded from the website, or email me if the auto-download-email-thing has decided not to work today.

Three different options for responding to watery obstructions. The Soldier got bored and buggered off at some point during the photo shoot.

In other news,

you may have noticed that I've been selected to join the new T3D Steering Committee, which is an honour and quite exciting. Sorry we've been quiet so far; you'll be hearing from us soon! In the meantime, there is some good discussion going on about the new committee's role and operations. And we're having lots of chats internally, trying to decide on how nto proceed! I want to clarify that I'll be continuing to develop Walkabout, as well as my own open-source contributions to T3D, both individually and as part of the Committee.

'Til the next time: fare thee well!

About the author

Studying mechatronic engineering and computer science at the University of Sydney. Game development is probably my most time-consuming hobby!

03/28/2014 (1:11 am)
sweet! much needed thanks Daniel.
03/28/2014 (1:24 am)
@Daniel: Awesome news on the new release. 8-} And congratulations on joining the steering committee. 8-D
03/28/2014 (3:35 am)
Just a thought, couldn't you generate geometry for both passable and impassable water, and then choose which geometry to use when plotting a path?
03/28/2014 (4:01 am)
Unfortunately no, Recast doesn't work like that. At the moment if you need different water handling for different bot classes, you've got to set up two navmeshes.

...which is kind of exactly what you suggested. Sort of.
03/28/2014 (5:04 am)
Very nice Daniel, there's just one problem: Nor any drop to drink. ;P
03/28/2014 (8:14 am)
Cool stuff, Daniel. :)
03/28/2014 (6:05 pm)
congrats sir!
03/28/2014 (11:30 pm)
Coooool @Daniel! :)
03/31/2014 (1:59 pm)
Congrats! Daniel
04/05/2014 (9:18 pm)
Congrats Dan!! and the coverpoint pose solution works great... Now my cover sets the ai's pose as opposed to me setting it... ie, stand, crouch, prone... :)