シューティングゲーム製作技術総合 15機目at GAMEDEVシューティングゲーム製作技術総合 15機目 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト244:名前は開発中のものです。 08/04/06 09:49:50 LNMxVQdl 現空間x-1 <= 判定対象空間x && 判定対象空間x <= 現空間x+1 245:名前は開発中のものです。 08/04/06 10:21:25 UvIpq6SI すみません。 空間分割による判定、のメリットというものがどうもイメージできないのですが、 例えば、縦シューで自機と敵弾(256発)の当たり判定で、 for(int i=0; i<256; i++){ if((自機Y座標-敵弾Y座標)の絶対値<当たりの深さ){ if((自機X座標-敵弾X座標)の絶対値<当たりの深さ){ (当たっている処理) } } } という単純な座標比較による総当たりを行っている場合、 空間分割にする場合どのように変更して、またそれによりどのくらいの恩恵が 得られるのでしょうか? 246:名前は開発中のものです。 08/04/06 10:32:56 wmWZV0ag >>243 >空間分割して、空間内にあるかどうかの判定って矩形判定みたいなもんだよね。 それじゃ逆に判定回数増えるだろ。 例えば4分割だとしたらオブジェクトのポインタのリストを4つ準備して オブジェクトを動かした後にでも空間別にリストに登録する。 判定したいオブジェクトの空間のリストのみ判定する。 空間の境界をまたぐ場合があるから実際はリストよりツリーを使うみたいだけど。 自機対敵弾みたいな1対多のような場合は>>240の可能性もあるが しっかり最適化すれば恩恵はあると思う。 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch