Files
test/source/blender/compositor/shaders/compositor_write_output.glsl
Clément Foucault 3b3a5731df GPU: Shader: Change vector and matrix type to use blender convention
This unify the C++ and GLSL codebase style.

The GLSL types are still in the backend compatibility
layers to support python shaders. However, the C++
shader compilation layer doesn't have them to enforce
correct type usage.

Note that this is going to break pretty much all PRs
in flight that targets shader code.

Rel #137261

Pull Request: https://projects.blender.org/blender/blender/pulls/137369
2025-04-14 13:46:41 +02:00

28 lines
738 B
GLSL

/* SPDX-FileCopyrightText: 2023 Blender Authors
*
* SPDX-License-Identifier: GPL-2.0-or-later */
#include "gpu_shader_compositor_texture_utilities.glsl"
void main()
{
int2 texel = int2(gl_GlobalInvocationID.xy);
int2 output_texel = texel + lower_bound;
if (any(greaterThan(output_texel, upper_bound))) {
return;
}
float4 input_color = texture_load(input_tx, texel);
#if defined(DIRECT_OUTPUT)
float4 output_color = input_color;
#elif defined(OPAQUE_OUTPUT)
float4 output_color = float4(input_color.rgb, 1.0f);
#elif defined(ALPHA_OUTPUT)
float alpha = texture_load(alpha_tx, texel).x;
float4 output_color = float4(input_color.rgb, alpha);
#endif
imageStore(output_img, texel + lower_bound, output_color);
}