Commit: 7edd8a7738481b3d4f0720a173dca2a1853996d6
Author: Clément Foucault
Date:   Thu Aug 20 23:09:37 2020 +0200
Branches: master
https://developer.blender.org/rB7edd8a7738481b3d4f0720a173dca2a1853996d6

GPUUniformBuf: Rename struct and change API a bit

This follows the GPU module naming of other buffers.
We pass name to distinguish each GPUUniformBuf in debug mode.
Also remove DRW_uniform_buffer interface.

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

M       source/blender/draw/engines/eevee/eevee_data.c
M       source/blender/draw/engines/eevee/eevee_engine.c
M       source/blender/draw/engines/eevee/eevee_lightcache.c
M       source/blender/draw/engines/eevee/eevee_lightprobes.c
M       source/blender/draw/engines/eevee/eevee_lights.c
M       source/blender/draw/engines/eevee/eevee_lookdev.c
M       source/blender/draw/engines/eevee/eevee_materials.c
M       source/blender/draw/engines/eevee/eevee_private.h
M       source/blender/draw/engines/eevee/eevee_render.c
M       source/blender/draw/engines/eevee/eevee_shadows.c
M       source/blender/draw/engines/eevee/eevee_subsurface.c
M       source/blender/draw/engines/gpencil/gpencil_draw_data.c
M       source/blender/draw/engines/gpencil/gpencil_engine.c
M       source/blender/draw/engines/gpencil/gpencil_engine.h
M       source/blender/draw/engines/workbench/workbench_data.c
M       source/blender/draw/engines/workbench/workbench_effect_cavity.c
M       source/blender/draw/engines/workbench/workbench_effect_dof.c
M       source/blender/draw/engines/workbench/workbench_materials.c
M       source/blender/draw/engines/workbench/workbench_private.h
M       source/blender/draw/intern/DRW_render.h
M       source/blender/draw/intern/draw_common.c
M       source/blender/draw/intern/draw_common.h
M       source/blender/draw/intern/draw_manager.c
M       source/blender/draw/intern/draw_manager.h
M       source/blender/draw/intern/draw_manager_data.c
M       source/blender/draw/intern/draw_manager_exec.c
M       source/blender/gpu/CMakeLists.txt
M       source/blender/gpu/GPU_material.h
M       source/blender/gpu/GPU_shader.h
R058    source/blender/gpu/GPU_uniformbuffer.h  
source/blender/gpu/GPU_uniform_buffer.h
M       source/blender/gpu/GPU_viewport.h
M       source/blender/gpu/intern/gpu_codegen.c
M       source/blender/gpu/intern/gpu_material.c
M       source/blender/gpu/intern/gpu_node_graph.c
M       source/blender/gpu/intern/gpu_shader.cc
M       source/blender/gpu/intern/gpu_shader_builtin.c
R086    source/blender/gpu/intern/gpu_uniformbuffer.cc  
source/blender/gpu/intern/gpu_uniform_buffer.cc
M       source/blender/gpu/intern/gpu_viewport.c
M       source/blender/nodes/shader/node_shader_util.h
M       source/blender/nodes/shader/nodes/node_shader_rgb.c
M       source/blender/nodes/shader/nodes/node_shader_value.cc

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

diff --git a/source/blender/draw/engines/eevee/eevee_data.c 
b/source/blender/draw/engines/eevee/eevee_data.c
index e18c43fc643..5c4ee015c86 100644
--- a/source/blender/draw/engines/eevee/eevee_data.c
+++ b/source/blender/draw/engines/eevee/eevee_data.c
@@ -254,7 +254,7 @@ EEVEE_ViewLayerData *EEVEE_view_layer_data_get(void)
 
 static void eevee_view_layer_init(EEVEE_ViewLayerData *sldata)
 {
-  sldata->common_ubo = DRW_uniformbuffer_create(sizeof(sldata->common_data), 
NULL);
+  sldata->common_ubo = GPU_uniformbuf_create(sizeof(sldata->common_data));
 }
 
 EEVEE_ViewLayerData *EEVEE_view_layer_data_ensure_ex(struct ViewLayer 
*view_layer)
diff --git a/source/blender/draw/engines/eevee/eevee_engine.c 
b/source/blender/draw/engines/eevee/eevee_engine.c
index 72f008ea66a..6ab267ceb03 100644
--- a/source/blender/draw/engines/eevee/eevee_engine.c
+++ b/source/blender/draw/engines/eevee/eevee_engine.c
@@ -267,7 +267,7 @@ static void eevee_draw_scene(void *vedata)
     /* Set ray type. */
     sldata->common_data.ray_type = EEVEE_RAY_CAMERA;
     sldata->common_data.ray_depth = 0.0f;
-    DRW_uniformbuffer_update(sldata->common_ubo, &sldata->common_data);
+    GPU_uniformbuf_update(sldata->common_ubo, &sldata->common_data);
 
     GPU_framebuffer_bind(fbl->main_fb);
     eGPUFrameBufferBits clear_bits = GPU_DEPTH_BIT;
diff --git a/source/blender/draw/engines/eevee/eevee_lightcache.c 
b/source/blender/draw/engines/eevee/eevee_lightcache.c
index a785d27c2db..088a08fb51a 100644
--- a/source/blender/draw/engines/eevee/eevee_lightcache.c
+++ b/source/blender/draw/engines/eevee/eevee_lightcache.c
@@ -942,7 +942,7 @@ static void eevee_lightbake_render_world_sample(void *ved, 
void *user_data)
 
   sldata->common_data.ray_type = EEVEE_RAY_GLOSSY;
   sldata->common_data.ray_depth = 1;
-  DRW_uniformbuffer_update(sldata->common_ubo, &sldata->common_data);
+  GPU_uniformbuf_update(sldata->common_ubo, &sldata->common_data);
   EEVEE_lightbake_render_world(sldata, vedata, lbake->rt_fb);
   EEVEE_lightbake_filter_glossy(sldata,
                                 vedata,
@@ -956,7 +956,7 @@ static void eevee_lightbake_render_world_sample(void *ved, 
void *user_data)
 
   sldata->common_data.ray_type = EEVEE_RAY_DIFFUSE;
   sldata->common_data.ray_depth = 1;
-  DRW_uniformbuffer_update(sldata->common_ubo, &sldata->common_data);
+  GPU_uniformbuf_update(sldata->common_ubo, &sldata->common_data);
   EEVEE_lightbake_render_world(sldata, vedata, lbake->rt_fb);
   EEVEE_lightbake_filter_diffuse(sldata, vedata, lbake->rt_color, 
lbake->store_fb, 0, 1.0f);
 
@@ -1079,7 +1079,7 @@ static void eevee_lightbake_render_grid_sample(void *ved, 
void *user_data)
   if (lbake->bounce_curr == 0) {
     common_data->prb_num_render_grid = 0;
   }
-  DRW_uniformbuffer_update(sldata->common_ubo, &sldata->common_data);
+  GPU_uniformbuf_update(sldata->common_ubo, &sldata->common_data);
 
   EEVEE_lightbake_render_scene(sldata, vedata, lbake->rt_fb, pos, 
prb->clipsta, prb->clipend);
 
@@ -1145,7 +1145,7 @@ static void eevee_lightbake_render_probe_sample(void 
*ved, void *user_data)
   common_data->prb_num_render_cube = 0;
   common_data->ray_type = EEVEE_RAY_GLOSSY;
   common_data->ray_depth = 1;
-  DRW_uniformbuffer_update(sldata->common_ubo, &sldata->common_data);
+  GPU_uniformbuf_update(sldata->common_ubo, &sldata->common_data);
 
   EEVEE_lightbake_render_scene(
       sldata, vedata, lbake->rt_fb, eprobe->position, prb->clipsta, 
prb->clipend);
@@ -1430,7 +1430,7 @@ void 
EEVEE_lightbake_update_world_quick(EEVEE_ViewLayerData *sldata,
 
   sldata->common_data.ray_type = EEVEE_RAY_GLOSSY;
   sldata->common_data.ray_depth = 1;
-  DRW_uniformbuffer_update(sldata->common_ubo, &sldata->common_data);
+  GPU_uniformbuf_update(sldata->common_ubo, &sldata->common_data);
   EEVEE_lightbake_render_world(sldata, vedata, lbake.rt_fb);
   EEVEE_lightbake_filter_glossy(sldata,
                                 vedata,
@@ -1444,7 +1444,7 @@ void 
EEVEE_lightbake_update_world_quick(EEVEE_ViewLayerData *sldata,
 
   sldata->common_data.ray_type = EEVEE_RAY_DIFFUSE;
   sldata->common_data.ray_depth = 1;
-  DRW_uniformbuffer_update(sldata->common_ubo, &sldata->common_data);
+  GPU_uniformbuf_update(sldata->common_ubo, &sldata->common_data);
   EEVEE_lightbake_render_world(sldata, vedata, lbake.rt_fb);
   EEVEE_lightbake_filter_diffuse(sldata, vedata, lbake.rt_color, 
lbake.store_fb, 0, 1.0f);
 
diff --git a/source/blender/draw/engines/eevee/eevee_lightprobes.c 
b/source/blender/draw/engines/eevee/eevee_lightprobes.c
index 0f4a9dc79b6..63cc07c321e 100644
--- a/source/blender/draw/engines/eevee/eevee_lightprobes.c
+++ b/source/blender/draw/engines/eevee/eevee_lightprobes.c
@@ -39,6 +39,7 @@
 #include "GPU_extensions.h"
 #include "GPU_material.h"
 #include "GPU_texture.h"
+#include "GPU_uniform_buffer.h"
 
 #include "DEG_depsgraph_query.h"
 
@@ -203,10 +204,9 @@ void EEVEE_lightprobes_init(EEVEE_ViewLayerData *sldata, 
EEVEE_Data *vedata)
 
   if (!sldata->probes) {
     sldata->probes = MEM_callocN(sizeof(EEVEE_LightProbesInfo), 
"EEVEE_LightProbesInfo");
-    sldata->probe_ubo = DRW_uniformbuffer_create(sizeof(EEVEE_LightProbe) * 
MAX_PROBE, NULL);
-    sldata->grid_ubo = DRW_uniformbuffer_create(sizeof(EEVEE_LightGrid) * 
MAX_GRID, NULL);
-    sldata->planar_ubo = 
DRW_uniformbuffer_create(sizeof(EEVEE_PlanarReflection) * MAX_PLANAR,
-                                                  NULL);
+    sldata->probe_ubo = GPU_uniformbuf_create(sizeof(EEVEE_LightProbe) * 
MAX_PROBE);
+    sldata->grid_ubo = GPU_uniformbuf_create(sizeof(EEVEE_LightGrid) * 
MAX_GRID);
+    sldata->planar_ubo = GPU_uniformbuf_create(sizeof(EEVEE_PlanarReflection) 
* MAX_PLANAR);
   }
 
   common_data->prb_num_planar = 0;
@@ -724,8 +724,8 @@ void EEVEE_lightprobes_cache_finish(EEVEE_ViewLayerData 
*sldata, EEVEE_Data *ved
 
   eevee_lightprobes_extract_from_cache(sldata->probes, light_cache);
 
-  DRW_uniformbuffer_update(sldata->probe_ubo, &sldata->probes->probe_data);
-  DRW_uniformbuffer_update(sldata->grid_ubo, &sldata->probes->grid_data);
+  GPU_uniformbuf_update(sldata->probe_ubo, &sldata->probes->probe_data);
+  GPU_uniformbuf_update(sldata->grid_ubo, &sldata->probes->grid_data);
 
   /* For shading, save max level of the octahedron map */
   sldata->common_data.prb_lod_cube_max = (float)light_cache->mips_len;
@@ -1241,7 +1241,7 @@ void EEVEE_lightprobes_refresh_planar(EEVEE_ViewLayerData 
*sldata, EEVEE_Data *v
 
   common_data->ray_type = EEVEE_RAY_GLOSSY;
   common_data->ray_depth = 1.0f;
-  DRW_uniformbuffer_update(sldata->common_ubo, &sldata->common_data);
+  GPU_uniformbuf_update(sldata->common_ubo, &sldata->common_data);
 
   /* Rendering happens here! */
   eevee_lightbake_render_scene_to_planars(sldata, vedata);
@@ -1249,7 +1249,7 @@ void EEVEE_lightprobes_refresh_planar(EEVEE_ViewLayerData 
*sldata, EEVEE_Data *v
   /* Make sure no additional visibility check runs after this. */
   pinfo->vis_data.collection = NULL;
 
-  DRW_uniformbuffer_update(sldata->planar_ubo, &sldata->probes->planar_data);
+  GPU_uniformbuf_update(sldata->planar_ubo, &sldata->probes->planar_data);
 
   /* Restore */
   common_data->prb_num_planar = pinfo->num_planar;
diff --git a/source/blender/draw/engines/eevee/eevee_lights.c 
b/source/blender/draw/engines/eevee/eevee_lights.c
index c6e8bac0949..b7112c07cab 100644
--- a/source/blender/draw/engines/eevee/eevee_lights.c
+++ b/source/blender/draw/engines/eevee/eevee_lights.c
@@ -214,5 +214,5 @@ void EEVEE_lights_cache_finish(EEVEE_ViewLayerData *sldata, 
EEVEE_Data *UNUSED(v
 
   sldata->common_data.la_num_light = linfo->num_light;
 
-  DRW_uniformbuffer_update(sldata->light_ubo, &linfo->light_data);
+  GPU_uniformbuf_update(sldata->light_ubo, &linfo->light_data);
 }
diff --git a/source/blender/draw/engines/eevee/eevee_lookdev.c 
b/source/blender/draw/engines/eevee/eevee_lookdev.c
index f79d90500bd..6253203bab6 100644
--- a/source/blender/draw/engines/eevee/eevee_lookdev.c
+++ b/source/blender/draw/engines/eevee/eevee_lookdev.c
@@ -275,7 +275,7 @@ void EEVEE_lookdev_draw(EEVEE_Data *vedata)
     common->ao_dist = 0.0f;
     common->ao_factor = 0.0f;
     common->ao_settings = 0.0f;
-    DRW_uniformbuffer_update(sldata->common_ubo, common);
+    GPU_uniformbuf_update(sldata->common_ubo, common);
 
     /* override matrices */
     float winmat[4][4], viewmat[4][4];
diff --git a/source/blender/draw/engines/eevee/eevee_materials.c 
b/source/blender/draw/engines/eevee/eevee_materials.c
index fb07208be47..b6e20416dfb 100644
--- a/source/blender/draw/engines/eevee/eevee_materials.c
+++ b/source/blender/draw/engines/eevee/eevee_materials.c
@@ -243,33 +243,34 @@ void EEVEE_materials_init(EEVEE_ViewLayerData *sldata,
   {
     /* Create RenderPass UBO */
     if (sldata->renderpass_ubo.combined == NULL) {
-      sldata->renderpass_ubo.combined = DRW_uniformbuffer_create(
-          sizeof(EEVEE_RenderPassData),
-          &(const EEVEE_RenderPassData){true, true, true, true, true, false, 
false});
-
-      sldata->renderpass_ubo.diff_color = DRW_uniformbuffer_create(
-          sizeof(EEVEE_RenderPassData),
-          &(const EEVEE_RenderPassData){true, false, false, false, false, 
true, false});
-
-      sldata->renderpass_ubo.diff_light = DRW_uniformbuffer_create(
-          sizeof(EEVEE_RenderPassData),
-          &(const EEVEE_RenderPassData){true, true, false, false, false, 
false, false});
-
-      sldata->renderpass_ubo.spec_color = DRW_uniformbuffer_create(
-          sizeof(EEVEE_RenderPassData),
-          &(const EEVEE_RenderPassData){false, false, true, false, false, 
false, false});
-
-      sldata->renderpass_ubo.spec_light = DRW_uniformbuffer_create(
-          sizeof(EEVEE_RenderPassData),
-          &(const EEVEE_RenderPassData){false, false, true, true, false, 
false, false});
-
-      sldata->renderpass_ubo.emit = DRW_uniformbuffer_create(
-          sizeof(EEVEE_RenderPassData),
-          &(const EEVEE_RenderPassData){false, false, false, false, true, 
false, false});
-
-      sldata->renderpass_ubo.environment = DRW_uniformbuffer_create(
-          sizeof(EEVEE_RenderPassData),
-          &(const EEVEE_RenderPassData){true, true, true, true, true, false, 
true});
+      EEVEE_RenderPassData data;
+      data = (EEVEE_R

@@ Diff output truncated at 10240 characters. @@

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
https://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to