corrective-transforms#

Code

UN.004

Validator

Compatibility

core usd

Tags

Summary#

Must apply corrective transforms for different units

Description#

When composing assets with different linear units, corrective transformations must be applied to ensure correct scaling.

Why is it required?#

  • Prevents incorrect scaling when composing assets

Examples#

# Invalid: No corrective transform for different units
#usda 1.0
(
    metersPerUnit = 0.01  # Stage in centimeters
)

def Xform "Reference" (
    references = @asset_in_meters.usd@  # Asset in meters
)
{
}

# Valid: Compensating transform applied
#usda 1.0
(
    metersPerUnit = 0.01  # Stage in centimeters
)

def Xform "Reference" (
    references = @asset_in_meters.usd@  # Asset in meters
)
{
    double3 xformOp:scale = (100, 100, 100)
    uniform token[] xformOpOrder = ["xformOp:scale"]
}

How to comply#

For More Information#