プログラミングの解説動画の第16弾です(前回)。
ゲームなどで敵や味方キャラクターが
うまく障害物を避けながら目的地に向かうことがありますが、
あれは「ルート探索」の処理が内部で実行されています。
単にゴールをまっすぐ目指すだけだと
「コ」や「ヘ」のような形をした障害物に引っかかってしまって
いつまでも前に進めない状態になってしまうので、
進路上にそういった邪魔なものがあったとしても
ぐるっと回り込んで目的地へ到達する必要があります。
そんなときによく利用されるのが
「A*(エースター)」と呼ばれるアルゴリズム。
ルート探索の代表的な手法で、
これが作れると学生作品でも割とアピールになります。
どうやって解説しようか悩みましたが、
今回はExcelを使うのが一番見やすそうだったので
1枚1枚スクリーンショットを撮りながら動画を作ってみました。
実際にプログラムで実現させるには
データ管理のセンスが必要になりますが、
キャラクターを賢そうに見せることができるので
うまく動くとなかなか嬉しいです。