D * มีส่วนเกี่ยวข้องมาก - ฉันไม่แนะนำให้พยายามใช้มัน แม้ว่าโครงการที่ได้รับการสนับสนุนอย่างดีและได้รับการพัฒนาโดยคนฉลาด / มีประสบการณ์ D * lite ก็ถูกนำมาใช้เพราะ D * เป็นความเจ็บปวดที่จะได้รับสิทธิ
คุณอาจสนใจในงานนำเสนอนี้ซึ่งรวมถึงการสนทนาของ Pathfinding ของ Left 4 Dead:
http://www.valvesoftware.com/publications/2009/ai_systems_of_l4d_mike_booth.pdf
วิธีหนึ่งคือการใช้การค้นหาระดับ A * แบบหยาบเพื่อรับพา ธ ทั่วไปสำหรับเอเจนต์จากนั้นทำการค้นหารายละเอียดในระดับ A * สำหรับสภาพแวดล้อมในท้องถิ่นของเอเจนต์ ด้วยวิธีนี้คุณสามารถคำนวณรายละเอียดหลักสูตร A * ใหม่ได้อย่างรวดเร็วหากการเปลี่ยนแปลงภูมิประเทศและจากนั้นคำนวณรายละเอียดที่ละเอียดอีกครั้งอย่างรวดเร็ว A * เพื่อค้นหาส่วนเล็ก ๆ ของสภาพแวดล้อม มันไม่สมบูรณ์แบบ มันทำงานได้ตราบใดที่อุปสรรคของคุณไม่สามารถบล็อกโหนดกราฟรายละเอียดหลายหลักสูตรซึ่งดีสำหรับเกมส่วนใหญ่ นี่คือวิธีที่ฉันแนะนำถ้าคุณมีตัวแทนน้อยกว่า 100
หากคุณต้องการสนับสนุนตัวแทนหลายร้อยคนหรือหลายพันคนคุณสามารถใช้สิ่งต่างๆเช่นฝูงชนที่ต่อเนื่อง ดูงานวิจัยนี้:
http://grail.cs.washington.edu/projects/crowd-flows/
ซึ่งกล่าวถึงวิธีการที่ใช้ CPU อย่างหมดจดที่สามารถรองรับนักแสดงหลายพันคนในสภาพแวดล้อมแบบไดนามิก
หากคุณต้องการสนับสนุนตัวแทนนับหมื่นหรือตัวแทนนับแสนคุณสามารถดำเนินการบางอย่างเช่นฝูงชนที่ต่อเนื่องด้วยความช่วยเหลือของ GPU ดูที่นี่สำหรับการวิจัยที่เกี่ยวข้อง:
https://a248.e.akamai.net/f/674/9206/0/www2.ati.com/misc/siggraph_asia_08/GPUCrowdSimulation_SLIDES.pdf
นี่คือวิดีโอสาธิตการใช้งานฝูงชนอย่างต่อเนื่อง:
http://www.youtube.com/watch?v=lGOvYyJ6r1c
(ข้ามไปยัง 4:10 เพื่อดูสิ่งกีดขวางแบบไดนามิกขนาดใหญ่เช่นรถยนต์และสต็อปไลท์ที่ส่งผลกระทบต่อผู้คนหลายร้อยคนที่เดินไปรอบเมือง)