diff --git a/io_scene_a3d/A3DBlenderImporter.py b/io_scene_a3d/A3DBlenderImporter.py index 68e23c7..c0be3c2 100644 --- a/io_scene_a3d/A3DBlenderImporter.py +++ b/io_scene_a3d/A3DBlenderImporter.py @@ -157,8 +157,16 @@ class A3DBlenderImporter: me.polygons[faceI+faceIndexBase].material_index = submeshI faceIndexBase += submesh.indexCount//3 - # Finalise + #XXX: call this before we assign split normals, if you do not it causes a segmentation fault me.validate() + + # Split normals + if len(normal1) != 0: + me.normals_split_custom_set_from_vertices(normal1) + elif len(normal2) != 0: + me.normals_split_custom_set_from_vertices(normal2) + + # Finalise me.update() return me