I want to use NavMesh AI AND I want to place and destroy blocks.

I’ve baked a navmesh with an AI Enemy. I want to be able to place blocks and have the enemy navigate it’s way around them. I also want to be able to destroy these blocks. Apparently you can’t generate a navmesh at runtime. How can I do this?

Take a look at Navigation and Pathfinding, especially at Creating a NavMesh Obstacle page. It’s exactly what you want.

NavMesh can not be backed at runtime, but can be ‘cut’ by obstacles.

How about you move the carved object away from the navmesh, that way the navmesh will update without the carve in it, then once it has been updated you can safely remove the obstacle.