Custom Render Mesh for SubDs

Am I right in understanding that SubDs won’t obey by the custom render mesh settings?

I was using the Thickness property on a SubD and tried to see if I could optimise it via a custom render mesh, as the performance seemed to reduce quite a bit when making realtime edits.

A low resolution mesh object with the Thickness property will, for example, update more quickly.

Putting Edge Softening on top also compounds the issue whilst also not creating very clean results on a low point count SubD.

Thickness - 2mm, Solid


Softening - 0.5mm, 60 degrees - thickness won’t run, radius reported as too large

Force Softening

Yes, I filed this a while back as RH-54575. I just added your vote to it. If enough users ask for this it will raise the priority.

Force Softening will cause issues like that on thin walls and a custom render mesh or smaller radius is what I’ll use to try and fix it.

Thanks Brian. Seems to me that the edge softening and thickness properties would be good for looking at forms in the case of SubDs. I just used Force softening to note if there were some bits softening well, and there were. As the image shows there are evidently good points and bad points. For something 2mm thick I woul’ve expected to at least round off 0.5mm.

Okay - I think I can see the problem. The faces created by the Thickness property are unwelded. Running weld (30 degrees) and Edge softening again works well. Though, note that’s on the extracted stuff.

Hi Jonathan,

No automatic render mesh in SubDs. For now when I need better quality what I’ve been doing is a macro that makes:
_ToNurbs
‘My custom mesh settings to the nurbs’
_ExtractRendermesh
_Delete the _ToNurbs output

This leaves you with two objects:
Your original SubD
Extracted rendermesh

If you want a live relationship you can do this same hack in Grasshopper.

I hope custom rendermesh and curvature analysis get added soon to SubD. Very hard to do serious work without these.

G

Actually it was for the hope of lower render mesh quality! I wondered if the density was affecting the ability for the edge softening property to run. But I think seeing all the welded faces along the thickened SubD render mesh is causing that.

I’d roll my own but… I’m not at all near that stage… my best for now:, flowing on a generic SubD

2 Likes

@Jonathan_Hutchinson Something else that may help is that you can use the Mesh command on a SubD and then the Simple slider to mesh varying density levels of the SubD control polygon. It only works with the Simple slider and start at the far left before you click Preview :wink:

Definitely! It’s like that point I made to you about displacement. The default SubD one works a treat off the bat.

@BrianJ What are your thoughts on the unwelded edge output of Thickness? Also, would the coarser/reduced custom render mesh deliver much of a display improvement (with Thickness and Edge Softening tagged on) ? In fairness, it’s not too bad in Shaded mode already, albeit once the thickening and softening is completed. With ToggleRenderMesh it really lags though ( my hardware is on it’s last legs, however ).

The other thing I’m thinking whilst looking is that the quad layout is obviously nice and that the edge faces being unwelded does help in so far as when you reduce it, the clean topology of the edge is preserved.I guess that as an example becomes the knock on effect of a custom render mesh for it. Thickening a normal mesh or surface object creates things in the same way to be fair as well - unwelded faces running all the way along. So I would say that could be tuned up for them all perhaps. Maybe there’s a good reason for it already, so that it plays nicely with Edge Softening and the like.

For the time being, I could Weld, explode, ReduceMesh the two sides ( preserve naked points - first time using that - neat and pleasantly surprising!) join up and run again. Which got it working 0.9mm each side smoothly as anything.


In fact at the moment, a mesh from surface with thickness applied, with Edge Softening, will fail whereas that same mesh after welding won’t. So if anything, that unwelded edge output is a hinderance right?

I think it’s a bug… filed as https://mcneel.myjetbrains.com/youtrack/issue/RH-58817 Thanks!

Okay great - I’m guessing that it’s initially welded so that it displays with the sharp crisp edge for preview, rather ShadeSmooth taking place across it. So I would add that it’s just the faces of the (let’s call it the bridge?) bridge that should be welded. The bridge corners being welded too does help a bit but not as important. Thanks too for adding the screenshots.

Maybe it’s not a million miles away from being able to fit a custom edge profile in the bridged bit… not sure what the API calls are for the object thickness however. Thinking in the SubD verse anyway, wonder if it could help so that you’re just focusing on making clean topology, rather than fiddly stuff.

1 Like