Physics2D/PhysWorld2D: Add damping control
This commit is contained in:
parent
15c37d1524
commit
b4d0854028
|
|
@ -40,6 +40,7 @@ namespace Nz
|
||||||
PhysWorld2D(PhysWorld2D&&) = delete; ///TODO
|
PhysWorld2D(PhysWorld2D&&) = delete; ///TODO
|
||||||
~PhysWorld2D();
|
~PhysWorld2D();
|
||||||
|
|
||||||
|
float GetDamping() const;
|
||||||
Vector2f GetGravity() const;
|
Vector2f GetGravity() const;
|
||||||
cpSpace* GetHandle() const;
|
cpSpace* GetHandle() const;
|
||||||
float GetStepSize() const;
|
float GetStepSize() const;
|
||||||
|
|
@ -55,6 +56,7 @@ namespace Nz
|
||||||
void RegisterCallbacks(unsigned int collisionId, const Callback& callbacks);
|
void RegisterCallbacks(unsigned int collisionId, const Callback& callbacks);
|
||||||
void RegisterCallbacks(unsigned int collisionIdA, unsigned int collisionIdB, const Callback& callbacks);
|
void RegisterCallbacks(unsigned int collisionIdA, unsigned int collisionIdB, const Callback& callbacks);
|
||||||
|
|
||||||
|
void SetDamping(float dampingValue);
|
||||||
void SetGravity(const Vector2f& gravity);
|
void SetGravity(const Vector2f& gravity);
|
||||||
void SetStepSize(float stepSize);
|
void SetStepSize(float stepSize);
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -21,6 +21,11 @@ namespace Nz
|
||||||
cpSpaceFree(m_handle);
|
cpSpaceFree(m_handle);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
float PhysWorld2D::GetDamping() const
|
||||||
|
{
|
||||||
|
return float(cpSpaceGetDamping(m_handle));
|
||||||
|
}
|
||||||
|
|
||||||
Vector2f PhysWorld2D::GetGravity() const
|
Vector2f PhysWorld2D::GetGravity() const
|
||||||
{
|
{
|
||||||
cpVect gravity = cpSpaceGetGravity(m_handle);
|
cpVect gravity = cpSpaceGetGravity(m_handle);
|
||||||
|
|
@ -159,6 +164,11 @@ namespace Nz
|
||||||
InitCallbacks(cpSpaceAddCollisionHandler(m_handle, collisionIdA, collisionIdB), callbacks);
|
InitCallbacks(cpSpaceAddCollisionHandler(m_handle, collisionIdA, collisionIdB), callbacks);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void PhysWorld2D::SetDamping(float dampingValue)
|
||||||
|
{
|
||||||
|
cpSpaceSetDamping(m_handle, dampingValue);
|
||||||
|
}
|
||||||
|
|
||||||
void PhysWorld2D::SetGravity(const Vector2f& gravity)
|
void PhysWorld2D::SetGravity(const Vector2f& gravity)
|
||||||
{
|
{
|
||||||
cpSpaceSetGravity(m_handle, cpv(gravity.x, gravity.y));
|
cpSpaceSetGravity(m_handle, cpv(gravity.x, gravity.y));
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue