From 32c5972653041a3423122b5a5ae791ef536b87ed Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cl=C3=A9ment=20Foucault?= Date: Sun, 3 Jun 2018 12:13:19 +0200 Subject: Workbench: Rework hair support. Now hairs are shaded properly in workbench and support texturing. I also added a 10% random normal direction per hair to have a bit more variation in the shading. This is hardcoded for now. --- .../shaders/workbench_forward_transparent_accum_frag.glsl | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) (limited to 'source/blender/draw/engines/workbench/shaders/workbench_forward_transparent_accum_frag.glsl') diff --git a/source/blender/draw/engines/workbench/shaders/workbench_forward_transparent_accum_frag.glsl b/source/blender/draw/engines/workbench/shaders/workbench_forward_transparent_accum_frag.glsl index 3f271ec439b..a9c84e11aa6 100644 --- a/source/blender/draw/engines/workbench/shaders/workbench_forward_transparent_accum_frag.glsl +++ b/source/blender/draw/engines/workbench/shaders/workbench_forward_transparent_accum_frag.glsl @@ -39,20 +39,17 @@ void main() #endif #ifdef V3D_LIGHTING_STUDIO -#ifdef STUDIOLIGHT_ORIENTATION_CAMERA +# ifdef STUDIOLIGHT_ORIENTATION_CAMERA vec3 diffuse_light = get_camera_diffuse_light(world_data, normal_viewport); -#endif -#ifdef STUDIOLIGHT_ORIENTATION_WORLD +# endif +# ifdef STUDIOLIGHT_ORIENTATION_WORLD vec3 normal_world = normalWorldMatrix * normal_viewport; vec3 diffuse_light = get_world_diffuse_light(world_data, normal_world); -#endif - +# endif vec3 shaded_color = diffuse_light * diffuse_color.rgb + specular_color; - -#else /* V3D_LIGHTING_STUDIO */ +#else vec3 shaded_color = diffuse_color.rgb + specular_color; - -#endif /* V3D_LIGHTING_STUDIO */ +#endif vec4 premultiplied = vec4(shaded_color.rgb * alpha, alpha); transparentAccum = calculate_transparent_accum(premultiplied); -- cgit v1.2.3