IT用語集 › プログラミング › スイープアンドプルーン

スイープアンドプルーン

プログラミング Svenska → 更新: 2026-10-24

各軸上でバウンディングボックスの区間をソートし、すべての軸で区間が重なる組だけを検査するブロードフェーズのアルゴリズムである。

全オブジェクトを総当たりで調べるとO(n²)になり、数千個の物体では現実的でない。スイープアンドプルーン(sort and sweepとも呼ぶ)は、各ボックスの始点と終点をx、y、z軸に射影してリストをソートし、端から走査する。2つのボックスが衝突しうるのは、全軸で区間が重なるときだけである。それ以外は一括で刈り落とされる。

鍵は時間的コヒーレンスである。物体はフレーム間で少ししか動かないため、ソート済みのリストはほぼ整列したままで、挿入ソートがほぼ線形時間で終わる。この手法は1990年代初めにMing LinとDinesh Manochaが作ったI-COLLIDEライブラリに由来し、ほとんどの物理エンジンで、高価な精密判定の前段となる安価な第一関門として使われている。

← 用語集に戻る