スペース (Space)

ジオメトリを格納する入れ物であり、衝突検出の対象を含む空間です。また、スペース内に他のスペースを含むこともできます。

スペースの作成・破棄

スペースには次の3種類があります。

  • Simple space
  • Multi-resolution hash table space
  • Quadtree space

作成 (Create)

Simple space

dSpaceID dSimpleSpaceCreate ( dSpaceID space );

Multi-resolution hash table space

dSpaceID dHashSpaceCreate ( dSpaceID space );

引数のspace内に新しいスペースを作成します。新規にスペースを作成するときは、引数に0を指定します。

Quadtree space

dSpaceID dQuadTreeSpaceCreate (
    dSpaceID space,
    const dVector3 Center,   //
    const dVector3 Extents,  //
    int Depth                //
    );

破棄 (Destroy)

void dSpaceDestroy ( dSpaceID );

クリーンナップモード (clean-up mode)

スペースのクリーンナップモードを有効にすることで、スペースを破棄したときにそこに含まれるジオメトリも自動的に破棄されるようになります。これは既定で有効となっています。

引数modeに1を設定することで有効となり、0で無効となります。

void dSpaceSetCleanup ( dSpaceID space, int mode );
int dSpaceGetCleanup ( dSpaceID space );