diff options
author | Brecht Van Lommel <brecht@blender.org> | 2022-02-28 19:17:40 +0300 |
---|---|---|
committer | Brecht Van Lommel <brecht@blender.org> | 2022-02-28 20:32:27 +0300 |
commit | 44b0c70919e92f7b70f0e03eba9570ca8906ab90 (patch) | |
tree | 49ea8e09a87805921f901c6f3cc2c9769283c0f1 /source/blender/blenkernel/intern/DerivedMesh.cc | |
parent | 37d2c774c1240014dca8933545a735091b156e5b (diff) |
Fix T92288, T96041: instancing of shared mesh objects without modifiers broken
New code from the vertex normal refactor cfa53e0fbeed combined with older code
from 592759e3d62a that disabled instancing for custom normals and autosmooth
meant that instancing was always disabled.
However we do not need to disable instancing for custom normals and autosmooth
at all, this can be shared between instances just fine.
Diffstat (limited to 'source/blender/blenkernel/intern/DerivedMesh.cc')
-rw-r--r-- | source/blender/blenkernel/intern/DerivedMesh.cc | 7 |
1 files changed, 1 insertions, 6 deletions
diff --git a/source/blender/blenkernel/intern/DerivedMesh.cc b/source/blender/blenkernel/intern/DerivedMesh.cc index 411e5f81262..1fcf1bf1839 100644 --- a/source/blender/blenkernel/intern/DerivedMesh.cc +++ b/source/blender/blenkernel/intern/DerivedMesh.cc @@ -1304,12 +1304,7 @@ static void mesh_calc_modifiers(struct Depsgraph *depsgraph, * we need to apply these back onto the Mesh. If we have no * Mesh then we need to build one. */ if (mesh_final == nullptr) { - /* NOTE: this check on cdmask is a bit dodgy, it handles the issue at stake here (see T68211), - * but other cases might require similar handling? - * Could be a good idea to define a proper CustomData_MeshMask for that then. */ - if (deformed_verts == nullptr && allow_shared_mesh && - (final_datamask.lmask & CD_MASK_NORMAL) == 0 && - (final_datamask.pmask & CD_MASK_NORMAL) == 0) { + if (deformed_verts == nullptr && allow_shared_mesh) { mesh_final = mesh_input; } else { |