2009-05-06 9 views
5

경로 찾기에 A-star (A *)를 사용하는 게임에서 작업하고 있는데, 나는 하나의 격자 사각형보다 큰 어떤 물체를 가지고있다.길 찾기 상황에서 다른 크기의 대상을 다루는 방법 (A *, 별표)

저는 16 * 16 픽셀의 그리드에서 실행됩니다. 벽 부분은 16 * 16이므로 하나의 사각형은 통과 할 수 없게 만듭니다. 내 baddies 중 일부는 32 * 32 그래서 그들은 throguh 그것을 통과 할 수 있도록 격차가 적어도 2 그리드 스퀘어 와이드인지 확인해야합니다.

디자인에 얇은 벽 (16px에서)이 필요하고 한 개의 16 * 16 사각형 만 차지하는 몇 가지 작은 baddies가 있으므로 그리드 32 * 32를 간단히 만들 수는 없습니다.

어떻게이 다중 해상도 환경을 구현합니까? A-star는 여전히 올바른 도구입니까? 비교적 간단한 솔루션을

답변

0

, 나는 16 × 16 크기의 객체로하지만, 사각형은 걷기인지 아닌지 평가하는 약간 다른 방식으로 같은 A * 알고리즘에 충실 것입니다.

  • 16x16 크기의 물체는 그 사각형을 걸을 수 있으면 사각형 위를 걸을 수 있습니다.
  • 32x32 크기의 물체는 사각형과 그 이웃이 모두 걷기 쉬운 경우 사각형을 걸을 수 있습니다.
+1

불행히도, 간격이 2 제곱 인 경우에는 작동하지 않습니다. 격차의 두 사각형은 걷기 불가능한 이웃을 가지고 있으므로 걷지 못하는 것으로보고합니다. 오른쪽 아래, 오른쪽 아래 및 오른쪽 아래의 사각형도 걸어 갈 수있는 경우 타일이 32 크기 개체에 대해 이동 가능하다고 말하는 것이 더 좋습니다. –