[Bf-blender-cvs] [91e5e02aff4] blender2.8: ObjectMode: Fix instances with BoundBox drawtype not displaying

Clément Foucault noreply at git.blender.org
Wed Oct 17 18:49:40 CEST 2018


Commit: 91e5e02aff46100f9d1172e98768c42db8e70bb6
Author: Clément Foucault
Date:   Wed Oct 17 18:08:00 2018 +0200
Branches: blender2.8
https://developer.blender.org/rB91e5e02aff46100f9d1172e98768c42db8e70bb6

ObjectMode: Fix instances with BoundBox drawtype not displaying

===================================================================

M	source/blender/draw/modes/object_mode.c

===================================================================

diff --git a/source/blender/draw/modes/object_mode.c b/source/blender/draw/modes/object_mode.c
index 222a5977665..57373678a6a 100644
--- a/source/blender/draw/modes/object_mode.c
+++ b/source/blender/draw/modes/object_mode.c
@@ -2802,6 +2802,13 @@ static void OBJECT_cache_populate(void *vedata, Object *ob)
 		DRW_shgroup_forcefield(sgl, ob, view_layer);
 	}
 
+	if (ob->dt == OB_BOUNDBOX) {
+		if (theme_id == TH_UNDEFINED) {
+			theme_id = DRW_object_wire_theme_get(ob, view_layer, NULL);
+		}
+		DRW_shgroup_bounds(sgl, ob, theme_id);
+	}
+
 	/* don't show object extras in set's */
 	if ((ob->base_flag & (BASE_FROM_SET | BASE_FROMDUPLI)) == 0) {
 		if ((draw_ctx->object_mode & (OB_MODE_ALL_PAINT | OB_MODE_ALL_PAINT_GPENCIL)) == 0) {
@@ -2812,7 +2819,7 @@ static void OBJECT_cache_populate(void *vedata, Object *ob)
 			DRW_shgroup_relationship_lines(sgl, draw_ctx->depsgraph, scene, ob);
 		}
 
-		const bool draw_extra = (ob->dtx != 0 || ob->dt == OB_BOUNDBOX);
+		const bool draw_extra = (ob->dtx != 0);
 		if (draw_extra && (theme_id == TH_UNDEFINED)) {
 			theme_id = DRW_object_wire_theme_get(ob, view_layer, NULL);
 		}
@@ -2833,7 +2840,8 @@ static void OBJECT_cache_populate(void *vedata, Object *ob)
 			DRW_shgroup_texture_space(sgl, ob, theme_id);
 		}
 
-		if (ob->dtx & OB_DRAWBOUNDOX || ob->dt == OB_BOUNDBOX) {
+		/* Don't draw bounding box again if draw type is bound box. */
+		if (ob->dtx & OB_DRAWBOUNDOX && ob->dt != OB_BOUNDBOX) {
 			DRW_shgroup_bounds(sgl, ob, theme_id);
 		}



More information about the Bf-blender-cvs mailing list