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/eevee/shaders')
-rw-r--r--source/blender/draw/engines/eevee/shaders/prepass_vert.glsl14
-rw-r--r--source/blender/draw/engines/eevee/shaders/surface_vert.glsl17
2 files changed, 22 insertions, 9 deletions
diff --git a/source/blender/draw/engines/eevee/shaders/prepass_vert.glsl b/source/blender/draw/engines/eevee/shaders/prepass_vert.glsl
index f650e2eeb8c..ac3467744de 100644
--- a/source/blender/draw/engines/eevee/shaders/prepass_vert.glsl
+++ b/source/blender/draw/engines/eevee/shaders/prepass_vert.glsl
@@ -1,10 +1,7 @@
#pragma BLENDER_REQUIRE(common_hair_lib.glsl)
#pragma BLENDER_REQUIRE(common_view_lib.glsl)
-
-#ifndef HAIR_SHADER
-in vec3 pos;
-#endif
+#pragma BLENDER_REQUIRE(gpencil_common_lib.glsl)
void main()
{
@@ -23,8 +20,11 @@ void main()
time,
thickness,
thick_time);
+#elif defined(GPENCIL_SHADER)
+ /* TODO */
+ vec3 worldPosition = vec3(0.0);
#else
- vec3 worldPosition = point_object_to_world(pos);
+ vec3 worldPosition = point_object_to_world(pos.xyz);
#endif
gl_Position = point_world_to_ndc(worldPosition);
@@ -32,4 +32,8 @@ void main()
#ifdef CLIP_PLANES
gl_ClipDistance[0] = dot(vec4(worldPosition.xyz, 1.0), clipPlanes[0]);
#endif
+
+#if defined(GPENCIL_SHADER)
+ gpencil_vertex();
+#endif
}
diff --git a/source/blender/draw/engines/eevee/shaders/surface_vert.glsl b/source/blender/draw/engines/eevee/shaders/surface_vert.glsl
index 0ad1393dd70..969312812e3 100644
--- a/source/blender/draw/engines/eevee/shaders/surface_vert.glsl
+++ b/source/blender/draw/engines/eevee/shaders/surface_vert.glsl
@@ -2,9 +2,9 @@
#pragma BLENDER_REQUIRE(common_hair_lib.glsl)
#pragma BLENDER_REQUIRE(common_view_lib.glsl)
#pragma BLENDER_REQUIRE(surface_lib.glsl)
+#pragma BLENDER_REQUIRE(gpencil_common_lib.glsl)
-#ifndef HAIR_SHADER
-in vec3 pos;
+#if !defined(HAIR_SHADER) && !defined(GPENCIL_SHADER)
in vec3 nor;
#endif
@@ -31,12 +31,21 @@ void main()
hairThickTime);
worldNormal = cross(hairTangent, binor);
vec3 world_pos = pos;
+#elif defined(GPENCIL_SHADER)
+ /* TODO */
+ vec3 pos = vec3(0.0);
+ vec3 nor = vec3(1.0);
+ vec3 world_pos = pos.xyz;
#else
- vec3 world_pos = point_object_to_world(pos);
+ vec3 world_pos = point_object_to_world(pos.xyz);
#endif
gl_Position = point_world_to_ndc(world_pos);
+#if defined(GPENCIL_SHADER)
+ gpencil_vertex();
+#endif
+
/* Used for planar reflections */
gl_ClipDistance[0] = dot(vec4(world_pos, 1.0), clipPlanes[0]);
@@ -54,7 +63,7 @@ void main()
# ifdef HAIR_SHADER
pos = hair_get_strand_pos();
# endif
- pass_attr(pos, NormalMatrix, ModelMatrixInverse);
+ pass_attr(pos.xyz, NormalMatrix, ModelMatrixInverse);
# endif
#endif
}