diff --git a/OdeWorld.cc b/OdeWorld.cc index 38b4aba..daf3e61 100644 --- a/OdeWorld.cc +++ b/OdeWorld.cc @@ -4,9 +4,14 @@ OdeWorld::OdeWorld() { m_world = dWorldCreate(); + m_space = dHashSpaceCreate(0); + m_contactJointGroup = dJointGroupCreate(0); + setGravity(0, -9.81, 0); } OdeWorld::~OdeWorld() { + dJointGroupDestroy(m_contactJointGroup); + dSpaceDestroy(m_space); dWorldDestroy(m_world); } diff --git a/OdeWorld.h b/OdeWorld.h index 055a6d0..f2121c0 100644 --- a/OdeWorld.h +++ b/OdeWorld.h @@ -9,9 +9,15 @@ class OdeWorld public: OdeWorld(); ~OdeWorld(); + void setGravity(float x, float y, float z) + { + dWorldSetGravity(m_world, x, y, z); + } protected: - dWorldID m_world; + dWorldID m_world; + dSpaceID m_space; + dJointGroupID m_contactJointGroup; }; #endif