14 .geometry_layout(PrimitiveIn::TRIANGLES, PrimitiveOut::TRIANGLE_STRIP, 3)
15 .geometry_source(
"basic_conservative_depth_geom.glsl");
24 .vertex_in(0, Type::VEC3,
"pos")
25 .vertex_source(
"basic_depth_vert.glsl")
26 .additional_info(
"draw_mesh");
29 .vertex_source(
"basic_depth_pointcloud_vert.glsl")
30 .additional_info(
"draw_pointcloud");
33 .vertex_source(
"basic_depth_curves_vert.glsl")
34 .additional_info(
"draw_hair");
38 .vertex_in(0, Type::VEC3,
"pos")
39 .vertex_source(
"basic_depth_vert_conservative_no_geom.glsl")
40 .additional_info(
"draw_mesh");
43 .define(
"CONSERVATIVE_RASTER")
44 .vertex_source(
"basic_depth_pointcloud_vert.glsl")
45 .additional_info(
"draw_pointcloud");
53#define BASIC_FINAL_VARIATION(name, ...) \
54 GPU_SHADER_CREATE_INFO(name).additional_info(__VA_ARGS__).do_static_compilation(true);
56#define BASIC_CLIPPING_VARIATIONS(prefix, ...) \
57 BASIC_FINAL_VARIATION(prefix##_clipped, "drw_clipped", __VA_ARGS__) \
58 BASIC_FINAL_VARIATION(prefix, __VA_ARGS__)
60#define BASIC_CONSERVATIVE_VARIATIONS(prefix, ...) \
61 BASIC_CLIPPING_VARIATIONS(prefix##_conservative, "basic_conservative", __VA_ARGS__) \
62 BASIC_CLIPPING_VARIATIONS(prefix##_conservative_no_geom, __VA_ARGS__) \
63 BASIC_CLIPPING_VARIATIONS(prefix, __VA_ARGS__)
65#define BASIC_OBTYPE_VARIATIONS(prefix, ...) \
66 BASIC_CONSERVATIVE_VARIATIONS(prefix##_mesh, "basic_mesh", __VA_ARGS__) \
67 BASIC_CONSERVATIVE_VARIATIONS(prefix##_pointcloud, "basic_pointcloud", __VA_ARGS__) \
68 BASIC_CLIPPING_VARIATIONS(prefix##_curves, "basic_curves", __VA_ARGS__)
#define BASIC_OBTYPE_VARIATIONS(prefix,...)
#define GPU_SHADER_CREATE_INFO(_info)