17# define DYNAMIC_PASS_SELECTION
20# define DOUBLE_MANIFOLD
60DEFINE(
"DYNAMIC_PASS_SELECTION")
93#define WORKBENCH_SHADOW_VARIATIONS(common, prefix, suffix, ...) \
94 GPU_SHADER_CREATE_INFO(prefix##_pass_manifold_no_caps##suffix) \
95 DEFINE("SHADOW_PASS") \
96 VERTEX_SOURCE("workbench_shadow_vert.glsl") \
97 ADDITIONAL_INFO_EXPAND(common, __VA_ARGS__) \
98 DO_STATIC_COMPILATION() \
99 GPU_SHADER_CREATE_END() \
101 GPU_SHADER_CREATE_INFO(prefix##_pass_no_manifold_no_caps##suffix) \
102 DEFINE("SHADOW_PASS") \
103 DEFINE("DOUBLE_MANIFOLD") \
104 VERTEX_SOURCE("workbench_shadow_vert.glsl") \
105 ADDITIONAL_INFO_EXPAND(common, __VA_ARGS__) \
106 DO_STATIC_COMPILATION() \
107 GPU_SHADER_CREATE_END() \
109 GPU_SHADER_CREATE_INFO(prefix##_fail_manifold_caps##suffix) \
110 DEFINE("SHADOW_FAIL") \
111 VERTEX_SOURCE("workbench_shadow_caps_vert.glsl") \
112 ADDITIONAL_INFO_EXPAND(common, __VA_ARGS__) \
113 DO_STATIC_COMPILATION() \
114 GPU_SHADER_CREATE_END() \
116 GPU_SHADER_CREATE_INFO(prefix##_fail_manifold_no_caps##suffix) \
117 DEFINE("SHADOW_FAIL") \
118 VERTEX_SOURCE("workbench_shadow_vert.glsl") \
119 ADDITIONAL_INFO_EXPAND(common, __VA_ARGS__) \
120 DO_STATIC_COMPILATION() \
121 GPU_SHADER_CREATE_END() \
123 GPU_SHADER_CREATE_INFO(prefix##_fail_no_manifold_caps##suffix) \
124 DEFINE("SHADOW_FAIL") \
125 DEFINE("DOUBLE_MANIFOLD") \
126 VERTEX_SOURCE("workbench_shadow_caps_vert.glsl") \
127 ADDITIONAL_INFO_EXPAND(common, __VA_ARGS__) \
128 DO_STATIC_COMPILATION() \
129 GPU_SHADER_CREATE_END() \
131 GPU_SHADER_CREATE_INFO(prefix##_fail_no_manifold_no_caps##suffix) \
132 DEFINE("SHADOW_FAIL") \
133 DEFINE("DOUBLE_MANIFOLD") \
134 VERTEX_SOURCE("workbench_shadow_vert.glsl") \
135 ADDITIONAL_INFO_EXPAND(common, __VA_ARGS__) \
136 DO_STATIC_COMPILATION() \
137 GPU_SHADER_CREATE_END()
144 workbench_shadow_debug)
#define DRW_VISIBILITY_GROUP_SIZE
#define GPU_SHADER_CREATE_INFO(_info)
#define GPU_SHADER_CREATE_END()
#define TYPEDEF_SOURCE(filename)
#define UNIFORM_BUF(slot, type_name, name)
#define FRAGMENT_SOURCE(filename)
#define STORAGE_BUF_FREQ(slot, qualifiers, type_name, name, freq)
#define ADDITIONAL_INFO(info_name)
#define PUSH_CONSTANT(type, name)
#define FRAGMENT_OUT(slot, type, name)
#define STORAGE_BUF(slot, qualifiers, type_name, name)
#define LOCAL_GROUP_SIZE(...)
#define COMPUTE_SOURCE(filename)
#define DO_STATIC_COMPILATION()
#define DEFINE_VALUE(name, value)
#define WORKBENCH_SHADOW_VARIATIONS(common, prefix, suffix,...)