Main Menu

Rounded Edges Broken

Started by Seth Richardson, August 15, 2017, 08:23:44 PM

Previous topic - Next topic

0 Members and 2 Guests are viewing this topic.

Seth Richardson

Seems Keyshot 7 has some serious issues with rounded edges.  I am also getting artifacts in flat areas of the model when rounded edges is on as well.  I double checked and the geometry is pretty sound.

Note that this is with geometry converted in modo from MOI 3D.  It seems Keyshot doesn't like any geometry that isn't surfaces straight from CAD.  Rounded edges works fine if I import as a step without converting first.

DriesV

Hi Seth,

Can you share a scene?
What do you output from MoI? STEP or OBJ? How do you process the model in modo?

Dries

mattjgerard

As standard practice whenever I am having issues like this I run the geometry through the Geometry Editor and recalculate the normals. From several sources and personal experience, ist appears that KS handles normals a little differently than most 3D apps,  to the point where KS is very picky about them being perfect. I import a ton of models from Cinema4D and this happens quite often. I'll recalculate the normals in KS at a shallower angle, usually 15deg, and it cleans up the edges and gets rid of faceting quite well. I have put in my request that this operation be included in the import dialog, or just done automatically in the background when using the C4D plugin.

Give that a shot and see what happens. If it fixes it, then its what Modo is doing to the normals. I know C4D plays some internal tricks with just dealing with bad and innacurate normals so that the user never sees the bandaid fixes the app does in the background to "path" the problem areas. C4D uses a "normals tag" to tame errant geometry into look ok when rendered, but it it can't hard code those repairs into the geometry upon import with the plug in, therefore resulting in my intimate relationship with the geometry editor.

Good luck!

Seth Richardson

Quote from: DriesV on August 15, 2017, 11:47:45 PM
Hi Seth,

Can you share a scene?
What do you output from MoI? STEP or OBJ? How do you process the model in modo?

Dries

I generally export the CAD from Solidworks as STEP.
Take it into MOI do any clean up needed, assign material groups.
Export to OBJ
Import to MODO
Manage grouping and shaders and model any soft items that go with the CAD
Then freeze all sub divisions
Setup the views I want
Export to .fbx
Import to Keyshot

I tried several different methods.
The next will be importing directly to MODO with the step file and leaving the surfaces as nurbs then exporting .fbx though im not sure thats possible without first tessellating them.

I have tried clearing the normals and assigning them in keyshot which results in faceted surfaces and artifacts on flat areas visibly showing triangulation issues.

I might be able to share part of the scene however since it is CAD of a product at work the share will be minimal.

Seth Richardson

Quote from: mattjgerard on August 16, 2017, 06:39:02 AM
As standard practice whenever I am having issues like this I run the geometry through the Geometry Editor and recalculate the normals. From several sources and personal experience, ist appears that KS handles normals a little differently than most 3D apps,  to the point where KS is very picky about them being perfect. I import a ton of models from Cinema4D and this happens quite often. I'll recalculate the normals in KS at a shallower angle, usually 15deg, and it cleans up the edges and gets rid of faceting quite well. I have put in my request that this operation be included in the import dialog, or just done automatically in the background when using the C4D plugin.

Give that a shot and see what happens. If it fixes it, then its what Modo is doing to the normals. I know C4D plays some internal tricks with just dealing with bad and innacurate normals so that the user never sees the bandaid fixes the app does in the background to "path" the problem areas. C4D uses a "normals tag" to tame errant geometry into look ok when rendered, but it it can't hard code those repairs into the geometry upon import with the plug in, therefore resulting in my intimate relationship with the geometry editor.

Good luck!

So this is the result of deleting the normals in MODO after import from a CAD item and tessellation.  I then assigned new normals in Keyshot.  I am going to say its Keyshot and not my exports.

Vray and MODO have no issue rounding these edges.

mattjgerard

Can you bake the rounding in your 3D app before sending to KS? The KS rounding feature is a bit of trickery, and not really affecting the geometry, whereas in most 3D apps is actually internally modifying the actual geometry to present the end result, even if the interface isn't presenting it that way. I know Cinema does this alot with its primitive objects and phong shading. The internal phong shading is so old and broken that they have a whole internal process of "fixing" the normals and polygon seams that is invisible to the user, but behind the scenes there is much trickery involved.

I don't use the edge rounding in KS very often because my models are usually CAD conversions that are horribly mutilated triangulated messes that have so many overlapping seams that any attempt to smooth them in KS ends up in results exactly as you are showing, if not worse. So, If edges need to be smoothed, eased and rounded I do that in Cinema before sending it to KS. The nice thing is that the C4d-KS plugin reads most of the modifiers natively so that I don't have to bake everything before sending it over. It bakes it in the process leaving my Cinema file procedural.

Just some ideas, but it will be good to see how this gets resolved, as I run into the same issues sometimes.

Seth Richardson

Ive come to the conclusion that since Keyshot is doing this on the object level that its overriding the surface normals that were originally imported.

Which is a bug in my opinion.  I can list 5 different renderers that handle this exact geometry just fine.  Little disappointing especially for a renderer meant to render objects coming from CAD which dont always have nice fillets on every single piece.

I sent this model off to Luxion.  Hopefully they come up with a solution.

mattjgerard

Yep, if its a bug then yeah, its a little odd that it would do it. Most 3D apps handle normals differently, and I'm not an expert at all, it took me a long time to figure out what the heck normals actually were and what they did.

The thing I learned is that by the time I run my models through Cinema for placement and scene assembly (which I could do in KS, but its MUCH faster to do it in C4D) KS doesn't see it as a CAD file. I've pulled in many CAD files directly from steps or vrml's, usually from GrabCAD or something like that and I never have any problems with those models. So I know its C4D mucking the waters a bit. Keyshot is getting better about dealing with them, and the problem is that with every conversion (STEP->C4D->KS) there is a chance of something obscure getting messed up. Nice thing is that the developers are super responsive when it comes to stuff like this, and most likely it will get fixed asap.

Seth Richardson

Quote from: mattjgerard on August 16, 2017, 10:34:56 AM
Yep, if its a bug then yeah, its a little odd that it would do it. Most 3D apps handle normals differently, and I'm not an expert at all, it took me a long time to figure out what the heck normals actually were and what they did.

The thing I learned is that by the time I run my models through Cinema for placement and scene assembly (which I could do in KS, but its MUCH faster to do it in C4D) KS doesn't see it as a CAD file. I've pulled in many CAD files directly from steps or vrml's, usually from GrabCAD or something like that and I never have any problems with those models. So I know its C4D mucking the waters a bit. Keyshot is getting better about dealing with them, and the problem is that with every conversion (STEP->C4D->KS) there is a chance of something obscure getting messed up. Nice thing is that the developers are super responsive when it comes to stuff like this, and most likely it will get fixed asap.

Ya for sure.  I did a little googling about this and it seems its been a problem with non nurbs data for quite sometime.  So hopefully bringing it up formally will encourage them to take a look at how other render engines do it vs how they do it.  Most engines do it on the shader side not the geometry side and I think that is the difference.   

guest84672

FYI - KeyShot can read in geometry for MoI directly.

Seth Richardson

Quote from: thomasteger on August 16, 2017, 11:07:14 AM
FYI - KeyShot can read in geometry for MoI directly.

Yes but doing scene setup requires me to move out of a CAD app and into a app like MODO where I can add subdivision surfaces that are needed for renders as well as general scene structure, animation etc.  So I have to convert one way or another.  For people rendering straight hard surfaces im sure everything works great.  But I need to do specific modifications and grouping/rigging/deformations on top of all that.  Trying to do it all in CAD or keyshot is terribly restrictive and slow.

If there was a way to use a edge texture like curvature as bump to simulate those edges that would work too.  But alas you cant do that in keyshot..  Which was my next approach.  Similar to something like Vray edges tex.

guest84672

We have some improvements coming in the next update. Stay tuned.

DriesV

For your information, the latest update (7.0.456) has the improvements to Rounded Edges.
They should work quite a bit better on most models.

Let me know how it works for you.

Dries

Seth Richardson

#13
Quote from: DriesV on August 25, 2017, 02:05:35 AM
For your information, the latest update (7.0.456) has the improvements to Rounded Edges.
They should work quite a bit better on most models.

Let me know how it works for you.

Dries

You are awesome!  This fixed issues on my models (the one I sent you).

Opps I lied.  The issue is still there I was looking at a nurbs model.