@ue-too/dynamics / CollisionFilter
Interface: CollisionFilter
Defined in: collision-filter.ts:18
Collision filtering configuration for rigid bodies.
Remarks
Collision filters use a bitmask system to control which bodies can collide with each other. This is useful for creating layers, groups, and special collision rules in your physics simulation.
How Filtering Works
Two bodies A and B can collide if ALL of these conditions are met:
(A.category & B.mask) !== 0- A's category matches B's mask(B.category & A.mask) !== 0- B's category matches A's mask- Group rules are satisfied (see group field)
Properties
category
category:
number
Defined in: collision-filter.ts:27
What category this body belongs to (bitmask).
Example
typescript
category: CollisionCategory.PLAYER // 0x0004group
group:
number
Defined in: collision-filter.ts:55
Collision group for special rules.
- 0: No group (use category/mask rules)
- Positive: Bodies in same group ALWAYS collide
- Negative: Bodies in same group NEVER collide
Example
typescript
// Ragdoll parts shouldn't collide with each other
group: -1
// Team members always collide (for physics interactions)
group: 1mask
mask:
number
Defined in: collision-filter.ts:38
What categories this body can collide with (bitmask).
Example
typescript
// Collide with everything except other players
mask: ~CollisionCategory.PLAYER & 0xFFFF