[Bf-blender-cvs] [35217b4c06e] master: Fix T72114 Overlays: Curves are not drawing anymore (objectmode)

Clément Foucault noreply at git.blender.org
Mon Dec 2 17:14:51 CET 2019


Commit: 35217b4c06e76b3de1a055902939ee01cafdf84f
Author: Clément Foucault
Date:   Mon Dec 2 17:14:38 2019 +0100
Branches: master
https://developer.blender.org/rB35217b4c06e76b3de1a055902939ee01cafdf84f

Fix T72114 Overlays: Curves are not drawing anymore (objectmode)

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

M	source/blender/draw/engines/overlay/overlay_wireframe.c

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

diff --git a/source/blender/draw/engines/overlay/overlay_wireframe.c b/source/blender/draw/engines/overlay/overlay_wireframe.c
index d86f524cb48..189df443d64 100644
--- a/source/blender/draw/engines/overlay/overlay_wireframe.c
+++ b/source/blender/draw/engines/overlay/overlay_wireframe.c
@@ -119,6 +119,26 @@ void OVERLAY_wireframe_cache_populate(OVERLAY_Data *vedata,
   const bool use_wire = (pd->overlay.flag & V3D_OVERLAY_WIREFRAMES) || (ob->dtx & OB_DRAWWIRE) ||
                         (ob->dt == OB_WIRE);
 
+  if (ELEM(ob->type, OB_CURVE, OB_SURF)) {
+    OVERLAY_ExtraCallBuffers *cb = OVERLAY_extra_call_buffer_get(vedata, ob);
+    float *color;
+    DRW_object_wire_theme_get(ob, draw_ctx->view_layer, &color);
+
+    struct GPUBatch *geom = NULL;
+    switch (ob->type) {
+      case OB_CURVE:
+        geom = DRW_cache_curve_edge_wire_get(ob);
+        break;
+      case OB_SURF:
+        geom = DRW_cache_surf_edge_wire_get(ob);
+        break;
+    }
+
+    if (geom) {
+      OVERLAY_extra_wire(cb, geom, ob->obmat, color);
+    }
+  }
+
   /* Fast path for duplis. */
   if (dupli && !init_dupli) {
     if (dupli->wire_shgrp && dupli->wire_geom) {



More information about the Bf-blender-cvs mailing list