typedef struct{ NJS_POINT3 p; NJS_VECTOR v[3]; } NJS_PARAHEXA;
p 平行六面体のある頂点 v[3] 頂点 p を始点とする辺のベクトル
コリジョン用の平行六面体を定義する構造体です。平行六面体の8頂点の座標が以下のように定義されます。
p
p+v[0]
p+v[1]
p+v[2]
p+v[0]+v[1]
p+v[1]+v[2]
p+v[2]+v[0]
p+v[0]+v[1]+v[2]コリジョン関数は、高速化のため、一般的な平行六面体は扱 わず、直方体であることを仮定します。
したがって、v[0], v[1], v[2] が互いに直角である ようにしてください。
なお、v[0],v[1],v[2] の与え方に右手系、左手系などの制限 はありません。どのように与えても、上記で定義された直方体 の周囲及び内部がコリジョンの対象になります。
njCollisionCheckB2B2() 2つの直方体の当たり判定 njCollisionCheckB2C() 直方体とカプセルの当たり判定 njCollisionCheckB2S() 直方体と球の当たり判定 njGetBox2MinMax() 平行六面体のバウンディングボックスを算出