[Bf-blender-cvs] [219d5a9530e] tmp-workbench-rewrite2: Basic vertex colors

Miguel Pozo noreply at git.blender.org
Mon Oct 10 13:48:56 CEST 2022


Commit: 219d5a9530e5f771956cde7353e8ef8aef82a5ad
Author: Miguel Pozo
Date:   Fri Oct 7 16:20:46 2022 +0200
Branches: tmp-workbench-rewrite2
https://developer.blender.org/rB219d5a9530e5f771956cde7353e8ef8aef82a5ad

Basic vertex colors

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

M	source/blender/draw/engines/workbench/workbench_engine.cc

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

diff --git a/source/blender/draw/engines/workbench/workbench_engine.cc b/source/blender/draw/engines/workbench/workbench_engine.cc
index 613a7a48111..509c82ea572 100644
--- a/source/blender/draw/engines/workbench/workbench_engine.cc
+++ b/source/blender/draw/engines/workbench/workbench_engine.cc
@@ -698,7 +698,9 @@ class Instance {
       material_override = Material(shading.single_color);
     }
     else if (material_subtype == eMaterialSubType::ATTRIBUTE) {
-      // TODO(pragma37)
+      /* TODO(pragma37): Don't use override, check per object if it has color attribute */
+      /* When r == -1.0 the shader uses the vertex color */
+      material_override = Material(float3(-1.0f, 1.0f, 1.0f));
     }
 
     switch (shading.light) {
@@ -830,6 +832,10 @@ class Instance {
 
   GPUBatch *geometry_get(ObjectRef &ob_ref)
   {
+    if (material_subtype == eMaterialSubType::ATTRIBUTE) {
+      /* TODO(pragma37): Should check for vertex paint mode as well */
+      return DRW_cache_mesh_surface_vertpaint_get(ob_ref.object);
+    }
     return DRW_cache_object_surface_get(ob_ref.object);
   }



More information about the Bf-blender-cvs mailing list