2010-03-25 25 views
9

Estoy desarrollando un juego con zombies corriendo en un pantano. Quiero que las IA tengan funciones como "perseguir este objetivo" o "huir". Un gran obstáculo es la búsqueda de caminos. ¿Hay un buen motor de IA/pathfinding en XNA, o debería lanzar el mío?C# XNA: ¿Motor AI?

¿Alguien tiene alguna experiencia con esto: http://www.codeplex.com/simpleAI?

Respuesta

4

es posible que desee buscar algoritmos A-Star ... here is an article que lo menciona en el contexto de un winform, pero menciona a XNA.

4

hágalo usted mismo! Seriamente.

Supongo que estás haciendo este juego tanto por el disfrute de la codificación, ya que estás esperando la fama y la riqueza? Pathfinding es uno de los productos básicos de AI, y es un tema bien estudiado y documentado. Es una excelente introducción a un campo en el que necesitarás conocimiento en futuros esfuerzos de juego.

El A* Algorithm (mencionado por otros) es la solución estándar para este problema, pero pruebe otros enfoques: línea de visión, movimiento guionado, flocado ... a menudo puede obtener un comportamiento interesante combinando algunas técnicas.

Para un libro sobre el tema, pruebe AI For Game Developers - no es el mejor en el campo, pero ciertamente es una introducción accesible para el lego-codificador.

¡Diviértete jugando con los zombies!

0

El club XNA Creators tiene muestras para Chase and Evade y Flocking.

Acabo de comenzar el camino, pero parecen tener algunos buenos recursos en el sitio creators.xna.

Usaré alguna lógica de pathfinding en mi juego, el algoritmo A * parece ser el ganador para mí.

2

Para todos los que estén sugiriendo A *: generalmente no pondrías vainilla A * en un juego. Hay muchas mejoras y extensiones para A * que incluyen (pero no se limitan a) IDA * y tablas de transposición, que mejoran el rendimiento con la búsqueda basada en A *.

Puede que desee utilizar una biblioteca para comenzar, pero en última instancia puede beneficiarse más de su propia implementación personalizada, utilizando sus propios tipos de datos nativos de su aplicación, en lugar de tener que ordenar los datos hacia adelante y hacia atrás. Pero necesitarás un perfil para estar seguro.