[Bf-blender-cvs] [eca698867c8] greasepencil-refactor: GPencil: Refactor: Fix black GPobjects in hero files

Clément Foucault noreply at git.blender.org
Fri Jan 3 22:28:37 CET 2020


Commit: eca698867c837c20b9ec1831bc3583628992a7d7
Author: Clément Foucault
Date:   Fri Jan 3 22:22:20 2020 +0100
Branches: greasepencil-refactor
https://developer.blender.org/rBeca698867c837c20b9ec1831bc3583628992a7d7

GPencil: Refactor: Fix black GPobjects in hero files

This was due to missing light ubo. Now we use persistent uniform to avoid
missing a rebind.

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

M	source/blender/draw/engines/gpencil/gpencil_engine.c

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

diff --git a/source/blender/draw/engines/gpencil/gpencil_engine.c b/source/blender/draw/engines/gpencil/gpencil_engine.c
index 58bf9db3e38..ad06810a878 100644
--- a/source/blender/draw/engines/gpencil/gpencil_engine.c
+++ b/source/blender/draw/engines/gpencil/gpencil_engine.c
@@ -939,6 +939,7 @@ static void gp_sbuffer_cache_populate(gpIterPopulateData *iter)
    * Remember, sbuffer stroke indices start from 0. So we add last index to avoid
    * masking issues. */
   iter->grp = DRW_shgroup_create_sub(iter->grp);
+  DRW_shgroup_uniform_block(iter->grp, "gpMaterialBlock", iter->ubo_mat);
   DRW_shgroup_uniform_float_copy(iter->grp, "strokeIndexOffset", iter->stroke_index_last);
 
   gp_stroke_cache_populate(NULL, NULL, iter->pd->sbuffer_stroke, iter);
@@ -987,7 +988,7 @@ static void gp_layer_cache_populate(bGPDlayer *gpl,
 
   struct GPUShader *sh = GPENCIL_shader_geometry_get(&en_data);
   iter->grp = DRW_shgroup_create(sh, tgp_layer->geom_ps);
-  DRW_shgroup_uniform_block(iter->grp, "gpLightBlock", iter->ubo_lights);
+  DRW_shgroup_uniform_block_persistent(iter->grp, "gpLightBlock", iter->ubo_lights);
   DRW_shgroup_uniform_block(iter->grp, "gpMaterialBlock", iter->ubo_mat);
   DRW_shgroup_uniform_texture(iter->grp, "gpFillTexture", iter->tex_fill);
   DRW_shgroup_uniform_texture(iter->grp, "gpStrokeTexture", iter->tex_stroke);



More information about the Bf-blender-cvs mailing list