Nav Mesh Generation

Hey guys, as a fun project, I’d like to build a nav mesh generator for PlayCanvas and I’d like your tips and suggestions on how to proceed.

From what I understand, at a high level, the algorithm should:

  • Take level geometry as an input
  • Convert that level geometry into polygon(s) representing walkable surfaces
  • Apply triangulation to polygon(s)

Here are some questions:

  • Am I missing any important step?
  • Do you have any tips on how to implement any of the steps?
  • Can you point me to an article, blog post, research paper, book etc. that describes a simple algorithm for nav mesh generation? (Google hasn’t turned up a simple comprehensive source of information on nav mesh generation)