From 0ae64a9945db9f3d00ba7ef3780e25e16fabf664 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sybren=20A=2E=20St=C3=BCvel?= Date: Fri, 15 May 2020 12:58:48 +0200 Subject: Fix T76695: Not exporting normals properly in Alembic format When auto-smooth enabled, but no custom normals layer present, the Alembic exporter would incorrectly assume the mesh was shaded smooth. This is now corrected, and normals are always written when auto-smooth is enabled. --- source/blender/io/alembic/intern/abc_writer_mesh.cc | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/source/blender/io/alembic/intern/abc_writer_mesh.cc b/source/blender/io/alembic/intern/abc_writer_mesh.cc index f7b575e7b23..6093068463c 100644 --- a/source/blender/io/alembic/intern/abc_writer_mesh.cc +++ b/source/blender/io/alembic/intern/abc_writer_mesh.cc @@ -139,7 +139,8 @@ static void get_loop_normals(struct Mesh *mesh, /* If all polygons are smooth shaded, and there are no custom normals, we don't need to export * normals at all. This is also done by other software, see T71246. */ - if (!has_flat_shaded_poly && !CustomData_has_layer(&mesh->ldata, CD_CUSTOMLOOPNORMAL)) { + if (!has_flat_shaded_poly && !CustomData_has_layer(&mesh->ldata, CD_CUSTOMLOOPNORMAL) && + (mesh->flag & ME_AUTOSMOOTH) == 0) { return; } -- cgit v1.2.3