Update PhysicsSystem2D (#179)

* Update

* Add: [Get/Set]AngularDaming for standardization

* Fix: Name error

* Add: [Get/Set][AngularDamping/MomentOfInertia] in PhysicsComponent2D

* Forgot in last commit

* Add: param coordSys in [PhysicsComponent2D/RigidBody2D]::SetMassCenter

* Add: Some forgotten inline

* Fix little error

* Fix: Indentation before case

* Move and Change GetCenterOfGravity

* Rename m_world into m_physWorld

* Rename GetWorld int GetPhysWorld

* Update: PhysicsSystem2D became an interface of PhysWorld2D

* Update Collison/PhysicsComponent because GetWorld was renamed

* Update tests

* Update: Make the interface usable with Entity instead of PhysicsComponent

* Update: Make GetPhysWorld private

* Update PhysicsSystem2D.hpp

* Update: indent

* Remove: useless blank line

* update order(?)

* Update PhysicsSystem2D.hpp
This commit is contained in:
Faymoon
2018-08-07 19:08:01 +02:00
committed by Jérôme Leclercq
parent 602992609f
commit 0a5e9e040d
6 changed files with 359 additions and 18 deletions

View File

@@ -4,17 +4,94 @@
namespace Ndk
{
inline float PhysicsSystem2D::GetDamping() const
{
NazaraAssert(m_physWorld, "Invalid physics world");
return m_physWorld->GetDamping();
}
inline Nz::Vector2f PhysicsSystem2D::GetGravity() const
{
NazaraAssert(m_physWorld, "Invalid physics world");
return m_physWorld->GetGravity();
}
inline std::size_t PhysicsSystem2D::GetIterationCount() const
{
NazaraAssert(m_physWorld, "Invalid physics world");
return m_physWorld->GetIterationCount();
}
inline std::size_t PhysicsSystem2D::GetMaxStepCount() const
{
NazaraAssert(m_physWorld, "Invalid physics world");
return m_physWorld->GetMaxStepCount();
}
inline float PhysicsSystem2D::GetStepSize() const
{
NazaraAssert(m_physWorld, "Invalid physics world");
return m_physWorld->GetStepSize();
}
inline void PhysicsSystem2D::SetDamping(float dampingValue)
{
NazaraAssert(m_physWorld, "Invalid physics world");
m_physWorld->SetDamping(dampingValue);
}
inline void PhysicsSystem2D::SetGravity(const Nz::Vector2f& gravity)
{
NazaraAssert(m_physWorld, "Invalid physics world");
m_physWorld->SetGravity(gravity);
}
inline void PhysicsSystem2D::SetIterationCount(std::size_t iterationCount)
{
NazaraAssert(m_physWorld, "Invalid physics world");
m_physWorld->SetIterationCount(iterationCount);
}
inline void PhysicsSystem2D::SetMaxStepCount(std::size_t maxStepCount)
{
NazaraAssert(m_physWorld, "Invalid physics world");
m_physWorld->SetMaxStepCount(maxStepCount);
}
inline void PhysicsSystem2D::SetStepSize(float stepSize)
{
NazaraAssert(m_physWorld, "Invalid physics world");
m_physWorld->SetStepSize(stepSize);
}
inline void PhysicsSystem2D::UseSpatialHash(float cellSize, std::size_t entityCount)
{
NazaraAssert(m_physWorld, "Invalid physics world");
m_physWorld->UseSpatialHash(cellSize, entityCount);
}
/*!
* \brief Gets the physical world
* \return A reference to the physical world
*/
inline Nz::PhysWorld2D& PhysicsSystem2D::GetWorld()
inline Nz::PhysWorld2D& PhysicsSystem2D::GetPhysWorld()
{
if (!m_world)
if (!m_physWorld)
CreatePhysWorld();
return *m_world;
return *m_physWorld;
}
/*!
@@ -22,11 +99,11 @@ namespace Ndk
* \return A constant reference to the physical world
*/
inline const Nz::PhysWorld2D& PhysicsSystem2D::GetWorld() const
inline const Nz::PhysWorld2D& PhysicsSystem2D::GetPhysWorld() const
{
if (!m_world)
if (!m_physWorld)
CreatePhysWorld();
return *m_world;
return *m_physWorld;
}
}