read custom normals


How can I read the custom normals for all the vertices in the mesh?


I assume what you are looking for is stored in[#].normal

Thanks CoDEmanX, that’s exaclty what I wanted.

Hi, I was going to open an identical thread, so I thought to use this outdated one, in order to find a way to read the Custom Normals in Blender 2.91 using Python.


so did it work, or do you have a specific question?

Actually, it doesn’t work. There is no “loops” in “”.
I thought it was “mesh.loops[#].normal” , but what I get is a Vector((0,0,0)).
I am using Auto Smooth and I’m editing the normals in edit mode, but the vector is always the same.
Maybe there is a method for working with bmesh, but I haven’t found it yet…
I tried with “bm.faces[#].loops[#].calc_normal()”, but I get the unalterated normal, and not the custom normal.

here’s a similar post where I answered this question not too long ago:

Many thanks, I saw the method for reading them, but I didn’t realize that in order to read them I need to calculate with the function:

Now it works, thank you very much :slight_smile: