D * está bastante envolvido - não recomendo tentar implementá-lo. Mesmo quando os projetos são bem financiados e estão sendo desenvolvidos por pessoas inteligentes / experientes, o D * lite é usado, porque D * é uma dor para acertar.
Você pode estar interessado nesta apresentação, que inclui uma discussão sobre o caminho do Left 4 Dead:
http://www.valvesoftware.com/publications/2009/ai_systems_of_l4d_mike_booth.pdf
Uma abordagem é usar uma pesquisa grosseira de nível A * para obter um caminho geral para um agente e, em seguida, fazer uma pesquisa fina no nível A * para o ambiente local de um agente. Dessa forma, você pode recompilar rapidamente a pesquisa A * dos detalhes do curso, se o terreno mudar e, em seguida, recompilar rapidamente a pesquisa A * de detalhes finos para um pequeno segmento do ambiente. Isto não é perfeito. Funciona desde que seus obstáculos não possam bloquear vários nós gráficos de detalhes do percurso, o que é bom para a maioria dos jogos. Esse é o método recomendado se você tiver menos de 100 agentes.
Se você deseja oferecer suporte a centenas ou milhares de agentes, pode implementar algo como multidões contínuas. Veja esta pesquisa:
http://grail.cs.washington.edu/projects/crowd-flows/
Que discute um método puramente baseado em CPU que pode suportar milhares de atores em um ambiente dinâmico.
Se você deseja oferecer suporte a dezenas de milhares ou centenas de milhares de agentes, pode implementar algo como multidões contínuas, com assistência da GPU. Consulte aqui a pesquisa relevante:
https://a248.e.akamai.net/f/674/9206/0/www2.ati.com/misc/siggraph_asia_08/GPUCrowdSimulation_SLIDES.pdf
Aqui está um vídeo demonstrando multidões contínuas em ação:
http://www.youtube.com/watch?v=lGOvYyJ6r1c
(pule para 4:10 para ver grandes obstáculos dinâmicos, como carros e semáforos, afetando centenas de pessoas andando pela cidade).