Fix T74643: Outline Overlay Shows Hidden Faces

When in editmode faces can be hidden, but in object mode these faces are
still visible. The flag if a face was hidden in edit mode is stored in
object mode, but should not be used.

The edge detection gpu batch did detect hidden faces and didn't add them
to the draw batch. The edge detection gpu batch is used for workbench
shadows, custom bone shapes and object outlines.

This patch adds all faces to the edge detection batch.

Reviewed By: fclem

Differential Revision: https://developer.blender.org/D7157
This commit is contained in:
2020-03-17 12:05:45 +01:00
parent cb560c01b6
commit 4fc45c7a2b

View File

@@ -1066,7 +1066,7 @@ static void extract_lines_adjacency_looptri_mesh(const MeshRenderData *mr,
void *data)
{
const MPoly *mpoly = &mr->mpoly[mlt->poly];
if (!(mpoly->flag & ME_HIDE)) {
if (!(mr->use_hide && (mpoly->flag & ME_HIDE))) {
lines_adjacency_triangle(mr->mloop[mlt->tri[0]].v,
mr->mloop[mlt->tri[1]].v,
mr->mloop[mlt->tri[2]].v,