[Bf-blender-cvs] [49403a676b8] master: Merge remote-tracking branch 'origin/blender-v2.82-release'

Sybren A. Stüvel noreply at git.blender.org
Tue Jan 28 18:27:09 CET 2020


Commit: 49403a676b81b0d6ca3d13c277af6de312153d3b
Author: Sybren A. Stüvel
Date:   Tue Jan 28 18:24:17 2020 +0100
Branches: master
https://developer.blender.org/rB49403a676b81b0d6ca3d13c277af6de312153d3b

Merge remote-tracking branch 'origin/blender-v2.82-release'

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



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

diff --cc source/blender/draw/intern/draw_cache.c
index bfb74a9576f,083901c9ebe..f2764753a51
--- a/source/blender/draw/intern/draw_cache.c
+++ b/source/blender/draw/intern/draw_cache.c
@@@ -824,13 -824,46 +824,32 @@@ GPUBatch *DRW_cache_object_surface_get(
    }
  }
  
+ int DRW_cache_object_material_count_get(struct Object *ob)
+ {
+   short type = (ob->runtime.mesh_eval != NULL) ? OB_MESH : ob->type;
+ 
+   switch (type) {
+     case OB_MESH:
+       return DRW_mesh_material_count_get(ob->data);
+     case OB_CURVE:
+     case OB_SURF:
+     case OB_FONT:
+       return DRW_curve_material_count_get(ob->data);
+     case OB_MBALL:
+       return DRW_metaball_material_count_get(ob->data);
+     default:
+       BLI_assert(0);
+       return 0;
+   }
+ }
+ 
  GPUBatch **DRW_cache_object_surface_material_get(struct Object *ob,
                                                   struct GPUMaterial **gpumat_array,
 -                                                 uint gpumat_array_len,
 -                                                 char **auto_layer_names,
 -                                                 int **auto_layer_is_srgb,
 -                                                 int *auto_layer_count)
 +                                                 uint gpumat_array_len)
  {
 -  if (auto_layer_names != NULL) {
 -    *auto_layer_names = NULL;
 -    *auto_layer_is_srgb = NULL;
 -    *auto_layer_count = 0;
 -  }
 -
    switch (ob->type) {
      case OB_MESH:
 -      return DRW_cache_mesh_surface_shaded_get(ob,
 -                                               gpumat_array,
 -                                               gpumat_array_len,
 -                                               auto_layer_names,
 -                                               auto_layer_is_srgb,
 -                                               auto_layer_count);
 +      return DRW_cache_mesh_surface_shaded_get(ob, gpumat_array, gpumat_array_len);
      case OB_CURVE:
        return DRW_cache_curve_surface_shaded_get(ob, gpumat_array, gpumat_array_len);
      case OB_SURF:
diff --cc source/blender/draw/intern/draw_cache.h
index 3759654931a,a77a847409b..508a6f2c46d
--- a/source/blender/draw/intern/draw_cache.h
+++ b/source/blender/draw/intern/draw_cache.h
@@@ -54,8 -54,12 +54,9 @@@ struct GPUBatch *DRW_cache_object_surfa
  struct GPUBatch *DRW_cache_object_loose_edges_get(struct Object *ob);
  struct GPUBatch **DRW_cache_object_surface_material_get(struct Object *ob,
                                                          struct GPUMaterial **gpumat_array,
 -                                                        uint gpumat_array_len,
 -                                                        char **auto_layer_names,
 -                                                        int **auto_layer_is_srgb,
 -                                                        int *auto_layer_count);
 +                                                        uint gpumat_array_len);
  struct GPUBatch *DRW_cache_object_face_wireframe_get(struct Object *ob);
+ int DRW_cache_object_material_count_get(struct Object *ob);
  
  /* Empties */
  struct GPUBatch *DRW_cache_plain_axes_get(void);



More information about the Bf-blender-cvs mailing list