diff options
Diffstat (limited to 'source/blender/draw/engines/workbench/shaders/workbench_shadow_vert.glsl')
-rw-r--r-- | source/blender/draw/engines/workbench/shaders/workbench_shadow_vert.glsl | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/source/blender/draw/engines/workbench/shaders/workbench_shadow_vert.glsl b/source/blender/draw/engines/workbench/shaders/workbench_shadow_vert.glsl new file mode 100644 index 00000000000..50a721f948f --- /dev/null +++ b/source/blender/draw/engines/workbench/shaders/workbench_shadow_vert.glsl @@ -0,0 +1,21 @@ +#define INFINITE 1000.0 + +uniform mat4 ModelViewProjectionMatrix; + +uniform vec3 lightDirection = vec3(0.57, 0.57, -0.57); +uniform float lightDistance = 1e4; + +in vec3 pos; + +out VertexData { + vec3 pos; /* local position */ + vec4 frontPosition; /* final ndc position */ + vec4 backPosition; +} vData; + +void main() +{ + vData.pos = pos; + vData.frontPosition = ModelViewProjectionMatrix * vec4(pos, 1.0); + vData.backPosition = ModelViewProjectionMatrix * vec4(pos + lightDirection * lightDistance, 1.0); +} |