FBX export unwelds mesh, loses sharp edges and ruins UVs

Hi,

I am experiencing what appears to be a very bad bug detrimental to my company’s day to day pipeline.

When exporting from Rhino 7, typically we would export as an .OBJ as that is the only way to produce a welded mesh from Rhino that retains edge sharpness, however we have ran into problems explained in this forum post so are instead trying to export as .FBX

However the mesh produced in the .FBX is not welded and there is no option to weld meshes on export like there is when exporting as .OBJ making models extremely difficult to work with.

Fixing this introduces very cumbersome and additional steps that are just not feasible for models with hundreds or thousands of parts that we typically work with. This is not a simple case of welding the mesh in Rhino as doing this loses edge sharpness and, to reiterate, is an extra step that we otherwise would not have to do.

Resulting .FBX files also seem to obscure UVs, ignoring their scale and position.


here is my desired geometry in rhino. notice the selected mesh is a closed mesh


here are the settings used to export as .FBX


here is the resulting .FBX in blender. the shells are one object but are unwelded and the UV scaling and position is completely wrong in comparison to the rhino geometry.

I ran into the same issue and a few more, see: How to properly export/import meshes and SubDs with texture coordinates? - Rhino - McNeel Forum

Unfortunately I don’t have a solution yet. As far as I can tell, part of the issue is the way Rhino stores UV values internally. There are cases, where a second “render mesh” is created, that is used to handle split UVs. That’s likely the cause for difference in UVs between Rhino and blender.

Hi @andyconnacher ,

Try using the ExtractRenderMesh command on your model in Rhino after the UVs are as you want and then use the Export command to save that mesh only as FBX for transfer.

Hi Brian,

Still getting unwelding issues when exporting the extracted render mesh.

Here’s an example of the sort of files i’m using

teset34.3dm (5.5 MB)
teset34.fbx (41.2 KB)

Hi @andyconnacher ,

I’m not seeing a difference in the UVs of the render mesh in Rhino and the FBX I saved there once in Blender…

Your FBX file appears the same as mine too. Can you show the specific area that doesn’t match in the UVs due to edge welding?

Hey, I understand this is a old post, but I’m currently having this issue as well with a unwelded mesh when exporting from Rhino to Blender.

I first tried exporting a UV unwrapped NURBS file.

I then attempted to manually join everything together within Blender. However, the mesh starts to produce this garish dark edges along flat surfaces which show up when apply materials

Using the ExtractRenderMesh command mention above produces similar results. The mesh is exported isn’t joined together. Just to visual show the issue, I’ve applied a sub division modifier as a way to see all of the geometry faces are individual. Joining them together also leads to same result of garish mesh.

Finally I’ve tried just welding the mesh together in Rhino using Grasshopper, and when exporting into blender the result was the same.

You can see when in UE5 the dark seams show through the material.

I prey someone knows how to fix the issue, because the only other solution I can think of at the moment is remodelling a large part of my project in a different software, I am currently using Rhino 7 as well!

Rhino File with all the different options in their respective layers:
Exported_Unwelded_Mesh_Rhino.3dm (821.9 KB)

Blender File with the different options, both welded and unwelded in their respective layers:
Exported_Unwelded_Mesh_Blender.blend (996.8 KB)

Thanks!

Regarding the normal issue in blender, this may help: Why are my normal vectors getting thrown off when merging by distance? - Blender Stack Exchange
You can also give the import_3dm extension for blender a try: Releases · jesterKing/import_3dm

Part of the problem is how Rhino stores meshes internally. They can only handle one TextureCoordinate (/UV value) per vertex. That is why splitting UVs also splits the Mesh, creating two vertices with the same position. Rhino’s tools then handle those as one when manipulating them.
I’m still getting confused by split/join, unweld/weld for meshes in Rhino as it does not align with what I expect or am used to from other 3D DCC software.

1 Like

I ended up having to export as OBJ. The previous issues I experienced about OBJs seems to have gone or been fixed - or try what @Bernd_Möller suggested and use the .3dm import add-on for blender

I don’t understand why Rhino can export OBJs with welded verts but not FBX - I would be happy for someone to explain it to me :grin:

1 Like

Hey folks!

Apologies for the late reply, I just needed to confirm a lot of aspects with this workflow I’ve been using. But the suggestion from @Bernd_Möller to use the import_3dm extension for blender has fixed the issue I was experiencing.

Thank you for the help! I actually had it installed already and entirely forgot about it originally! :sweat_smile:

2 Likes