日記は1日ひとつまで。誰が決めた。んなこと。
ということで今度は昨日ここのチャットで聞いたシューティングにおける当たり判定の負荷を下げる方法について記載。
昨日は先生がいなかったため聞けなかったが、今日はいたので聞いてみた。
方法1
画面座標でグリッド単位に分割してそのグリッド内のオブジェクト同士でのみ当たり判定をすること。
キャラクタに現在どのグリッドにいるのかの情報を配列で保持させる。
これはグリッド内にオブジェクトは無視できるためにものすごく有効らしい。
似たような記載をしたサイトを見つけたので乗っける。
http://d.hatena.ne.jp/tomoemon/20080429/p3
方法2
X座標なりY座標なり優先的に判定する値を見て、当たってなかったら無視する方法。
これはとても微妙だが負荷が下がるらしい。
横スクロールならY座標を優先して、縦スクロールならX座標を優先してってところだろうか。
なんにせよシューティングなどの大量のオブジェクトに対する当たり判定の処理負荷軽減は人類における最大の問題であり、答えは人の数だけある無数にあることだろう。
もうひとつ
コメントはまだありません。