Así que he comprendido cómo usar A * para encontrar rutas, y puedo usarlo en una cuadrícula. Sin embargo, mi mundo de juego es enorme y tengo muchos enemigos que se mueven hacia el jugador, que es un objetivo en movimiento, por lo que un sistema de cuadrícula es demasiado lento para encontrar el camino. Necesito simplificar mi gráfico de nodos usando una malla de navegación.
Comprendo el concepto de "cómo" funciona una malla (encontrar un camino a través de nodos en los vértices y / o los centros de los bordes de los polígonos).
Mi juego utiliza obstáculos dinámicos que se generan procesalmente en tiempo de ejecución.
No puedo entender cómo tomar un avión que tiene múltiples obstáculos y dividir programáticamente el área transitable en polígonos para la malla de navegación, como en la siguiente imagen.
¿Dónde empiezo? ¿Cómo sé cuándo un segmento de área transitable ya está definido, o peor, cuando me doy cuenta de que necesito subdividir un área transitable previamente definida a medida que el algoritmo "recorre" el mapa?
Estoy usando JavaScript en nodejs, si es importante.