| #version 450 |
| #extension GL_QCOM_image_processing : require |
| |
| precision highp float; |
| |
| // fragment shader inputs and outputs |
| layout (location = 0) in vec4 v_texcoord; |
| |
| layout (location = 0) out vec4 fragColor; |
| |
| // fragment shader resources |
| layout(set = 0, binding = 0) uniform texture2DArray tex2DArray_weights; |
| layout(set = 0, binding = 1) uniform texture2D tex2D_src1; |
| layout(set = 0, binding = 2) uniform texture2D tex2D_src2; |
| layout(set = 0, binding = 3) uniform sampler samp; |
| layout(set = 0, binding = 4) uniform sampler2D tex_samp; |
| layout(set = 0, binding = 5) uniform sampler2DArray tex_samp_array; |
| |
| void main() |
| { |
| |
| fragColor = textureWeightedQCOM( |
| sampler2D(tex2D_src1, samp), // source texture |
| v_texcoord.xy, // tex coords |
| sampler2DArray(tex2DArray_weights, samp)); // weight texture |
| fragColor = textureWeightedQCOM( |
| tex_samp, // combined source texture |
| v_texcoord.xy, // tex coords |
| tex_samp_array); // combined weight texture |
| |
| } |
| |