Why do these gridmap tiles not work with the navmesh?

Godot Version

4.4.1, Linux

Question

I’ve been working on a game that needs a navmesh and a tile-based 3D map, and I figured that functionally yesterday, but there is a weird quirk, seen below:

Those are sidewalk tiles and the one that has no navmesh is the middle ramp section, like you see on the entrance to a parking lot. I’ve checked and double checked the file, the colonly naming and nesting, there’s no reason I can find that it wouldn’t work, when the others work just fine.

Anyone know what’s going on here?

No idea.

I think an easy fix is just to move the NavigationRegion3D up a bit on the Y-axis.

I would recommend you actually build a map with it and try it out before worrying though.

I am building a map, that’s how I noticed this. I’m not going to finish the map with this going on only to have to go and fix it all later, or worse discover that it’s unfixable and have to rebuild it all.

Ok. Well, that’s not the screenshot you showed. I can only go on the information I am given.

Did you try moving the NavigationRegion3D up?

Like, along the Y axis? No, but I can give it a try.

Nope, same problem, it’s just moving the gridmap with it. The gridmap is a child of the nav region, that’s the only way I could find to get it to generate the navmesh at all.

1 Like

Is there any other way to have a navmesh generate on a gridmap?
I couldn’t figure out any other way. But even if there is, it’s weird that only the middle sections of the sidewalks ramps do this. The corner ramps work fine, and even the crosswalk corners work fine. It’s only the middles.

How are you generating it? Using the button in the editor or in code?

Yes, it is weird. My guess is that the ramp is slightly higher at its highest point, or there’s something about the angle of the ramp geometry.

Just saw this. Editing a reply doesn’t give a notification.

What’s your Baking AABB look like?
Inpsector → Navigation Mesh → Filters → Baking AABB

Using the button, I’m just learning GDscript.

In Blender the ramp and its collision object are the same height as the other sidewalks, and I have a lot of ground panels with different heights and they all work.

I just tried playing with the AABB settings as you suggested. No difference, they are still the only ones it won’t recognize as ground.

I even tried raising part of them at the back, thinking maybe the corner on the original wasn’t being seen, so now there’s a big flat at the top, and still nothing.

Ok, I figured it out. The meshes were inside out for some reason.
Not the colonly blocks either, the visual mesh object. I don’t know how that happened, but because of that, the navmesh generator just saw it as nothing. I wouldn’t have thought it used the visual mesh as a basis for that either.
So TL,DR: Check your tiles are right side out.

1 Like

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.