Physics2D: Add NearestBodyQuery

This commit is contained in:
Jérôme Leclercq
2017-03-01 17:40:12 +01:00
parent f22dd81d35
commit 5ebf125474
6 changed files with 101 additions and 4 deletions

View File

@@ -42,13 +42,19 @@ namespace Nz
virtual float ComputeInertialMatrix(float mass) const = 0;
inline Nz::UInt32 GetCategoryMask() const;
inline Nz::UInt32 GetCollisionGroup() const;
inline unsigned int GetCollisionId() const;
inline Nz::UInt32 GetCollisionMask() const;
virtual ColliderType2D GetType() const = 0;
inline bool IsTrigger() const;
inline void SetCollisionId(unsigned long typeId);
inline void SetCategoryMask(Nz::UInt32 categoryMask);
inline void SetCollisionGroup(Nz::UInt32 groupId);
inline void SetCollisionId(unsigned int typeId);
inline void SetCollisionMask(Nz::UInt32 mask);
inline void SetTrigger(bool trigger);
Collider2D& operator=(const Collider2D&) = delete;
@@ -61,7 +67,10 @@ namespace Nz
virtual std::vector<cpShape*> CreateShapes(RigidBody2D* body) const = 0;
bool m_trigger;
Nz::UInt32 m_categoryMask;
Nz::UInt32 m_collisionGroup;
unsigned int m_collisionId;
Nz::UInt32 m_collisionMask;
private:
virtual std::vector<cpShape*> GenerateShapes(RigidBody2D* body) const;