Class CollisionPair
- Namespace
- Gravitas.CollisionHandling
- Assembly
- Gravitas.dll
Owns deterministic 3D pair lifecycle, culling, contact, and notification state.
public class CollisionPair
- Inheritance
-
CollisionPair
- Inherited Members
Fields
Debug
Stores the host-controlled pair diagnostic flag.
public bool Debug
Field Value
PairVersion
Tracks reuse of this pooled pair instance.
public ushort PairVersion
Field Value
PartitionVersion
Tracks the collision-service partition pass that last processed this pair.
public uint PartitionVersion
Field Value
Properties
Active
Gets whether this pooled pair currently represents two registered colliders.
public bool Active { get; }
Property Value
ColliderA
Gets the collider selected to lead narrow-phase dispatch.
public LSCollider ColliderA { get; }
Property Value
ColliderB
Gets the other collider in the pair.
public LSCollider ColliderB { get; }
Property Value
CollisionType
Gets the narrow-phase dispatch type for this collider combination.
public CollisionType CollisionType { get; }
Property Value
Context
Gets the world context that owns this pair.
public GravitasWorldContext Context { get; }
Property Value
CullCounter
Gets the remaining deferred updates before this pair is checked again.
public short CullCounter { get; }
Property Value
Id1
Gets the first collider ID used to identify the pair.
public int Id1 { get; }
Property Value
Id2
Gets the second collider ID used to identify the pair.
public int Id2 { get; }
Property Value
LastCollidedFrame
Gets the last simulation frame in which this pair had contact.
public int LastCollidedFrame { get; }
Property Value
LastFrame
Gets the last simulation frame in which this pair was updated.
public int LastFrame { get; }
Property Value
Manifold
Gets the deterministic contact manifold owned by this pair.
public ContactManifold Manifold { get; }
Property Value
World
Gets the GridForge world owned by Context.
public GridWorld World { get; }
Property Value
- GridWorld
Methods
AssignPriority(LSCollider, LSCollider)
Orders the colliders for stable narrow-phase dispatch.
public void AssignPriority(LSCollider c1, LSCollider c2)
Parameters
c1LSColliderc2LSCollider
Deactivate()
Deactivates the CollisionPair.
public void Deactivate()
NotifyCollidersOfContact()
Raises contact or separation notifications for the current pair state.
public void NotifyCollidersOfContact()
Reset()
Clears transient contact and notification state before reuse.
public void Reset()
UpdateCollision()
Checks and distributes collisions between colliders. Called by Partition Manager every fixed update if 2 colliders are on the same partion.
public void UpdateCollision()