Modified OBJ Importer for Custom Vertex Normals

Hi, I updated the link. It points to a new version that is compatible with the latest version of Blender. As Dito said, Blender supports custom vertex normals now and thus the OBJ importer shipped with Blender was updated. Our new version uses this of course but extends it a bit to support splitting meshes by materials. We even submitted a patch so future Blender versions can ship with this feature. If you’re interested in this, maybe you can leave a comment there.

from what version?

Hi Dito
That sounds great. Can you tell me from what version it is supported by blender?
We are currently using 2.73 for our automated baking and I have to estimate if upgrading the version
is an option.
Thanks for your reply!

Hi Rkia,

according to the release notes its version 2.74

I would like to know how you guys use the custom Normal feature on CAD data. As I understand things one can since 2.74 use the fbx format which retains native normals – but they only survive as long as one leaves fingers away from Edit Mode. Once entered Blender overwrites the imported Normals.

But if one may not use Edit Mode what can on then do with that CAD data? Assign a solid colour and render?
Without Edit Mode one can not do UV work, assign more than one Material to a single volume etc.

My guess is that one could keep the original imported mesh somewhere in a locked state and to perform all UV / Material and any other work which doesn’t actually change the Vertex count and positions on duplicates. These duplicates in the end get their original Normals transferred back, likely with the Normal Edit Modifier. Is that the correct approach or how do you deal with this issue?

AFAIK that’s not true any more. Don’t know about FBX, but if you import CAD data as OBJ, the custom vertex normals are preserved even when entering Edit mode, as long as you don’t edit the mesh itself.

That’s very helpful info, thanks Ikari! In the meantime I had played around in Edit Mode with UV’s and Material assignments on an imported fbx and the shading remained intact. My experiences with obj are not that good but that will have to do with the way the source app writes them. Obj’s in my case (source=Rhino) get Hard Edges assigned but often still need an Edge Split Modifier to look ok, the fbx has no hard edges but looks good out of the box. Do you know whether there is some way bring external CAD geometry in as linked items, so that they get refreshed when the source has changed?

And guess what… 9 years later the new obj importer still using face normals and not vertex normals…