diff options
author | Jason Fielder <jason_apple> | 2022-09-22 18:52:44 +0300 |
---|---|---|
committer | Clément Foucault <foucault.clem@gmail.com> | 2022-09-22 18:53:56 +0300 |
commit | 18b45aabf91ad0a407e8c7cd16c5503e7a99d6fa (patch) | |
tree | c4b5a1db3ec5bab9f1d9f1038d131f398046506a /source/blender/draw/engines/overlay/overlay_extra.cc | |
parent | 1514e1a5b7e15ec0c11cd40c2b9389982bd5d00e (diff) |
Metal: GLSL shader compatibility changes for global uniform and interface name collision.
For the Metal shader translation support for shader-global uniforms are remapped via macro's, and in such cases where a uniform name matches a vertex attribute name, compilation errors will occur due to this injected syntax being incompatible with the immediate code.
Also adding source-level function interface alternatives where sized arrays are passed in. These are not supported directly in Metal shading language and are instead handled as pointers. These pointers require explicit address-space qualifiers in some cases, if device/constant address space memory is passed into the function.
Ref T96261
Reviewed By: fclem
Differential Revision: https://developer.blender.org/D15898
Diffstat (limited to 'source/blender/draw/engines/overlay/overlay_extra.cc')
-rw-r--r-- | source/blender/draw/engines/overlay/overlay_extra.cc | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/source/blender/draw/engines/overlay/overlay_extra.cc b/source/blender/draw/engines/overlay/overlay_extra.cc index 3e9855720b3..f0665f7e90f 100644 --- a/source/blender/draw/engines/overlay/overlay_extra.cc +++ b/source/blender/draw/engines/overlay/overlay_extra.cc @@ -195,23 +195,23 @@ void OVERLAY_extra_cache_init(OVERLAY_Data *vedata) DRW_shgroup_uniform_block(grp, "globalsBlock", G_draw.block_ubo); grp_sub = DRW_shgroup_create_sub(grp); - DRW_shgroup_uniform_vec4_copy(grp_sub, "color", G_draw.block.color_active); + DRW_shgroup_uniform_vec4_copy(grp_sub, "ucolor", G_draw.block.color_active); cb->center_active = BUF_POINT(grp_sub, format); grp_sub = DRW_shgroup_create_sub(grp); - DRW_shgroup_uniform_vec4_copy(grp_sub, "color", G_draw.block.color_select); + DRW_shgroup_uniform_vec4_copy(grp_sub, "ucolor", G_draw.block.color_select); cb->center_selected = BUF_POINT(grp_sub, format); grp_sub = DRW_shgroup_create_sub(grp); - DRW_shgroup_uniform_vec4_copy(grp_sub, "color", G_draw.block.color_deselect); + DRW_shgroup_uniform_vec4_copy(grp_sub, "ucolor", G_draw.block.color_deselect); cb->center_deselected = BUF_POINT(grp_sub, format); grp_sub = DRW_shgroup_create_sub(grp); - DRW_shgroup_uniform_vec4_copy(grp_sub, "color", G_draw.block.color_library_select); + DRW_shgroup_uniform_vec4_copy(grp_sub, "ucolor", G_draw.block.color_library_select); cb->center_selected_lib = BUF_POINT(grp_sub, format); grp_sub = DRW_shgroup_create_sub(grp); - DRW_shgroup_uniform_vec4_copy(grp_sub, "color", G_draw.block.color_library); + DRW_shgroup_uniform_vec4_copy(grp_sub, "ucolor", G_draw.block.color_library); cb->center_deselected_lib = BUF_POINT(grp_sub, format); } } |