MoI discussion forum
MoI discussion forum

Full Version: MOI mesh export issue

Show messages:  1  2-21  22-41  42-49

From: Michael Gibson
23 Aug 2024   [#2] In reply to [#1]
Hi rom, can you please post the .3dm model file with your object in it? That would make it possible to examine your geometry and give any model specific advice.

Just by looking at your screenshot alone, it appears you have dragged the slider towards the "Fewer polygons" side. You should only do that if you want a low poly result.

For an emphasis on better quality rendering you should drag the slider towards the "More polygons" side (towards the right) instead.

Also clear out "Avoid smaller than" , that also is for making lower polygon count.

It can sometimes also be good to put in a distance in "Divide larger than" like around 1/10 of your overall model width, to force more divisions.

It would help a lot if you could post the model file though.

What programs are you importing into where you're seeing the severe problems? Make sure you're not deleting vertex normals.

- Michael
From: rom
24 Aug 2024   [#3] In reply to [#2]

https://drive.google.com/file/d/1MU_GV9F4liloikJwDsxjMK1NEvfKnz4q/view?usp=sharing

Michael, firstly thank you reply.
I attached the most primitive example - 2 perpendicular cylinders with a fillet; plus some screenshots from max+vantage (but it'd look bad in any render engine - **the long perpendicular triangles are almost 90 degree to adjacent faces!**).
Trying pour more poly count is a bad idea - it really doesn't solve it. The mesh should look decent even in lower poly count.
Again, I can solve it by playing with aspect ratio limit slider but it adds unnecessary poly count (in some fields like archviz its crucial to stay lightweight)


From: Michael Gibson
24 Aug 2024   [#4] In reply to [#3]
Hi rom, thanks for posting the file.

You're probably not getting the original vertex normals coming through for the rendering. Check if you've accidentally disabled it in import options or if you're doing some kind of editing operation that is discarding them.

Here's what I get using just defaults:

Export out of MoI looks like this (complete default settings, nothing adjusted):



Import into Cinema4D looks like this:



Render in Cinema4D looks like this:



Render in Blender looks like this:



re:
> but it'd look bad in any render engine

No, as demonstrated above it should look fine in any render engine just as long as the good vertex normals are getting used.

- Michael

Image Attachments:
rom_render1.png  rom_render2.png  rom_render3.png  rom_render4.png 


From: Michael Gibson
24 Aug 2024   [#5] In reply to [#3]
Additional tests using same default mesh settings .obj export:

Rhino:


MSPaint3D:


SimLab Composer:


- Michael

Image Attachments:
rom_mspaint3d.png  rom_rhino.png  rom_simlabcomposer.png 


From: rom
24 Aug 2024   [#6] In reply to [#5]

unsurprisingly, higher poly count (815 faces per one fillet) helps to neutralize artifacts.
this is the close up of the default obj inside max:
https://imgur.com/a/dJUXqE9
Forgive me but its a bad topology, I see a lot of room for improvement (getting rid of perpendicular triangles (in blue) could be a good starting point (plasticity's default example proves its doable)
P.S. Here's a promo of some max plugin which bridges edges with non-equal segment number without perpendicular triangles:
https://www.youtube.com/watch?v=DzBid27gDRM


From: Michael Gibson
24 Aug 2024   [#7] In reply to [#6]
It's not bad topology, it's automatically generated topology which will render with absolutely no artifacts (as clearly shown above in numerous apps) as long as you don't discard the vertex normals.

You've either accidentally turned off loading of vertex normals, or maybe you're doing some operation on the mesh that is discarding them.

As long as you render with the vertex normals that come from the original CAD data, every triangle will be shaded the same as the originating CAD surface.


> unsurprisingly, higher poly count (815 faces per one fillet) helps to neutralize artifacts.

This again has to do with vertex normals - vertex normals generated by averaging polygon face normals tends to work better if the faces are more evenly sized.

The solution is to use the high quality vertex normals instead of having them generated from the polygons.

You can have any kind of topology or polygon structure without any artifacts if the stored vertex normals are used. It's the number 1 most important thing to get high quality renders from CAD converted data.

- Michael
From: Michael Gibson
24 Aug 2024   [#8] In reply to [#6]
re:
> (plasticity's default example proves its doable)

Maybe you hadn't done whatever you're doing that eliminates stored vertex normals when you did the plasticity test.

You will definitely get shading artifacts out of plasticity's output as well if you discard vertex normals there too.

- Michael
From: rom
24 Aug 2024   [#9] In reply to [#7]
Thank you, Mickael
From: PaQ
24 Aug 2024   [#10]


I couldn't resist, but Plasticity mesher is really far behind MoI. (Plasti Left, MoI right, around 5500 pts budget, default settings)
I only care about Ngones output because I don't want to deal with micro triangles later on.
Plasti does create many weird stuffs, like those doubles edges, strange edges alignment ... I have the feeling ngones output 'just' try to post merge coplanar triangles or something.

Of course as Michael explains, the topo is not that important as both geo here render the same.
However when it comes to geometry manipulation (uv unwarping, sub-material assignement), MoI ngones are freaking crisp.

(There is still a lot of misunderstanding about what constitutes 'good' topology for users coming from purely polygonal modeling, as they are accustomed to creating evenly quad-dominant meshes to combat issues with average normal computation)

Image Attachments:
PlastyVsMoI.JPG 


From: Michael Gibson
24 Aug 2024   [#11] In reply to [#10]
Hi PaQ,

re:
> I have the feeling ngones output 'just' try to post merge coplanar triangles or something.

It certainly looks like it's doing something like that. It seems like it has a tendency to get a kind of diagonal skew effect in the last connections approaching a trim edge. It kind of feels like hair that won't comb out straight. Like it's got split ends.

MoI's mesher generates N-gons natively as part of the meshing process. If you want triangles it still generates n-gons initially internally and then the n-gons are triangulated.


re:
> as they are accustomed to creating evenly quad-dominant meshes to combat issues
> with average normal computation

The other thing that drives this is using all quads with edge flow structure for sub-d modeling.

They get used to hearing over and over that they need to use all quads for their sub-d models and then that gets extended to everything needs to be all quads no matter what is being done.

- Michael
From: rom
25 Aug 2024   [#12]
Usually those settings (on the left)
avoid smaller than=3 and aspect ratio limit=2
allow me to get kinda tolerable topology but create excessive polygons (light blue) and long triangles marked in green which I can suppress with Max's Welder modifier.
BTW is it possible to add weld radius value next to "weld vertices along edges"?
I dream one day the FBX Exporter would generate a cleaner output similar to Smooth Bridge (the example on the right)
https://www.youtube.com/watch?v=DzBid27gDRM

Image Attachments:
moi-ok4.png 


From: Michael Gibson
25 Aug 2024   [#13] In reply to [#12]
Hi rom,

> allow me to get kinda tolerable topology but create excessive polygons (light blue) and
> long triangles marked in green which I can suppress with Max's Welder modifier.

Ok, but I hope you understand now that there is no difference in render quality from doing this.


re:
> BTW is it possible to add weld radius value next to "weld vertices along edges"?

The welding option is for whether to make single shared vertex on edges between 2 surfaces, or whether each surface should have separate vertices stacked on top of each other along their joined edges.

A radius value would be a pretty different thing, more like a polygon post processing operation.

- Michael
From: Michael Gibson
25 Aug 2024   [#14] In reply to [#12]
There's also an option you can set in moi.ini CentroidTriangulation=y which will triangulate n-gons with an alternate method by adding in a centroid point.

It could give you less skinny triangles.

Some more description in this thread:
https://moi3d.com/forum/index.php?webtag=MOI&msg=8109.1

- Michael
From: rom
25 Aug 2024   [#15] In reply to [#13]
>>>Ok, but I hope you understand now that there is no difference in render quality from doing this.

You hope in vain :)
This is DEFAULT obj from MOI with some carpaint and hdri. I'm afraid I DO see problems in renders, not matte viewport screenshots.
Can't you see how bad those perpendicular triangles are?

Image Attachments:
default-obj.png 


From: rom
25 Aug 2024   [#16] In reply to [#15]

and this is DEFAULT obj from plasticity without perpendicular triangles.
I don't know how else to demonstrate they are bad and this issue need to be addressed

Image Attachments:
defaul_plasticity.png 


From: rom
25 Aug 2024   [#17]
Ngoned default obj from MOI. 1000 tris for one fillet

Image Attachments:
moi-ngon-default.jpg  ngon2.png 


From: val2
25 Aug 2024   [#18]
I use blender/cycles regularly. I build in moi and send the files over to blender. I'm attaching your test model. I gave it a metal material and lit it with a hdri. the export as a mesh is default.

Image Attachments:
test.jpg 


From: Michael Gibson
25 Aug 2024   [#19] In reply to [#15]
Hi rom, what happens if you edit moi.ini (Options > General > "Edit .ini file" button) and set CentroidTriangulation=y then export with Output: Quads & Triangles, does that get rid of the offending triangles?

Can you describe a bit more about how you are doing the import, like which file format you are using and are you doing any editing of the model after the import?

- Michael
From: PaQ
25 Aug 2024   [#20]
Actually rom was right about those micro triangles render problem, I never notice it because those "glitches" are really limited when using Ngones export tho. (It might depend of the render engine or the way internal triangulation is respected ?).

Using CentroidTriangulation=y completely fix the problem here, less pleasant topo (visually) but perfect triangulated render mesh.


centroid off vs centroid on.

Image Attachments:
Centroid.JPG 


From: PaQ
25 Aug 2024   [#21]
However the centroid triangulation option doesn't seems to help when using ngones export (.FBX). It looks like the internal triangulation (middle picture) can still produce this little nasty triangles.
Here's a first fix (Houdini) to 'correctly' triangulate those ngones. However I have to admit I have no clue what a 'centroid triangulation' is ... So I used the uv's as geometry position, triangulate it using a special "avoid small angle" in Houdini, and I restore the geometry position (while keeping vertex normals safe).

Attachments:
CadTriFix.hiplc

Image Attachments:
CadTriFix.JPG 


Show messages:  1  2-21  22-41  42-49