8 .local_group_size(16, 16)
9 .push_constant(Type::IVEC2,
"domain_size")
10 .push_constant(Type::VEC2,
"location")
11 .push_constant(Type::VEC2,
"size")
12 .push_constant(Type::FLOAT,
"cos_angle")
13 .push_constant(Type::FLOAT,
"sin_angle")
14 .sampler(0, ImageType::FLOAT_2D,
"base_mask_tx")
15 .sampler(1, ImageType::FLOAT_2D,
"mask_value_tx")
16 .image(0,
GPU_R16F, Qualifier::WRITE, ImageType::FLOAT_2D,
"output_mask_img")
17 .compute_source(
"compositor_box_mask.glsl");
20 .additional_info(
"compositor_box_mask_shared")
21 .define(
"CMP_NODE_MASKTYPE_ADD")
22 .do_static_compilation(
true);
25 .additional_info(
"compositor_box_mask_shared")
26 .define(
"CMP_NODE_MASKTYPE_SUBTRACT")
27 .do_static_compilation(
true);
30 .additional_info(
"compositor_box_mask_shared")
31 .define(
"CMP_NODE_MASKTYPE_MULTIPLY")
32 .do_static_compilation(
true);
35 .additional_info(
"compositor_box_mask_shared")
36 .define(
"CMP_NODE_MASKTYPE_NOT")
37 .do_static_compilation(
true);
#define GPU_SHADER_CREATE_INFO(_info)