Fix #120154: Cage face normals overlay always draws original normals
commit930d645b4caa5fc088be08497a6610faaae12a4e
authorHans Goudey <hans@blender.org>
Tue, 2 Apr 2024 17:42:01 +0000 (2 13:42 -0400)
committerHans Goudey <hans@blender.org>
Tue, 2 Apr 2024 17:42:06 +0000 (2 13:42 -0400)
treea9cb1fe90bfa753b39253714f61f3dae93018e0f
parent6160335c4d0be9acbe844fcdadbf812bdd1a4ac0
Fix #120154: Cage face normals overlay always draws original normals

When the cage mesh is the output of a modifier that supports deforming
BMesh directly, it will be a mesh wrapper and `MR_EXTRACT_BMESH` will
be used. Otherwise the cage mesh will be a `Mesh` and its own normals
should be drawn instead of the the original normals. Thought this seems
deceivingly simple, it works with no modifiers, BMesh-deforming modifiers
with cage enabled and disabled, and topology changing modifiers, which
should be all the possible cases here.
source/blender/draw/intern/mesh_extractors/extract_mesh_vbo_fdots_nor.cc