Blender V5.0
compositor_cryptomatte_infos.hh
Go to the documentation of this file.
1/* SPDX-FileCopyrightText: 2023 Blender Authors
2 *
3 * SPDX-License-Identifier: GPL-2.0-or-later */
4
6
7using namespace blender::gpu::shader;
8
9GPU_SHADER_CREATE_INFO(compositor_cryptomatte_pick)
10LOCAL_GROUP_SIZE(16, 16)
11PUSH_CONSTANT(int2, lower_bound)
12SAMPLER(0, sampler2D, first_layer_tx)
13IMAGE(0, SFLOAT_32_32_32_32, write, image2D, output_img)
14COMPUTE_SOURCE("compositor_cryptomatte_pick.glsl")
17
18GPU_SHADER_CREATE_INFO(compositor_cryptomatte_matte)
19LOCAL_GROUP_SIZE(16, 16)
20PUSH_CONSTANT(int2, lower_bound)
21PUSH_CONSTANT(int, identifiers_count)
22PUSH_CONSTANT_ARRAY(float, identifiers, 32)
23SAMPLER(0, sampler2D, layer_tx)
24IMAGE(0, SFLOAT_16, read_write, image2D, matte_img)
25COMPUTE_SOURCE("compositor_cryptomatte_matte.glsl")
28
29GPU_SHADER_CREATE_INFO(compositor_cryptomatte_image)
30LOCAL_GROUP_SIZE(16, 16)
31SAMPLER(0, sampler2D, input_tx)
32SAMPLER(1, sampler2D, matte_tx)
33IMAGE(0, SFLOAT_16_16_16_16, write, image2D, output_img)
34COMPUTE_SOURCE("compositor_cryptomatte_image.glsl")
#define GPU_SHADER_CREATE_INFO(_info)
#define GPU_SHADER_CREATE_END()
#define PUSH_CONSTANT_ARRAY(type, name, array_size)
#define SAMPLER(slot, type, name)
#define PUSH_CONSTANT(type, name)
#define LOCAL_GROUP_SIZE(...)
#define IMAGE(slot, format, qualifiers, type, name)
#define COMPUTE_SOURCE(filename)
#define DO_STATIC_COMPILATION()
ImageBase< float, 2 > image2D
SamplerBase< float, 2 > sampler2D