[BUG Rh8-9] Incomplete render mesh + broken UV on long thin surface

AM77

Versions

  • Rhino 8 SR33 (8.33.26188.13001)
  • Rhino 9 BETA (9.0.26219.303)

Description
A long thin surface created in Rhino 8 shows an incomplete render mesh. Part of the mesh is missing.
The UV mapping is also broken (it collapses into a thin strip in the UV Editor).

In Rhino 9, the missing portion of the mesh changes when switching between different Render Mesh quality presets.

Steps

  1. Open the attached file.
  2. Select the long surface.
  3. Open the UV Editor → the UV island appears collapsed into a thin vertical strip.
  4. Observe the missing mesh in Shaded and Rendered modes.
  5. Change the Render Mesh quality presets → the missing area changes.
  6. RebuildMesh and _RemoveMappingChannel do not fix the problem.
  7. ExtractRenderMesh extracts a mesh that still has the issue.

Expected
Complete mesh and correct UV mapping.

Actual
Incomplete mesh + collapsed UV.

Additional

  • I was trimming very close to this surface inside a Rhino 8 polysurface.
  • I was using the “Smooth and slower” mesh quality preset. And moved the sliders to the right.

FILE
AM77Mesh Misssing01 004.3dm (5.3 MB)

NOTICE
In Rhino 9, the behavior changes when switching between different rendering qualities.

Additional way to reproduce the issue:

  1. Open the attached file in RHINO 9 WIP FILE:
    AM77Mesh Misssing02 005.3dm (91.8 KB)

  2. Select the mesh.

  3. Run OffsetSrf (with or without the Solid option).

  4. Notice that the new surface is created, but the render mesh is missing (or incomplete).

the object is a bad object. If you run Untrim, keep trim objects, then retrim with the curves, it fixes the issue.
Do you recall how the object was created? If you can reproduce the creation of this bad object, then that’s something we can log.

Yes. I tried hard to reproduce the original object but was unsuccessful.

I couldn’t recreate the exact original object, but I found a new way to produce a similar defective result:

Steps shown in the video:

  1. Select these polysurfaces
  2. Move them 0.5 units to the right
  3. Notice that one surface becomes transparent / loses its mesh

Attached file:
AM77Mesh Misssing03 009.3dm (301.3 KB)

the object is a bad object. Bad objects are know to have meshing issues.

Yes, the polysurface object is bad.
Bad objects are known to cause meshing problems.

But can you double-check surfaces?
Or
Would you like me to run Check / SelBadObjects on the file surfaces and report the exact results?

I don’t understand your questions. There’s nothing to double-check I think, the object is bad. It looks like it was transformed and the transform wrecked the fillets. There’s nothing left to do then rebuilding the surfaces.

Understood. Thanks for the clarification.

Regarding your earlier question:

I recorded a short video showing a way to produce a similar bad object:

In the video, I select some polysurfaces and move them a small distance. After the move, one of the surfaces becomes corrupted (the mesh disappears / surface becomes transparent).

Running Check / SelBadObjects on the file does not show bad surfaces warnings.
RHINO 8 FILE
AM77Mesh Misssing03 011.3dm (291.2 KB)

Feature request (related to this issue):

The current CheckNewObjects system is useful, but the warning is an intrusive modal popup. Because of this, many users keep it turned off (and it is often Off by default), so most people never see the warnings.

A less intrusive system would be better. Possible improvements:

  • Non-blocking visual warning (colored outline, icon on the object, or a small status bar indicator)
  • Option to automatically highlight the bad surface (or flash it a few times)
  • Preference to choose how aggressive the warning should be (popup / visual / silent)

This would make it easier for users to keep the check active without interrupting their workflow.

It is off by default. The developers reckon that the information it provides isn’t necessarily useful.
-wim