我想開發一種算法來確定這兩個盒子(但我認爲它適用於任何凸多面體)相交。我將用它來進行碰撞檢測。高效地確定3D盒的交集
每個多面體的狀態表示爲其質心的平移向量和一個方向矩陣(3×3正交表示對象空間座標)。
我的一般想法是取兩個多面體的每個面,找出它的平面方程(應用多面體方向和平移分量),並遍歷另一個多面體的每個頂點,並確定是否他們全都在飛機的同一側,如果是,我確定這兩個物體不相交。
至於碰撞檢測部分,我會檢測它們是否相交,如果他們這樣做,我會在它們碰觸的時刻進行二分搜索,並嘗試在那一刻通過查找另一個對象的頂點來找到碰撞的頂點這與我之前發現的確定接觸點的平面最接近。
我的問題是,這個算法是否正確,如果是的話,這是否是一種矯枉過正?我能以某種方式抽出一些檢查,或加快進程?