Commit: a71a3a62677f0b4e11313b231990575566eb9750 Author: Omar Emara Date: Thu Mar 31 16:19:50 2022 +0200 Branches: temp-viewport-compositor-compiler https://developer.blender.org/rBa71a3a62677f0b4e11313b231990575566eb9750
Viewport Compositor: Clamp textures to edges at zero =================================================================== M source/blender/gpu/shaders/compositor/compositor_convert.glsl M source/blender/gpu/shaders/compositor/compositor_split_viewer.glsl M source/blender/gpu/shaders/compositor/material/gpu_shader_compositor_load_input.glsl M source/blender/gpu/shaders/compositor/material/gpu_shader_compositor_texture_utils.glsl =================================================================== diff --git a/source/blender/gpu/shaders/compositor/compositor_convert.glsl b/source/blender/gpu/shaders/compositor/compositor_convert.glsl index e2156ffac86..2196d87eb62 100644 --- a/source/blender/gpu/shaders/compositor/compositor_convert.glsl +++ b/source/blender/gpu/shaders/compositor/compositor_convert.glsl @@ -3,6 +3,6 @@ void main() { ivec2 xy = ivec2(gl_GlobalInvocationID.xy); - vec4 texel = load_texture(input_sampler, xy); + vec4 texel = texture_load(input_sampler, xy); imageStore(output_image, xy, CONVERT_EXPRESSION); } diff --git a/source/blender/gpu/shaders/compositor/compositor_split_viewer.glsl b/source/blender/gpu/shaders/compositor/compositor_split_viewer.glsl index 1b78e094e9f..08988ad4609 100644 --- a/source/blender/gpu/shaders/compositor/compositor_split_viewer.glsl +++ b/source/blender/gpu/shaders/compositor/compositor_split_viewer.glsl @@ -8,6 +8,6 @@ void main() #elif defined(SPLIT_VERTICAL) bool condition = (view_size.y * split_ratio) < xy.y; #endif - vec4 color = condition ? load_texture(first_image, xy) : load_texture(second_image, xy); + vec4 color = condition ? texture_load(first_image, xy) : texture_load(second_image, xy); imageStore(output_image, xy, color); } diff --git a/source/blender/gpu/shaders/compositor/material/gpu_shader_compositor_load_input.glsl b/source/blender/gpu/shaders/compositor/material/gpu_shader_compositor_load_input.glsl index e3fa93c492b..50c4d3ede90 100644 --- a/source/blender/gpu/shaders/compositor/material/gpu_shader_compositor_load_input.glsl +++ b/source/blender/gpu/shaders/compositor/material/gpu_shader_compositor_load_input.glsl @@ -1,17 +1,17 @@ void load_input_float(sampler2D input_sampler, out float value) { ivec2 xy = ivec2(gl_GlobalInvocationID.xy); - value = load_texture(input_sampler, xy).x; + value = texture_load(input_sampler, xy).x; } void load_input_vector(sampler2D input_sampler, out vec3 vector) { ivec2 xy = ivec2(gl_GlobalInvocationID.xy); - vector = load_texture(input_sampler, xy).xyz; + vector = texture_load(input_sampler, xy).xyz; } void load_input_color(sampler2D input_sampler, out vec4 color) { ivec2 xy = ivec2(gl_GlobalInvocationID.xy); - color = load_texture(input_sampler, xy); + color = texture_load(input_sampler, xy); } diff --git a/source/blender/gpu/shaders/compositor/material/gpu_shader_compositor_texture_utils.glsl b/source/blender/gpu/shaders/compositor/material/gpu_shader_compositor_texture_utils.glsl index 3c7ef53618d..49ccc223d44 100644 --- a/source/blender/gpu/shaders/compositor/material/gpu_shader_compositor_texture_utils.glsl +++ b/source/blender/gpu/shaders/compositor/material/gpu_shader_compositor_texture_utils.glsl @@ -5,8 +5,8 @@ ivec2 texture_size(sampler2D sampler) } /* A shorthand for texelFetch with zero LOD and bounded access clamped to border. */ -vec4 load_texture(sampler2D sampler, ivec2 xy) +vec4 texture_load(sampler2D sampler, ivec2 xy) { ivec2 texture_bounds = texture_size(sampler) - ivec2(1); - return texelFetch(sampler, min(xy, texture_bounds), 0); + return texelFetch(sampler, clamp(xy, ivec2(0), texture_bounds), 0); } _______________________________________________ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org List details, subscription details or unsubscribe: https://lists.blender.org/mailman/listinfo/bf-blender-cvs