Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'source/blender/draw/engines/workbench/workbench_shader_shared.h')
-rw-r--r--source/blender/draw/engines/workbench/workbench_shader_shared.h48
1 files changed, 48 insertions, 0 deletions
diff --git a/source/blender/draw/engines/workbench/workbench_shader_shared.h b/source/blender/draw/engines/workbench/workbench_shader_shared.h
new file mode 100644
index 00000000000..42d38e54d9a
--- /dev/null
+++ b/source/blender/draw/engines/workbench/workbench_shader_shared.h
@@ -0,0 +1,48 @@
+
+#ifndef GPU_SHADER
+# include "gpu_shader_shared_utils.h"
+#endif
+
+#define WORKBENCH_SHADER_SHARED_H
+
+struct LightData {
+ float4 direction;
+ float4 specular_color;
+ float4 diffuse_color_wrap; /* rgb: diffuse col a: wrapped lighting factor */
+};
+
+struct WorldData {
+ float4 viewport_size;
+ float4 object_outline_color;
+ float4 shadow_direction_vs;
+ float shadow_focus;
+ float shadow_shift;
+ float shadow_mul;
+ float shadow_add;
+ /* - 16 bytes alignment - */
+ LightData lights[4];
+ float4 ambient_color;
+
+ int cavity_sample_start;
+ int cavity_sample_end;
+ float cavity_sample_count_inv;
+ float cavity_jitter_scale;
+
+ float cavity_valley_factor;
+ float cavity_ridge_factor;
+ float cavity_attenuation;
+ float cavity_distance;
+
+ float curvature_ridge;
+ float curvature_valley;
+ float ui_scale;
+ float _pad0;
+
+ int matcap_orientation;
+ bool use_specular;
+ int _pad1;
+ int _pad2;
+};
+
+#define viewport_size_inv viewport_size.zw
+#define packed_rough_metal roughness