Adjusting Normals and Smoothing

Started by martinwahlberg, February 15, 2018, 01:31:31 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

martinwahlberg

Hey guys, this might have been covered before. Did a search but didn't find anything.
Not sure if this is a Sketchup-related "problem", a modeling issue, or what it is related to really.
Is there a best practice for making sure Keyshot renders smoothing of edges/surfaces in a good way? At an early stage of my material creation I end up seeing this "stretching" of some surfaces depending on how I set my edge smoothness. Which makes me wonder if it is something that can be ignored and as the render res'es up these "artifacts" will disappear, or if it is something to consider and maybe I need to adjust the geometry to have the material look right.
All help is welcome.

martinwahlberg

Also, I should add, this only seems to happen in interior mode.
Screenshot showing the exact same geometry. The geometry on the right has edge smoothness applied

DMerz III

Interesting problem. Can you clarify what you mean by 'edge smoothness', are you referring to the 'rounded edges' feature in Keyshot?

martinwahlberg

Thanks for your reply and interest. I'm referring to the function in Sketchup that smoothens normals. It's not connected to the rounded edges feature in Keyshot.
When the geometry is subdivided the "problem" or effect is less apparent. Or at least the pattern or "stretching" is changed. Is this something other modelling software handles differently? Is it a bug? Or is it something that is expected on how render engines handles smoothed normals? Will an increase in samples finally rid the effect?

mattjgerard

Try going into the Geometry Editor and recalculating the normals inside of keyshot and see if that fixes anything. Not saying that will or should solve all your problems, but I've used it for troubleshooting normals issues when porting models from Cinema 4D and it helped  to make some tweaks to the plugin structure that solved some larger problems.

DMerz III

Thanks for the clarity martinwahlberg. I have never used Sketchup, so I can't be much help there, but I would second what mattjgerard mentioned, sometimes the normals do not calculate correctly upon import. If that doesn't work, I would import without that sketchup feature and use the 'rounded edges' feature in Keyshot to get smoother edges. This trick works pretty well now, minus some corners. Otherwise, if you need a fillet, you'll want to model that directly in your modeling program.

martinwahlberg

#6
Thanks for the suggestion regarding recalculation of vertex normals. Tried it but can't see that it had any effect really.
The effect is reduced by sample count surely but it is still noticeable at 300 samples. Does that sound normal or expected to you. Do you ever see this thing with your models?

martinwahlberg

Can you please have a look at this screen recording and say if you think it looks alright to you?
https://www.dropbox.com/s/vyht987t68bs6d4/smoothing.mov?dl=0

DMerz III

#8
I think I'll need someone more educated on the matter to explain, but I'm pretty sure changing the edge angle to 91 degrees is what is causing your issue. 90 degrees is a right angle of course, and you're telling the normals to be smooth where there is a 91-degree angle... the rendering engine is trying to smooth two surfaces that are exactly perpendicular to each other, just isn't going to ever look right.

Now back to the original problem. Are you just trying to make the box edges look smooth at the edge instead of sharp?
If so, as I mentioned before, you'll want to disregard that smooth edges feature in Sketchup (as I believe that is only going to make a difference in that application) and use the rounded edges feature in Keyshot. If that isn't working for you, you'll need to model in those 'fillets' at the edges in sketchup and export with them baked into the geometry.


martinwahlberg

Well thanks again. I just used the most basic shape to make an example. The same effect happens even if the angle would be much smaller.