답변:
움직이는 장애물이있는 경로를 다시 계산해야 할 때 A *보다 훨씬 빠른 여러 알고리즘이 있습니다. "간단한 재 계산"아래를 참조 하십시오 .
그러나, 당신은 그들 중 하나에 대한 기성품 솔루션을 찾지 못할 것이므로 99 %의 경우 게임에 너무 과도합니다. 기존의 완전히 최적화 된 A * 솔루션을 사용하고 게임에서 길 찾기 속도를 높이기 위해 일반적인 기존 트릭을 사용하면 시간을 더 잘 사용할 수 있습니다.
이 트릭에 대한 자세한 정보는이 사이트 전체 또는 Amit의 A * 페이지에서 확인할 수 있습니다.
예. A *는 여전히 거의 모든 경우에 적용되는 방법입니다. 그것은 당신의 동적된다 노드 비용 계산 과 계산 및 추적하는 것이 더 복잡합니다.
미래에 움직이는 장애물이 어디 있는지 이미 알고 있다면 A *는 비용 함수에서 장애물의 시간을 고려할 수 있습니다.
예 :이 노드는 틱 # 3에서 틱 # 6까지 차지하는 4 틱으로 도달하므로이 노드의 이동 비용은 6-4 = +2 틱입니다. 그것은 여전히 가장 좋은 길일 수 있습니다.
장애물의 진행 방향도 고려해야합니다.
미리 알지 못하는 경우 장애물이 없을 때 장애물을 고려하지 않고 경로를 다시 계산할 수 있지만 교착 상태 및 라이브 록에 대한 작업을 수행해야합니다. 장애물이있는 위치를 예측할 수 있지만 그 자체가 교착 상태 / 라이브 록 회피 유형이고 목적에 충분할 수있는 경우에도 마찬가지입니다.
교착 상태는 둘 다 상대방이 움직일 때까지 기다리면서 움직이지 않을 때입니다.
모두 (때 라이브 록은 이상 이동 같은 방향으로 기타를 방지하고 앞뒤로없이 진행 가고 결국 -이 고려하는 것이 중요하다 <)가.
라이브 록을 해결하는 것은 매우 복잡 할 수 있으며 이는 게임의 충돌 규칙과 메커니즘에 따라 다릅니다 (예 : 장애물과 싸우고 파괴해야합니까?).
이동 객체가 노드 / 경로 예약을 예약하는 경우가 종종 있습니다 (경로 또는 다이 변경시 취소를 잊지 마십시오).
이 정보가 있으면 가로 채기를 계획 할 수도 있습니다.