π |
Assets must contain at least one Imageable Geometry |
core-usd |
|
π |
Geometry shall be defined as such that the asset is correctly positioned and oriented at the origin (0,0,0). |
core-usd |
|
π |
All geometry shall be represented as non-subdivided mesh primitives using the UsdGeomMesh schema. |
core-usd |
|
β
|
Mesh geometry must be manifold |
core-usd |
latest+ |
β
|
Mesh topology must be valid |
core-usd |
latest+ |
β
|
Transparent physical bodies should be watertight to allow for simulation of light transmission and refraction. |
core-usd |
|
β
|
Meshes should be positioned with xform ops rather than by βbakingβ transformations into point positions. |
core-usd |
|
β
|
Repeated occurrences of identically shaped objects should have identical mesh connectivity |
core-usd |
Manual |
β
|
The pivot point of an asset should be positioned logically: at the center of the objectβs base for ground plane objects, and at the center of rotation for objects that rotate around specific points. |
core-usd |
|
β
|
All non-subdivided meshes must have normals. |
core-usd |
latest+ |
β
|
Mesh normals values must be valid to produce correct shading. |
core-usd |
|
β
|
The winding order of faces in a mesh must correctly represent the orientation (front/back) of the face. |
core-usd |
|
β |
World space bounds must not exceed RTX limit. |
rtx |
|
π |
Boundable geometry primitives must have valid extent values. |
open-usd |
|
π |
Only include geometry that contributes to visualization or simulation |
open-usd |
|
π |
Use efficient mesh boundaries for performance |
rtx |
|
π |
Meshes should maintain appropriate scale and boundary volumes |
rtx |
|
π |
Meshes should not overlap unnecessarily |
core-usd |
|
π |
Meshes should not share the exact same space |
core-usd |
|
π |
Use indexed primvars when values are repeated |
core-usd |
latest+ |
π |
Use subdivision only when needed for smooth surfaces or displacement |
core-usd |
latest+ |
π |
Only include primvars that are actively used |
core-usd |
latest+ |
π |
Combine small meshes into larger ones where appropriate |
core-usd |
|
π |
Use appropriate tessellation density for geometry |
core-usd |
|
π |
Use time samples only when attribute values change |
core-usd |
|
π |
Each vertex position should be unique |
core-usd |
latest+ |
π |
Avoid tessellating primitive shapes |
core-usd |
|
π |
Mesh topology should be without unused vertices, edges, or faces. |
core-usd |
latest+ |
π |
Faces should have non-zero area.Faces where all vertices are co-linear or coincident waste memory and can cause rendering artifacts. |
core-usd |
latest+ |
π |
The values of points must not exceed the limit at which a given precision can be represented using 32-bit floats. |
core-usd |
|
π |
Meshes must be triangulated for optimal rendering performance and compatibility when considering automatic collider creation (convex-hull, convex-decomposition, etcβ¦). Triangulating mesh will provide predictable results versus n-gons. |
core-usd |
|