【3Dゲームエンジン】Unity総合スレッド27 [転載禁止]©5ch.net
■ このスレッドは過去ログ倉庫に格納されています
0218名前は開発中のものです。
2015/10/16(金) 07:59:39.58ID:UWqhF7qD_parentNodeとは、1マス前の場所かな?
それがnullとは、開始点のことかな?
GetPathで、道順を逆にたどっているのだろう。
Start → A → B → End なら、
E → B → A → S → null
1 3 2 2
2 S 1 1
4 4 4 4
まずSの隣接マスを、キューに入れる。[3,2,1,4]
すると、Sの右の1が選ばれて、キューは[3,2,4]となる
次に1の隣接マスを、キューに入れるが、
ここまでの移動コスト1を足す。
[2+1,1+1,4+1]=[3,2,5]
[3,2,4,3,2,5]、次に前の方の2を取り出すなど、再帰的に繰り返す
ダイクストラ・A*は、内部的には、
priority_queue(優先度キュー・順位キュー)を使っているので、
まずダイクストラから勉強すればよい
距離などのヒューリスティック(ヒント情報)を使わない、
つまり常に0にすれば、A*はダイクストラになる
■ このスレッドは過去ログ倉庫に格納されています