8 .local_group_size(16, 16)
9 .push_constant(Type::BOOL,
"include_all_inner_edges")
10 .push_constant(Type::BOOL,
"include_edges_of_image")
11 .sampler(0, ImageType::FLOAT_2D,
"inner_mask_tx")
12 .sampler(1, ImageType::FLOAT_2D,
"outer_mask_tx")
13 .image(0,
GPU_RG16I, Qualifier::WRITE, ImageType::INT_2D,
"inner_boundary_img")
14 .image(1,
GPU_RG16I, Qualifier::WRITE, ImageType::INT_2D,
"outer_boundary_img")
15 .compute_source(
"compositor_double_edge_mask_compute_boundary.glsl")
16 .do_static_compilation(
true);
19 .local_group_size(16, 16)
20 .sampler(0, ImageType::FLOAT_2D,
"inner_mask_tx")
21 .sampler(1, ImageType::FLOAT_2D,
"outer_mask_tx")
22 .sampler(2, ImageType::INT_2D,
"flooded_inner_boundary_tx")
23 .sampler(3, ImageType::INT_2D,
"flooded_outer_boundary_tx")
24 .image(0,
GPU_R16F, Qualifier::WRITE, ImageType::FLOAT_2D,
"output_img")
25 .compute_source(
"compositor_double_edge_mask_compute_gradient.glsl")
26 .do_static_compilation(
true);
local_group_size(16, 16) .push_constant(Type inner_mask_tx flooded_inner_boundary_tx GPU_R16F
#define GPU_SHADER_CREATE_INFO(_info)