12#if JPH_OBJECT_LAYER_BITS == 16
14#elif JPH_OBJECT_LAYER_BITS == 32
16#elif JPH_OBJECT_LAYER_BITS == 64
19 #error Invalid value for JPH_OBJECT_LAYER_BITS. Must be 16, 32 or 64.
38#ifdef JPH_TRACK_BROADPHASE_STATS
40 virtual String GetDescription()
const
42 return "No Description";
67 mObjectLayerPairFilter(inObjectLayerPairFilter),
74 mObjectLayerPairFilter(inRHS.mObjectLayerPairFilter),
82 return mObjectLayerPairFilter.ShouldCollide(mLayer, inLayer);
103 return mLayer == inLayer;
#define JPH_EXPORT
Definition Core.h:303
std::uint64_t uint64
Definition Core.h:569
#define JPH_NAMESPACE_END
Definition Core.h:487
std::uint32_t uint32
Definition Core.h:567
#define JPH_NAMESPACE_BEGIN
Definition Core.h:481
std::uint16_t uint16
Definition Core.h:566
uint16 ObjectLayer
Layer that objects can be in, determines which other objects it can collide with.
Definition ObjectLayer.h:13
std::basic_string< char, std::char_traits< char >, STLAllocator< char > > String
Definition STLAllocator.h:107
Default filter class that uses the pair filter in combination with a specified layer to filter layers...
Definition ObjectLayer.h:63
virtual bool ShouldCollide(ObjectLayer inLayer) const override
Function to filter out object layers when doing collision query test (return true to allow testing ag...
Definition ObjectLayer.h:80
DefaultObjectLayerFilter(const ObjectLayerPairFilter &inObjectLayerPairFilter, ObjectLayer inLayer)
Constructor.
Definition ObjectLayer.h:66
DefaultObjectLayerFilter(const DefaultObjectLayerFilter &inRHS)
Copy constructor.
Definition ObjectLayer.h:73
Class that makes another class non-copyable. Usage: Inherit from NonCopyable.
Definition NonCopyable.h:11
Filter class for object layers.
Definition ObjectLayer.h:27
virtual bool ShouldCollide(ObjectLayer inLayer) const
Function to filter out object layers when doing collision query test (return true to allow testing ag...
Definition ObjectLayer.h:33
virtual ~ObjectLayerFilter()=default
Destructor.
Filter class to test if two objects can collide based on their object layer. Used while finding colli...
Definition ObjectLayer.h:49
virtual bool ShouldCollide(ObjectLayer inLayer1, ObjectLayer inLayer2) const
Returns true if two layers can collide.
Definition ObjectLayer.h:55
virtual ~ObjectLayerPairFilter()=default
Destructor.
Allows objects from a specific layer only.
Definition ObjectLayer.h:92
virtual bool ShouldCollide(ObjectLayer inLayer) const override
Function to filter out object layers when doing collision query test (return true to allow testing ag...
Definition ObjectLayer.h:101
SpecifiedObjectLayerFilter(ObjectLayer inLayer)
Constructor.
Definition ObjectLayer.h:95