Code:
ObjectInfo
{
int ObjectID;
int NumGeometryNodes;
int NumDOFNodes;
ObjectInfo *m_pNextNode;
ObjectInfo *m_pPrevNode;
// any other nodes we might have
};
Or use the STL list, vector, etc.
For example a quadtree structure:
Code:
struct QuadTreeNode
{
int m_iType; //Node or leaf?
QuadTreeNode *m_pUL; //Upper left child
QuadTreeNode *m_pUR; //Upper right child
QuadTreeNode *m_pLL; //Lower left child
QuadTreeNode *m_pLR; //Lower right child
D3DXVECTOR3 m_vecMin,m_vecMax; //Bounding box
Object *m_pObjectArray; //Objects in this node
int m_iNumObjects; //Number of objects in node
};
Code:
class CTerrain
{
QuadTreeNode *m_pRoot; //Start of quad tree
....
....
};