usdgeom-mesh-manifold#
Code |
VG.007 |
---|---|
Validator |
|
Compatibility |
core usd |
Tags |
✅ |
Summary#
Mesh geometry must be manifold
Description#
Mesh geometry must maintain manifold topology to ensure proper simulation and rendering behavior. Non-manifold issues include:
Non-manifold vertices: Vertices are repeated in the geometry
Non-manifold edges: Edges are repeated multiple times
Inconsistent winding: Polygon winding appears inconsistent
Why is it required?#
Memory usage inefficiency
Visual artifacts
Simulation instability
Examples#
# Invalid: Non-manifold edge
def Mesh "BadMesh" {
int[] faceVertexCounts = [4, 4]
int[] faceVertexIndices = [0, 1, 2, 3, 3, 2, 4, 5] # Edge 2-3 used twice
point3f[] points = [(0,0,0), (1,0,0), (1,1,0), (0,1,0), (1,2,0), (0,2,0)]
}
# Valid: Manifold mesh
def Mesh "GoodMesh" {
int[] faceVertexCounts = [4]
int[] faceVertexIndices = [0, 1, 2, 3]
point3f[] points = [(0,0,0), (1,0,0), (1,1,0), (0,1,0)]
}
How to comply#
Use mesh repair tools to weld edges and vertices
Fill holes in geometry
Align face normals
Reconvert to USD after repair
Scene Optimizer - Remesher