ホームページ >ウェブフロントエンド >H5 チュートリアル >ゲーム パスファインディング用のコード共有を実装する HTML5+A* アルゴリズム

ゲーム パスファインディング用のコード共有を実装する HTML5+A* アルゴリズム

黄舟
黄舟オリジナル
2017-03-24 15:45:302533ブラウズ

関数の説明: A* アルゴリズムと

Http

を組み合わせる: //www.php.cn/wiki/1118.html "target =" _lank "> HTML5

「交差点角ルール」の実装について話しましょう。その中で言及されています:

いわゆる 「コーナーを越えるルール」

は、下の図に示すような状況です。 右側の赤い四角形が上の黄色の四角形に到達したいとき、緑が障害物であると仮定します。赤い四角形から黄色の四角形に直接ジャンプすることはできず、青い四角形を通過する必要があります:

私の実装方法は、現在のグリッドの x 値と次のグリッドの y 値、または現在のグリッドの y 値と次のグリッドの x 値を使用する グリッドが障害物である場合、この経路探索プロセス中にグリッドは無視されます

コード:

if (isWall(pointsArr[i][point.x], this.wallValueArr) || isWall(pointsArr[point.y][j], this.wallValueArr)) {                             
 //拐角规则,如果检测某点四周的点时,该点和四周上某点之间隔着一个障碍物,则忽略该点,暂不添加到开始列表
                continue;
                        }

以上がゲーム パスファインディング用のコード共有を実装する HTML5+A* アルゴリズムの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。