From 358dfe6ac9f22eb59302f5a04b14b75beadf064c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cl=C3=A9ment=20Foucault?= Date: Fri, 20 Apr 2018 18:10:00 +0200 Subject: DRW: Cleanup: Make DRW_shgroup_uniform_mat4 uniform expect float (*)[4] Same thing for mat3. --- source/blender/draw/engines/clay/clay_engine.c | 2 +- source/blender/draw/engines/eevee/eevee_motion_blur.c | 4 ++-- source/blender/draw/engines/eevee/eevee_volumes.c | 2 +- source/blender/draw/intern/DRW_render.h | 4 ++-- source/blender/draw/intern/draw_manager_data.c | 12 ++++++------ 5 files changed, 12 insertions(+), 12 deletions(-) (limited to 'source/blender/draw') diff --git a/source/blender/draw/engines/clay/clay_engine.c b/source/blender/draw/engines/clay/clay_engine.c index 4976cd01d11..0b0549e0782 100644 --- a/source/blender/draw/engines/clay/clay_engine.c +++ b/source/blender/draw/engines/clay/clay_engine.c @@ -587,7 +587,7 @@ static DRWShadingGroup *CLAY_shgroup_deferred_shading_create(DRWPass *pass, CLAY DRW_shgroup_uniform_block(grp, "material_block", sldata->mat_ubo); DRW_shgroup_uniform_block(grp, "matcaps_block", sldata->matcaps_ubo); /* TODO put in ubo */ - DRW_shgroup_uniform_mat4(grp, "WinMatrix", (float *)g_data->winmat); + DRW_shgroup_uniform_mat4(grp, "WinMatrix", g_data->winmat); DRW_shgroup_uniform_vec2(grp, "invscreenres", DRW_viewport_invert_size_get(), 1); DRW_shgroup_uniform_vec4(grp, "viewvecs[0]", (float *)g_data->viewvecs, 3); DRW_shgroup_uniform_vec4(grp, "ssao_params", g_data->ssao_params, 1); diff --git a/source/blender/draw/engines/eevee/eevee_motion_blur.c b/source/blender/draw/engines/eevee/eevee_motion_blur.c index 4bac8ba2ebd..31f3986a1fb 100644 --- a/source/blender/draw/engines/eevee/eevee_motion_blur.c +++ b/source/blender/draw/engines/eevee/eevee_motion_blur.c @@ -185,8 +185,8 @@ void EEVEE_motion_blur_cache_init(EEVEE_ViewLayerData *UNUSED(sldata), EEVEE_Dat DRWShadingGroup *grp = DRW_shgroup_create(e_data.motion_blur_sh, psl->motion_blur); DRW_shgroup_uniform_int(grp, "samples", &effects->motion_blur_samples, 1); - DRW_shgroup_uniform_mat4(grp, "currInvViewProjMatrix", (float *)effects->current_ndc_to_world); - DRW_shgroup_uniform_mat4(grp, "pastViewProjMatrix", (float *)effects->past_world_to_ndc); + DRW_shgroup_uniform_mat4(grp, "currInvViewProjMatrix", effects->current_ndc_to_world); + DRW_shgroup_uniform_mat4(grp, "pastViewProjMatrix", effects->past_world_to_ndc); DRW_shgroup_uniform_texture_ref(grp, "colorBuffer", &effects->source_buffer); DRW_shgroup_uniform_texture_ref(grp, "depthBuffer", &dtxl->depth); DRW_shgroup_call_add(grp, quad, NULL); diff --git a/source/blender/draw/engines/eevee/eevee_volumes.c b/source/blender/draw/engines/eevee/eevee_volumes.c index 408015addd4..17e7a71a0b3 100644 --- a/source/blender/draw/engines/eevee/eevee_volumes.c +++ b/source/blender/draw/engines/eevee/eevee_volumes.c @@ -478,7 +478,7 @@ void EEVEE_volumes_cache_object_add(EEVEE_ViewLayerData *sldata, EEVEE_Data *ved BKE_mesh_texspace_get_reference((struct Mesh *)ob->data, NULL, &texcoloc, NULL, &texcosize); DRW_shgroup_uniform_block(grp, "common_block", sldata->common_ubo); - DRW_shgroup_uniform_mat4(grp, "volumeObjectMatrix", (float *)ob->imat); + DRW_shgroup_uniform_mat4(grp, "volumeObjectMatrix", ob->imat); DRW_shgroup_uniform_vec3(grp, "volumeOrcoLoc", texcoloc, 1); DRW_shgroup_uniform_vec3(grp, "volumeOrcoSize", texcosize, 1); diff --git a/source/blender/draw/intern/DRW_render.h b/source/blender/draw/intern/DRW_render.h index 1f1c7f322f4..17537e295a6 100644 --- a/source/blender/draw/intern/DRW_render.h +++ b/source/blender/draw/intern/DRW_render.h @@ -377,8 +377,8 @@ void DRW_shgroup_uniform_bool(DRWShadingGroup *shgroup, const char *name, const void DRW_shgroup_uniform_int(DRWShadingGroup *shgroup, const char *name, const int *value, int arraysize); void DRW_shgroup_uniform_ivec2(DRWShadingGroup *shgroup, const char *name, const int *value, int arraysize); void DRW_shgroup_uniform_ivec3(DRWShadingGroup *shgroup, const char *name, const int *value, int arraysize); -void DRW_shgroup_uniform_mat3(DRWShadingGroup *shgroup, const char *name, const float *value); -void DRW_shgroup_uniform_mat4(DRWShadingGroup *shgroup, const char *name, const float *value); +void DRW_shgroup_uniform_mat3(DRWShadingGroup *shgroup, const char *name, const float (*value)[3]); +void DRW_shgroup_uniform_mat4(DRWShadingGroup *shgroup, const char *name, const float (*value)[4]); /* Store value instead of referencing it. */ void DRW_shgroup_uniform_int_copy(DRWShadingGroup *shgroup, const char *name, const int value); diff --git a/source/blender/draw/intern/draw_manager_data.c b/source/blender/draw/intern/draw_manager_data.c index 74f39cf9073..31f6108f7e0 100644 --- a/source/blender/draw/intern/draw_manager_data.c +++ b/source/blender/draw/intern/draw_manager_data.c @@ -201,14 +201,14 @@ void DRW_shgroup_uniform_ivec3(DRWShadingGroup *shgroup, const char *name, const drw_shgroup_uniform(shgroup, name, DRW_UNIFORM_INT, value, 3, arraysize); } -void DRW_shgroup_uniform_mat3(DRWShadingGroup *shgroup, const char *name, const float *value) +void DRW_shgroup_uniform_mat3(DRWShadingGroup *shgroup, const char *name, const float (*value)[3]) { - drw_shgroup_uniform(shgroup, name, DRW_UNIFORM_FLOAT, value, 9, 1); + drw_shgroup_uniform(shgroup, name, DRW_UNIFORM_FLOAT, (float *)value, 9, 1); } -void DRW_shgroup_uniform_mat4(DRWShadingGroup *shgroup, const char *name, const float *value) +void DRW_shgroup_uniform_mat4(DRWShadingGroup *shgroup, const char *name, const float (*value)[4]) { - drw_shgroup_uniform(shgroup, name, DRW_UNIFORM_FLOAT, value, 16, 1); + drw_shgroup_uniform(shgroup, name, DRW_UNIFORM_FLOAT, (float *)value, 16, 1); } /* Stores the int instead of a pointer. */ @@ -637,10 +637,10 @@ static DRWShadingGroup *drw_shgroup_material_inputs(DRWShadingGroup *grp, struct /* Should already be in the material ubo. */ break; case GPU_MAT3: - DRW_shgroup_uniform_mat3(grp, input->shadername, (float *)input->dynamicvec); + DRW_shgroup_uniform_mat3(grp, input->shadername, (float (*)[3])input->dynamicvec); break; case GPU_MAT4: - DRW_shgroup_uniform_mat4(grp, input->shadername, (float *)input->dynamicvec); + DRW_shgroup_uniform_mat4(grp, input->shadername, (float (*)[4])input->dynamicvec); break; default: break; -- cgit v1.2.3