From a61c6ee6533dca6723320c3955773cc5ccbfe2fa Mon Sep 17 00:00:00 2001 From: Miikka Heikkinen Date: Tue, 5 Nov 2013 13:57:18 +0200 Subject: Gradient support Part 1 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit TODO: - Finish scatter - QML (maybe left until data set is sorted, though) Change-Id: I87a8117cb29f147080e0662c55b1098cb2e71689 Reviewed-by: Tomi Korpipää --- src/datavisualization/engine/shaders/colorOnY.frag | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'src/datavisualization/engine/shaders/colorOnY.frag') diff --git a/src/datavisualization/engine/shaders/colorOnY.frag b/src/datavisualization/engine/shaders/colorOnY.frag index 80e54a61..caea959b 100644 --- a/src/datavisualization/engine/shaders/colorOnY.frag +++ b/src/datavisualization/engine/shaders/colorOnY.frag @@ -1,9 +1,11 @@ #version 120 uniform highp vec3 lightPosition_wrld; -uniform highp vec3 color_mdl; uniform highp float lightStrength; uniform highp float ambientStrength; +uniform sampler2D textureSampler; +uniform highp float gradMin; +uniform highp float gradHeight; varying highp vec3 position_wrld; varying highp vec3 normal_cmr; @@ -12,8 +14,8 @@ varying highp vec3 lightDirection_cmr; varying highp vec2 coords_mdl; void main() { - highp float heightMod = (coords_mdl.y * 0.3) + 0.7; // Add 30% black to the bottom - highp vec3 materialDiffuseColor = heightMod * color_mdl; + highp vec2 gradientUV = vec2(0.0, gradMin + ((coords_mdl.y + 1.0) * gradHeight)); + highp vec3 materialDiffuseColor = texture2D(textureSampler, gradientUV).xyz; highp vec3 materialAmbientColor = vec3(ambientStrength, ambientStrength, ambientStrength) * materialDiffuseColor; highp vec3 materialSpecularColor = vec3(1.0, 1.0, 1.0); -- cgit v1.2.3