From 90a0afd18f080088cac068d92810fb630225d6be Mon Sep 17 00:00:00 2001 From: ladevieq Date: Wed, 25 Jan 2023 23:06:30 +0100 Subject: Working compute api with uniforms --- shaders/test.comp | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) (limited to 'shaders/test.comp') diff --git a/shaders/test.comp b/shaders/test.comp index 541cb93..244533e 100644 --- a/shaders/test.comp +++ b/shaders/test.comp @@ -6,13 +6,18 @@ layout(local_size_x = 8, local_size_y = 8, local_size_z = 1) in; layout(set = 0, binding = 0) uniform sampler samplers[]; layout(set = 0, binding = 1) uniform texture2D textures[]; layout(set = 0, binding = 2, rgba32f) uniform image2D images[]; +layout(set = 1, binding = 0) uniform parameters { + uint input_id1; + uint input_id2; + uint output_id; +} params; void main() { ivec2 coords = ivec2(gl_GlobalInvocationID.xy); float t = 0.5; - vec3 color_1 = imageLoad(images[nonuniformEXT(0)], coords).xyz; - vec3 color_2 = imageLoad(images[nonuniformEXT(1)], coords).xyz; + vec3 color_1 = imageLoad(images[nonuniformEXT(params.input_id1)], coords).xyz; + vec3 color_2 = imageLoad(images[nonuniformEXT(params.input_id2)], coords).xyz; vec3 out_color = (t * color_1) + ((1.0 - t) * color_2); - imageStore(images[nonuniformEXT(0)], coords, vec4(out_color, 1.0)); + imageStore(images[nonuniformEXT(params.output_id)], coords, vec4(out_color, 1.0)); } -- cgit v1.3