IN THIS ARTICLE
PhysX Mesh Collider Component
The PhysX Mesh Collider component adds a PhysX collider to an entity so that the entity can be included in PhysX simulation. The collider can be defined by a physics asset you create, automatically generated convex meshes or shapes that have been automatically fit to a decomposed mesh. The PhysX Mesh Collider component can also define a trigger area or a force region.
PhysX Mesh Collider components can accurately represent the shape of the mesh provided by a Mesh component, but incur a higher performance cost compared to PhysX Primitive Collider components. Physics collider assets are based on meshes that are processed by Asset Processor. For information about the various PhysX collider asset types and how to process them, refer to Process PhysX Collider Assets.
Note:Add a PhysX Static Rigid Body component with a PhysX Mesh Collider component to create a static entity that will never move. Add a PhysX Dynamic Rigid Body component to create a simulated or a kinematic entity. Simulated entities move in response to collisions and forces. Kinematic entities aren’t affected by collisions or forces, but are driven by scripted movement.
Provider
Properties
Base properties
Property | Description | Value | Default |
---|---|---|---|
Collision Layer | Assigns the collider to a collision layer. Collision layers can be used to restrict physical interactions between PhysX objects. | Any collision layer defined in the project’s Collision Layers. | Default |
Collides With | Assigns the collider to a collision group. Collision groups contain the collision layers that this collider can collide with. | Any collision group defined in the project’s Collision Groups. | All |
Trigger | If enabled, this collider functions as a trigger. Triggers perform quick overlap tests with other colliders. Triggers don’t apply forces or return contact point information. Use this to speed up PhysX computations in which a simple overlap test between colliders is sufficient. Triangle meshes are not supported as triggers. | Boolean | Disabled |
Simulated | If enabled, this collider is included in the physics simulation. | Boolean | Enabled |
In Scene Queries | If enabled, this collider can be queried for raycasts, shapecasts, and overlap. | Boolean | Enabled |
Offset | Sets the collider’s local offset position relative to the entity. | Vector3: -Infinity to Infinity | X: 0.0 , Y: 0.0 , Z: 0.0 |
Rotation | Sets a local rotation for the collider around the Offset of the PhysX Mesh collider component. | Vector3: -180.0 to 180.0 | X: 0.0 , Y: 0.0 , Z: 0.0 |
Physics Materials | Choose a physics material for each material of this collider. Physics materials define physical properties for the surface such as dynamic and static friction, and density. A mesh collider can have multiple physics materials assigned. | A .physxmaterial asset assigned. | (default) |
Tag | Sets a tag for this collider. Tags can be used to quickly identify components in script or code. | String | None |
Rest offset | Sets the minimum distance between this collider and other colliders. Although this property applies to all colliders, it is particularly important for dynamic colliders. Dynamic colliders are at rest when the forces affecting them drop below the Sleep threshold of their rigid body component. When a dynamic collider comes to rest while in contact with any other collider, the colliders are separated by the sum of their Rest offset values. Rest offset values that are too large might make dynamic entities appear to float. Negative Rest offset values might make dynamic entities appear to intersect. You might need to adjust this value in scenarios where the collider does not closely match the render mesh of the entity. The Rest offset value must be less than the Contact offset value. | Float: -Infinity to 50.0 | 0.0 |
Contact offset | Sets the distance from the collider where collisions are detected. PhysX bodies generate contacts when they are within the sum of their Contact offset values. The Contact offset value must be greater than the Rest offset value. | Float: 0.0 to 50.0 | 0.02 |
PhysX Mesh | Assigns a .pxmesh collider product asset for this collider. This property is set automatically if a .pxmesh product asset exists for the associated mesh or actor asset. For more information on creating PhysX mesh asset colliders, refer to
Process PhysX Collider Assets. | Product asset .pxmesh PhysX mesh. | |
Asset Scale | Scales the collider shape independent of the entity. | Vector3: 0.0 to Infinity | X: 1.0 , Y: 1.0 , Z: 1.0 |
Physics Materials from Asset | If enabled, the physics materials for this collider are automatically set based on the Physics Materials from the mesh’s PhysX asset. Physics material assignments cannot be edited while this option is enabled. | Boolean | Enabled |
Draw Collider | If enabled, the collider is displayed in the viewport. | Boolean | Enabled |
Edit | Enter collider component edit mode to adjust properties of the collider with manipulators in the viewport. |
Collider component mode
In collider component mode, you can edit colliders with manipulators in the viewport. To enter collider component mode, choose the Edit button at the bottom of the PhysX Mesh Collider component properties in the Entity Inspector.
Sub component modes
There are three editing modes available in collider component mode.
Mode | Description |
---|---|
Resize | The resize manipulator is represented as a scale manipulator which modifies the Asset Scale. |
Offset | Translates the collider relative to its entity transform. |
Rotation | Rotates the collider around the component’s Offset. |
Resize
Physics Asset resize mode has a three-axis scale manipulator.
Offset
Offset mode has a three-axis translate manipulator.
Rotation
Rotation mode has a three-axis rotate manipulator.
Collider component mode hotkeys
The following navigation hotkeys are available in collider component mode.
Hotkey | Action |
---|---|
1 | Offset mode. |
2 | Rotation mode. |
3 | Resize mode. |
Ctrl + Mouse Wheel Down | Next mode. |
Ctrl + Mouse Wheel Up | Previous mode. |
R | Reset current mode. This is effectively an undo operation. You can step through the Resize, Offset, and Rotation modes and press R to reset changes to the current mode. |
ESC | Exit component mode. |
Colliders as triggers
Triggers allow colliders to perform efficient overlap tests. Colliders marked as triggers won’t be affected by forces when they intersect with another collider. This is useful for detecting when something enters a certain area or when two objects overlap. Use Lua or Script Canvas to detect overlap.
Note:Because triggers don’t perform contact resolution, the contact points between a trigger and another collider aren’t available. Triangle meshes are not supported as triggers.