The Problem
Most full-blown 3D applications come with “subdivison surface editing” facilities of some sort. The tools used for this, however, are basically just polygonal modeling ones, applied to the control cage rather than the subdivison surface itself. As they often got developed before subdivision surfaces even got added as a feature to such applications, they are more or less terrible at guaranteeing that the surface one’s editing is actually staying manifold.
However, non-manifold geometry frequently provides to be the opener for a can of worms at render time. Just recently, a colleague at work asked me for help to fix a model done in Maya. While looking fine in Maya’s viewport, it would render as a subdivison surface with completely screwed up texture coordinates in PhotoRealistic RenderMan.
The reason being that it contained non-manifold geometry. The renderer detected this and threw the offending parts of the mesh away, printing a warning message. Due to a bug though, it didn’t adjust the relationship with the texture coordinate data accordingly. Which led to the bad image.
Now there’s two solutions: report a bug to the vendor of the renderer or make sure your geometry is ‘good’ (manifold) for starters.
With deadlines looming, the latter is commonly the only option. What we tried first in the case at hand was hence to run Maya’s Polygon Cleanup tool on the mesh to ensure manifoldness. Maya’s tool not always detects certain sorts of non-manifold connectivity though. As was the case with the mesh at hand. So we couldn’t fix the problem in Maya.
I’ve come across this issue numerous times in recent years. Having ‘good’ meshes come out of the modeling department can save you so much trouble later down the pipeline, its importance can’t be stressed enough.
RSS feed for comments on this post. / TrackBack URI