These files showcase a regular mesh extent
and the behavior of other extent
values.
All meshes are the same cube mesh with vertices positioned at [-0.5 .. 0.5]
on all three axis.
Schema specification: https://github.com/PixarAnimationStudios/USD/blob/release/pxr/usd/usdGeom/schema.usda
Regular extent exactly matching the cube dimensions.
float3[] extent = [(-0.5, -0.5, -0.5), (0.5, 0.5, 0.5)]
regular_extent.usda, usdrecord 22.08
This mesh has its extent values in the wrong order:
float3[] extent = [(1,1,1), (0,0,0)]
inverse_extent.usda, usdrecord 22.08
This screenshot is empty as expected.
This mesh has no extent.
no_extent.usda, usdrecord 22.08
These two meshes have scaled extents.
Extent too small:
float3[] extent = [(-0.1, -0.1, -0.1), (0.1, 0.1, 0.1)]
Extent too big:
float3[] extent = [(-1, -1, -1), (1, 1, 1)]
scaled_extent.usda, usdrecord 22.08
This mesh has its extent set to zero.
float3[] extent = [(0,0,0), (0,0,0)]
zero_extent.usda, usdrecord 22.08
This screenshot is empty as expected.
#usda 1.0
(
customLayerData = {
string copyright = "Copyright 2022 Apple Inc. All rights reserved."
}
defaultPrim = "mesh"
upAxis = "Y"
metersPerUnit = 0.01
)
def Mesh "mesh"
{
float3[] extent = [(1, 1, 1), (0, 0, 0)]
int[] faceVertexCounts = [3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3]
int[] faceVertexIndices = [0, 4, 6, 0, 6, 2, 0, 1, 5, 0, 5, 4, 4, 5, 7, 4, 7, 6, 3, 7, 5, 3, 5, ... (truncated)]
point3f[] points = [(-0.5, -0.5, -0.5), (0.5, -0.5, -0.5), (-0.5, 0.5, -0.5), (0.5, 0.5, -0.5), ... (truncated)]
}