1
$\begingroup$

Blender finally added the possibility to use custom normals in version 2.74. YAY. I've been playing with them to export and import a custom file format.

For example: I created the custom normals for a mesh, then call the calculate split normals and tessfaces methods

C.active_object.data.calc_normals_split()
C.active_object.data.update(calc_edges=True, calc_tessface=True)

and I can see the custom normals I expected

Vector(C.active_object.data.tessfaces[0].normal)
Vector(C.active_object.data.tessfaces[0].split_normals[0])

But if I try to use the Set Split Normals Modifier to create the normals, and even thou I can see the new normals working in the 3Dview, I can't find a ways to access those normals without appliying the modifier.

Can it be done? How can access the new normals data without applying the modifier?

$\endgroup$
1
  • 3
    $\begingroup$ What about getting them from obj.to_mesh(scene=bpy.context.scene, apply_modifiers=True, settings='PREVIEW') then freeing the mesh after usage $\endgroup$ Apr 3, 2015 at 11:13

1 Answer 1

1
$\begingroup$

As @Jerryno said, from python you can only get modifiers’ results by applying them into a temp mesh (using Object.to_mesh()), there is no reason for 'EditNormals' modifier to behave differently.

You can also have a look at some official exporters supporting 'apply modifier' feature (like e.g. .obj exporter), that’s what they are doing.

$\endgroup$

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .