Asset Validation#
Isaac Sim comes with the isaacsim.asset.validation extension that provides a set of validation rules to ensure that USD assets are properly configured for use in Isaac Sim.
While some of the rules are related to recommended guidelines, such as the Asset Structure, many are fundamental for the asset to work properly in Isaac Sim.
This document provides a comprehensive overview of all validation rules available in the Isaac Sim Asset Validation extension. The rules are organized by their registration categories and help ensure that USD assets are properly configured for use in Isaac Sim.
The isaac sim asset validation comes enabled by default. If it is ever disabled, it can be re-enabled from the Extension Manager by searching for isaacsim.asset.validation
.
To Open the Asset Validation window, navigate to Window > Asset Validator. For more information on the Asset Validation window, see Asset Validator.
The validation rules are grouped into the following categories:
- IsaacSim.PhysicsRules
Fundamental rules related to physics simulation
- IsaacSim.RobotRules
Rules related to robot assets
- IsaacSim.SimReadyAssetRules
Rules related to sim ready assets
This document will go through each of the rules and provide a detailed explanation of what it checks.
IsaacSim.PhysicsRules#
Rule Name |
Description and Checks |
---|---|
PhysicsJointHasDriveOrMimicAPI |
Validates that joints have a drive or mimic API.
|
PhysicsJointMaxVelocity |
Validates that joints have a positive max velocity set.
|
PhysicsDriveAndJointState |
Validates that joint drives have proper force limits and matching state values.
|
DriveJointValueReasonable |
Validates that joint drive stiffness values are within reasonable ranges.
|
JointHasCorrectTransformAndState |
Validates that joint transforms and states are consistent with the connected bodies.
|
JointHasJointStateAPI |
Validates that joints have the JointStateAPI applied.
|
MimicAPICheck |
Validates proper configuration of mimic joint APIs.
|
RigidBodyHasMassAPI |
Validates that rigid bodies have properly configured mass properties.
|
RigidBodyHasCollider |
Validates that enabled rigid bodies have collision geometry.
|
NonAdjacentCollisionMeshesDoNotClash |
Validates that non-adjacent collision meshes don’t intersect.
|
InvisibleCollisionMeshHasPurposeGuide |
Validates that invisible collision meshes have purpose set to ‘guide’.
|
HasArticulationRoot |
Validates that at least one prim in the stage has the ArticulationRootAPI.
|
IsaacSim.RobotRules#
Rule Name |
Description and Checks |
---|---|
RobotNaming |
Validates that robot assets follow the standard naming convention.
|
CleanFolder |
Validates that robot asset folders don’t contain unexpected files.
|
NoOverrides |
Validates that prims don’t have overridden attributes.
|
RobotSchema |
Validates that robot assets have the required RobotAPI and relationships.
|
JointsExist |
Validates that robot assets contain at least one joint.
|
LinksExist |
Validates that robot assets contain at least one link.
|
ThumbnailExists |
Validates that robot assets have a thumbnail image.
|
CheckRobotRelationships |
Validates that robot relationships are properly defined and prepended.
|
VerifyRobotPhysicsAttributesSourceLayer |
Validates that physics attributes are authored in the physics layer.
|
VerifyRobotPhysicsSchemaSourceLayer |
Validates that physics schemas are applied in the physics layer.
|
IsaacSim.SimReadyAssetRules#
Rule Name |
Description and Checks |
---|---|
NoNestedMaterials |
Validates that materials don’t contain nested materials.
|
MaterialsOnTopLevelOnly |
Validates that materials are only defined in the top-level Looks prim.
|