diff --git a/source/blender/blenkernel/intern/subdiv_mesh.c b/source/blender/blenkernel/intern/subdiv_mesh.c index 75e05f8ffab..3325af5b138 100644 --- a/source/blender/blenkernel/intern/subdiv_mesh.c +++ b/source/blender/blenkernel/intern/subdiv_mesh.c @@ -1186,6 +1186,7 @@ Mesh *BKE_subdiv_to_mesh(Subdiv *subdiv, if (!subdiv_context.can_evaluate_normals) { result->runtime.cd_dirty_vert |= CD_MASK_NORMAL; } + result->runtime.is_subdiv_mesh = true; /* Free used memoty. */ subdiv_mesh_context_free(&subdiv_context); return result; diff --git a/source/blender/makesdna/DNA_mesh_types.h b/source/blender/makesdna/DNA_mesh_types.h index 8a9a69ac178..cb7daa426a5 100644 --- a/source/blender/makesdna/DNA_mesh_types.h +++ b/source/blender/makesdna/DNA_mesh_types.h @@ -87,7 +87,9 @@ typedef struct Mesh_Runtime { struct SubdivCCG *subdiv_ccg; void *_pad1; int subdiv_ccg_tot_level; - char _pad2[4]; + /* Mesh is a result of subdivision surface, which created real mesh elements for the surface. */ + char is_subdiv_mesh; + char _pad2[3]; int64_t cd_dirty_vert; int64_t cd_dirty_edge;