[Bf-blender-cvs] [a765b896946] hair_guides_grooming: Enable shaded surface drawing for groom objects.
Lukas Tönne
noreply at git.blender.org
Thu Jun 28 13:35:53 CEST 2018
Commit: a765b896946f4eed78332921213fc483ad435468
Author: Lukas Tönne
Date: Thu Jun 28 12:35:35 2018 +0100
Branches: hair_guides_grooming
https://developer.blender.org/rBa765b896946f4eed78332921213fc483ad435468
Enable shaded surface drawing for groom objects.
===================================================================
M source/blender/draw/engines/workbench/workbench_deferred.c
M source/blender/draw/intern/draw_cache_impl_groom.c
===================================================================
diff --git a/source/blender/draw/engines/workbench/workbench_deferred.c b/source/blender/draw/engines/workbench/workbench_deferred.c
index 65953bc1b39..39c7d963bf2 100644
--- a/source/blender/draw/engines/workbench/workbench_deferred.c
+++ b/source/blender/draw/engines/workbench/workbench_deferred.c
@@ -715,7 +715,7 @@ void workbench_deferred_solid_cache_populate(WORKBENCH_Data *vedata, Object *ob)
}
WORKBENCH_MaterialData *material;
- if (ELEM(ob->type, OB_MESH, OB_CURVE, OB_SURF, OB_FONT, OB_MBALL)) {
+ if (ELEM(ob->type, OB_MESH, OB_CURVE, OB_SURF, OB_FONT, OB_MBALL, OB_GROOM)) {
const DRWContextState *draw_ctx = DRW_context_state_get();
const bool is_active = (ob == draw_ctx->obact);
const bool is_sculpt_mode = is_active && (draw_ctx->object_mode & OB_MODE_SCULPT) != 0;
diff --git a/source/blender/draw/intern/draw_cache_impl_groom.c b/source/blender/draw/intern/draw_cache_impl_groom.c
index 7a22cace3d7..95f3f4e7543 100644
--- a/source/blender/draw/intern/draw_cache_impl_groom.c
+++ b/source/blender/draw/intern/draw_cache_impl_groom.c
@@ -157,10 +157,7 @@ static void groom_batch_cache_clear(Groom *groom)
GWN_BATCH_DISCARD_SAFE(cache->all_edges);
GWN_BATCH_DISCARD_SAFE(cache->all_triangles);
GWN_BATCH_DISCARD_SAFE(cache->overlay_verts);
- for (int i = 0; i < cache->mat_len; ++i)
- {
- GWN_BATCH_DISCARD_SAFE(cache->shaded_triangles[i]);
- }
+ /* Note: shaded_triangles[0] is already freed by cache->all_triangles */
MEM_SAFE_FREE(cache->shaded_triangles);
cache->mat_len = 0;
More information about the Bf-blender-cvs
mailing list