Collider class Physics

A collision volume attached to a Node.

Pairs a shape with a material and a local pose; a node may carry several colliders forming a compound. When the node also carries a RigidBody the collider attaches to it (in any add order; the collider waits for the body); without one it becomes static environment geometry through an implicit fixed body.

Inheritance

Constructors

Collider({required Shape shape, PhysicsMaterial material = sim.PhysicsMaterial.defaultMaterial, int collisionLayer = 0xFFFFFFFF, int collisionMask = 0xFFFFFFFF, bool isTrigger = false, Matrix4? localPose})

Properties

collisionLayer ↔ int
Bitmask identifying this collider's layer. A contact is generated only when each side's layer is set in the other side's mask.
getter/setter pair
collisionMask ↔ int
Bitmask of layers this collider responds to.
getter/setter pair
enabled ↔ bool
Whether this component's update hook runs each frame.
getter/setter pairinherited
handles → List<int>
The simulation collider handles, empty while unmounted (a compound shape may produce several).
no setter
hashCode → int
The hash code for this object.
no setterinherited
isAttached → bool
Whether this component is currently attached to a node.
no setterinherited
isLoaded → bool
Whether onLoad has completed.
no setterinherited
isMounted → bool
Whether the owning node is part of a live scene graph.
no setterinherited
isTrigger ↔ bool
When true this collider emits trigger events but produces no contact response. Changing it rebuilds the simulation colliders.
getter/setter pair
localPose ↔ Matrix4
Pose of the collider relative to its owning node. Changing it rebuilds the simulation colliders.
getter/setter pair
material ↔ PhysicsMaterial
getter/setter pair
node → Node
The node this component is attached to.
no setterinherited
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
shape ↔ Shape
Replacing the shape rebuilds the simulation colliders.
getter/setter pair
world → PhysicsWorld?
The owning world while mounted.
no setter

Methods

cloneFor(Node cloneOwner) → Component?
Returns a copy of this component for cloneOwner, the Node.clone counterpart of the owning node, or null to not carry the component to clones (the default).
inherited
fixedUpdate(double fixedDt) → void
Called once per fixed physics step while the component is mounted, enabled, and loaded. fixedDt is the fixed timestep of the surrounding PhysicsWorld, not the frame interval.
inherited
internalRetryPhysicsRegistration() → bool
Attempts registration. Returns true when registered (or permanently unregistrable, a backend without the feature) and false to keep waiting.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
onAttach() → void
Called when this component is added to a node.
inherited
onDetach() → void
Called when this component is removed from a node.
inherited
onLoad() → Future<void>
Optional asynchronous setup, such as loading an asset.
inherited
onMount() → void
Called when the owning node enters a live scene graph.
override
onUnmount() → void
Called when the owning node leaves a live scene graph.
override
toString() → String
A string representation of this object.
inherited
update(double deltaSeconds) → void
Called once per frame while the component is mounted, enabled, and loaded. deltaSeconds is the elapsed time since the previous tick. A traversal visits each component at most once. Removing this component or an earlier sibling is safe. A component inserted before the current traversal position starts on the next frame. Reordering component or child lists during traversal is unsupported.
inherited

Operators

operator ==(Object other) → bool
The equality operator.
inherited