07/03/10 02:15:40 /U9PtoGQ
>>13
まだ見てるかな?
大昔に似たようなのやったことあるからアドバイスするよ。
俺の場合はA*だった。ただしノードを点として扱うのではなく、大きさを持った四角形として扱った。
たとえば部屋は1つの四角形として定義できるし、L字型の道は2つの四角形がくっついたものとする。
この四角形同士が重なっている部分を見つけて繋がりを認識し、ある四角形から他の全ての四角形への距離をコストとして計算する。
当然繋がっている四角形同士は0コストになる。
実際の移動は、繋がっている場所(四角形同士が重なっている部分)を経由しながら移動する。
処理速度に関しては全く問題ない。
ダンジョン生成時にあらかじめ計算をする必要があるが、それでもプレイヤーを待たせるほどの時間はかからない。
ダンジョンに限らず、色々な場面に使えると思うよ。