diff --git a/src/modules/evas/engines/gl_common/shader_3d/evas_gl_3d_shaders.x b/src/modules/evas/engines/gl_common/shader_3d/evas_gl_3d_shaders.x index 40ad12488a..b8a5edb64f 100644 --- a/src/modules/evas/engines/gl_common/shader_3d/evas_gl_3d_shaders.x +++ b/src/modules/evas/engines/gl_common/shader_3d/evas_gl_3d_shaders.x @@ -25,7 +25,7 @@ static const char const vertex_color_vert_glsl[] = "#endif //VERTEX_COLOR_BLEND\n" "void main()\n" "{\n" - "#ifdef VERTEX_POSITION_BLEND\n" + " #ifdef VERTEX_POSITION_BLEND\n" " vec4 position = aPosition0 * uPositionWeight +\n" " aPosition1 * (1.0 - uPositionWeight);\n" " position = vec4(position.xyz, 1.0);\n" @@ -59,9 +59,10 @@ static const char const vertex_color_frag_glsl[] = "void main()\n" "{\n" " gl_FragColor = vColor;\n" + " \n" "#ifdef FOG_ENABLED\n" " float z = gl_FragCoord.z / gl_FragCoord.w;\n" - " float fogFactor = exp2( -uFogFactor * uFogFactor * z * z * 1.44);\n" + " float fogFactor = exp2(-uFogFactor * uFogFactor * z * z * 1.44);\n" " fogFactor = clamp(fogFactor, 0.0, 1.0);\n" " gl_FragColor = mix(uFogColor, gl_FragColor, fogFactor);\n" "#endif //FOG_ENABLED\n" diff --git a/src/modules/evas/engines/gl_common/shader_3d/include.shd b/src/modules/evas/engines/gl_common/shader_3d/include.shd index 5028021b32..aea3c8f658 100644 --- a/src/modules/evas/engines/gl_common/shader_3d/include.shd +++ b/src/modules/evas/engines/gl_common/shader_3d/include.shd @@ -148,6 +148,16 @@ uniform float uTexCoordWeight; `#endif //VERTEX_TEXCOORD_BLEND' ) +define(`VERTEX_SHADER_USE_COLOR', +`#ifdef VERTEX_COLOR' +attribute vec4 aColor0; +`#endif //VERTEX_COLOR' + +`#ifdef VERTEX_COLOR_BLEND' +attribute vec4 aColor1; +uniform float uColorWeight; +`#endif //VERTEX_COLOR_BLEND') + define(`VERTEX_SHADER_POSITION', `#ifdef VERTEX_POSITION_BLEND' vec4 position = aPosition0 * uPositionWeight + diff --git a/src/modules/evas/engines/gl_common/shader_3d/vertex_color_frag.shd b/src/modules/evas/engines/gl_common/shader_3d/vertex_color_frag.shd index 9b0c023e1b..24fb237197 100644 --- a/src/modules/evas/engines/gl_common/shader_3d/vertex_color_frag.shd +++ b/src/modules/evas/engines/gl_common/shader_3d/vertex_color_frag.shd @@ -1,20 +1,10 @@ varying vec4 vColor; -#ifdef FOG_ENABLED -uniform float uFogFactor; -uniform vec4 uFogColor; -#endif //FOG_ENABLED +FRAGMENT_SHADER_USE_FOG void main() { gl_FragColor = vColor; - -#ifdef FOG_ENABLED - float z = gl_FragCoord.z / gl_FragCoord.w; - float fogFactor = exp2( -uFogFactor * uFogFactor * z * z * 1.44); - fogFactor = clamp(fogFactor, 0.0, 1.0); - gl_FragColor = mix(uFogColor, gl_FragColor, fogFactor); -#endif //FOG_ENABLED - + FRAGMENT_SHADER_FOG_APPLY } diff --git a/src/modules/evas/engines/gl_common/shader_3d/vertex_color_vert.shd b/src/modules/evas/engines/gl_common/shader_3d/vertex_color_vert.shd index 560baad63d..6daeacfc1f 100644 --- a/src/modules/evas/engines/gl_common/shader_3d/vertex_color_vert.shd +++ b/src/modules/evas/engines/gl_common/shader_3d/vertex_color_vert.shd @@ -1,38 +1,12 @@ uniform mat4 uMatrixMvp; varying vec4 vColor; -#ifdef VERTEX_POSITION -attribute vec4 aPosition0; -#endif //VERTEX_POSITION - -#ifdef VERTEX_POSITION_BLEND -attribute vec4 aPosition1; -uniform float uPositionWeight; -#endif //VERTEX_POSITION_BLEND - -#ifdef VERTEX_COLOR -attribute vec4 aColor0; -#endif //VERTEX_COLOR - -#ifdef VERTEX_COLOR_BLEND -attribute vec4 aColor1; -uniform float uColorWeight; -#endif //VERTEX_COLOR_BLEND +VERTEX_SHADER_USE_POSITION +VERTEX_SHADER_USE_COLOR void main() { - -#ifdef VERTEX_POSITION_BLEND - vec4 position = aPosition0 * uPositionWeight + - aPosition1 * (1.0 - uPositionWeight); - position = vec4(position.xyz, 1.0); -#else - -#ifdef VERTEX_POSITION - vec4 position = vec4(aPosition0.xyz, 1.0); -#endif // VERTEX_POSITION - -#endif //VERTEX_POSITION_BLEND + VERTEX_SHADER_POSITION #ifdef VERTEX_COLOR_BLEND vec4 color = aColor0 * uColorWeight + aColor1 * (1.0 - uColorWeight);