π |
Assets must contain at least one imageable geometry prim. |
core usd |
latest+ |
π |
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 |
latest+ |
β
|
Mesh geometry must be manifold |
core usd |
latest+ |
β
|
Mesh topology must be valid |
core usd |
latest+ |
β
|
Meshes should be positioned using xform ops, not by embedding positions into point positions. |
core usd |
latest+ |
β
|
Repeated occurrences of identically shaped objects should have identical mesh connectivity |
core usd |
Manual |
β
|
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 |
|
β
|
Meshes made from non opaque materials shall have thickness |
core usd |
|
β |
World space bounds must not exceed RTX limit. |
rtx |
latest+ |
π |
Boundable geometry primitives should have valid extent values. |
openusd |
latest+ |
π |
Only include geometry that contributes to visualization or simulation |
openusd |
latest+ |
π |
Use efficient mesh boundaries for performance |
rtx |
|
π |
Meshes should maintain appropriate scale and boundary volumes |
rtx |
latest+ |
π |
Meshes should not overlap unnecessarily |
core usd |
|
π |
Meshes should not share the exact same space |
core usd |
latest+ |
π |
Use indexed primvars when values are repeated |
core usd |
latest+ |
π |
Do not subdivide meshes with Normals. |
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 |
latest+ |
π |
Each vertex position should be unique |
core usd |
latest+ |
π |
Avoid tessellating primitive shapes |
core usd |
latest+ |
π |
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 |
latest+ |
π |
Use appropriate vertex count for geometry |
core usd |
|
π |
Meshes should use instancing if they are identical apart from their world space location |
core usd |
latest+ |
π |
Boundable geometry should have non-zero extents in at least one dimension.Zero extent geometry wastes memory and may cause simulation problems. |
core usd |
|
π |
Faces should not be lamina.Lamina faces are those that share all the same vertices. This means there are two or more identical overlapping faces. This is wasteful, and can also cause rendering artifacts if the faces have different materials. They can be created in a variety of ways, for example accidentally duplicating faces on a mesh, merging objects with coincident faces and then merging vertices, or modeling operations like booleans on meshes that have coincident faces. |
core usd |
latest+ |
π |
Use appropriate mesh count for scene |
rtx |
|