collider-material-binding#
Code |
PMT.001 |
|---|---|
Validator |
|
Compatibility |
|
Tags |
Summary#
Every collider (prim with PhysicsCollisionAPI) must have a material:binding:physics relationship to a physics material.
Description#
Physics materials define the surface properties that affect collision behavior, including friction, restitution, and density. For proper physics simulation, every collider must be bound to a physics material through the material:binding:physics relationship.
The material:binding:physics relationship connects a collider prim (with PhysicsCollisionAPI) to a physics material prim (with PhysicsMaterialAPI), enabling the simulation engine to apply the correct material properties during collision detection and response.
Examples#
# Invalid: Collider without physics material binding
def Cube "MyCube" (
prepend apiSchemas = ["PhysicsCollisionAPI"]
) {
double size = 1.0
# Missing material:binding:physics relationship
}
# Valid: Collider with physics material binding
def Cube "MyCube" (
prepend apiSchemas = ["PhysicsCollisionAPI"]
) {
double size = 1.0
rel material:binding:physics = </Materials/Metal>
}
def Material "Metal" (
prepend apiSchemas = ["PhysicsMaterialAPI"]
) {
float physics:density = 2700
float physics:dynamicFriction = 0.1
float physics:restitution = 0.1
float physics:staticFriction = 0.1
}
How to comply#
Ensure every prim with PhysicsCollisionAPI has a
material:binding:physicsrelationshipThe relationship must target a valid physics material prim (with PhysicsMaterialAPI)
Physics materials should have appropriate values for density, friction, and restitution
Use meaningful material names that reflect the intended physical properties