[Tizen] Make TextureCoordinate relative shader codes use highp 63/319263/2 accepted/tizen/9.0/unified/20250210.170334
authorEunki Hong <eunkiki.hong@samsung.com>
Thu, 6 Feb 2025 14:54:02 +0000 (23:54 +0900)
committerEunki, Hong <eunkiki.hong@samsung.com>
Fri, 7 Feb 2025 03:38:08 +0000 (12:38 +0900)
Let we make texture coordinates and relative shader codes use highp instead of mediump.
It will reduce visual defect for high-resolution UI system

Change-Id: I2c326c90cf98ff0496aeb294825bf72c519821e2
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
96 files changed:
dali-scene3d/internal/graphics/shaders/default-physically-based-shader.frag
dali-scene3d/internal/graphics/shaders/default-physically-based-shader.vert
dali-scene3d/internal/graphics/shaders/scene3d-joint-debug.frag
dali-scene3d/internal/graphics/shaders/scene3d-joint-debug.vert
dali-scene3d/internal/graphics/shaders/shadow-map-shader.frag
dali-scene3d/internal/graphics/shaders/shadow-map-shader.vert
dali-toolkit/internal/graphics/shaders/alpha-discard-effect.frag
dali-toolkit/internal/graphics/shaders/animated-gradient-visual-shader.frag
dali-toolkit/internal/graphics/shaders/animated-gradient-visual-shader.vert
dali-toolkit/internal/graphics/shaders/arc-visual-butt-cap-shader.frag
dali-toolkit/internal/graphics/shaders/arc-visual-round-cap-shader.frag
dali-toolkit/internal/graphics/shaders/arc-visual-shader.vert
dali-toolkit/internal/graphics/shaders/bloom-view-composite-shader.frag
dali-toolkit/internal/graphics/shaders/bloom-view-extract-shader.frag
dali-toolkit/internal/graphics/shaders/blur-effect.frag
dali-toolkit/internal/graphics/shaders/blur-two-images-shader.frag
dali-toolkit/internal/graphics/shaders/blur-two-pass-shader.frag
dali-toolkit/internal/graphics/shaders/border-visual-anti-aliasing-shader.frag
dali-toolkit/internal/graphics/shaders/border-visual-anti-aliasing-shader.vert
dali-toolkit/internal/graphics/shaders/border-visual-shader.frag
dali-toolkit/internal/graphics/shaders/border-visual-shader.vert
dali-toolkit/internal/graphics/shaders/bouncing-effect-mesh-shader.frag
dali-toolkit/internal/graphics/shaders/bouncing-effect-mesh-shader.vert
dali-toolkit/internal/graphics/shaders/bubble-effect-color-adjuster.frag
dali-toolkit/internal/graphics/shaders/bubble-effect.frag
dali-toolkit/internal/graphics/shaders/bubble-effect.vert
dali-toolkit/internal/graphics/shaders/bubble-emitter.frag
dali-toolkit/internal/graphics/shaders/bubble-emitter.vert
dali-toolkit/internal/graphics/shaders/canvas-view.frag
dali-toolkit/internal/graphics/shaders/canvas-view.vert
dali-toolkit/internal/graphics/shaders/color-visual-shader.frag
dali-toolkit/internal/graphics/shaders/color-visual-shader.vert
dali-toolkit/internal/graphics/shaders/cube-transition-effect.frag
dali-toolkit/internal/graphics/shaders/cube-transition-effect.vert
dali-toolkit/internal/graphics/shaders/dissolve-effect.frag
dali-toolkit/internal/graphics/shaders/dissolve-effect.vert
dali-toolkit/internal/graphics/shaders/distance-field-effect.frag
dali-toolkit/internal/graphics/shaders/effects-view.frag
dali-toolkit/internal/graphics/shaders/effects-view.vert
dali-toolkit/internal/graphics/shaders/emboss-filter-composite-shader.frag
dali-toolkit/internal/graphics/shaders/emboss-filter-shader.frag
dali-toolkit/internal/graphics/shaders/gaussian-blur-view.frag
dali-toolkit/internal/graphics/shaders/gl-view.frag
dali-toolkit/internal/graphics/shaders/gl-view.vert
dali-toolkit/internal/graphics/shaders/gradient-visual-shader.frag
dali-toolkit/internal/graphics/shaders/gradient-visual-shader.vert
dali-toolkit/internal/graphics/shaders/image-region-effect.vert
dali-toolkit/internal/graphics/shaders/image-visual-shader.frag
dali-toolkit/internal/graphics/shaders/image-visual-shader.vert
dali-toolkit/internal/graphics/shaders/mesh-visual-normal-map-shader.frag
dali-toolkit/internal/graphics/shaders/mesh-visual-normal-map-shader.vert
dali-toolkit/internal/graphics/shaders/mesh-visual-shader.frag
dali-toolkit/internal/graphics/shaders/mesh-visual-shader.vert
dali-toolkit/internal/graphics/shaders/mesh-visual-simple-shader.frag
dali-toolkit/internal/graphics/shaders/mesh-visual-simple-shader.vert
dali-toolkit/internal/graphics/shaders/model3d-view-nrmmap-shader.frag
dali-toolkit/internal/graphics/shaders/model3d-view-nrmmap-shader.vert
dali-toolkit/internal/graphics/shaders/model3d-view-shader.frag
dali-toolkit/internal/graphics/shaders/model3d-view-shader.vert
dali-toolkit/internal/graphics/shaders/model3d-view-simple-shader.frag
dali-toolkit/internal/graphics/shaders/model3d-view-simple-shader.vert
dali-toolkit/internal/graphics/shaders/motion-blur-effect.frag
dali-toolkit/internal/graphics/shaders/motion-blur-effect.vert
dali-toolkit/internal/graphics/shaders/motion-stretch-effect.frag
dali-toolkit/internal/graphics/shaders/motion-stretch-effect.vert
dali-toolkit/internal/graphics/shaders/npatch-visual-3x3-shader.vert
dali-toolkit/internal/graphics/shaders/npatch-visual-mask-shader.frag
dali-toolkit/internal/graphics/shaders/npatch-visual-shader.frag
dali-toolkit/internal/graphics/shaders/npatch-visual-shader.vert
dali-toolkit/internal/graphics/shaders/page-turn-book-spine-effect.frag
dali-toolkit/internal/graphics/shaders/page-turn-book-spine-effect.vert
dali-toolkit/internal/graphics/shaders/page-turn-effect.frag
dali-toolkit/internal/graphics/shaders/page-turn-effect.vert
dali-toolkit/internal/graphics/shaders/primitive-visual-shader.frag
dali-toolkit/internal/graphics/shaders/primitive-visual-shader.vert
dali-toolkit/internal/graphics/shaders/shadow-view-render-shader.frag
dali-toolkit/internal/graphics/shaders/shadow-view-render-shader.vert
dali-toolkit/internal/graphics/shaders/spread-filter-shader.frag
dali-toolkit/internal/graphics/shaders/super-blur-view.frag
dali-toolkit/internal/graphics/shaders/text-atlas-l8-shader.frag
dali-toolkit/internal/graphics/shaders/text-atlas-rgba-shader.frag
dali-toolkit/internal/graphics/shaders/text-atlas-shader.vert
dali-toolkit/internal/graphics/shaders/text-controller-background-shader.frag
dali-toolkit/internal/graphics/shaders/text-controller-background-shader.vert
dali-toolkit/internal/graphics/shaders/text-decorator-shader.frag
dali-toolkit/internal/graphics/shaders/text-decorator-shader.vert
dali-toolkit/internal/graphics/shaders/text-scroller-shader.frag
dali-toolkit/internal/graphics/shaders/text-scroller-shader.vert
dali-toolkit/internal/graphics/shaders/text-visual-shader.frag
dali-toolkit/internal/graphics/shaders/text-visual-shader.vert
dali-toolkit/internal/graphics/shaders/video-view-texture.frag
dali-toolkit/internal/graphics/shaders/video-view-texture.vert
dali-toolkit/internal/graphics/shaders/video-view.frag
dali-toolkit/internal/graphics/shaders/video-view.vert
dali-toolkit/internal/graphics/shaders/wireframe-visual-shader.frag
dali-toolkit/internal/graphics/shaders/wireframe-visual-shader.vert

index e9d48648caa54f57e85922a9ddf2f7bdfb455b3e..3b6680230b66e2035d5b5b3572753e89c963c00f 100644 (file)
 // [4] \"An Inexpensive BRDF Model for Physically based Rendering\" by Christophe Schlick
 //     https://www.cs.virginia.edu/~jdl/bib/appearance/analytic%20models/schlick94b.pdf
 
-#ifdef HIGHP
 precision highp float;
-#else
-precision mediump float;
-#endif
 
 #ifdef GLTF_CHANNELS
 #define METALLIC b
@@ -90,8 +86,8 @@ uniform sampler2D sSpecularColor;
 // For Light (Currently Directional Only)
 #define MAX_LIGHTS 5
 uniform mediump int uLightCount;
-uniform mediump vec3 uLightDirection[MAX_LIGHTS];
-uniform mediump vec3 uLightColor[MAX_LIGHTS];
+uniform highp vec3 uLightDirection[MAX_LIGHTS];
+uniform highp vec3 uLightColor[MAX_LIGHTS];
 
 // For Shadow Map
 uniform lowp int uIsShadowEnabled;
@@ -117,9 +113,9 @@ uniform lowp float uMask;
 uniform lowp float uAlphaThreshold;
 
 // TODO: Multiple texture coordinate will be supported.
-INPUT mediump vec2 vUV;
-INPUT lowp mat3 vTBN;
-INPUT lowp vec4 vColor;
+INPUT highp vec2 vUV;
+INPUT highp mat3 vTBN;
+INPUT highp vec4 vColor;
 INPUT highp vec3 vPositionToCamera;
 
 const float c_MinRoughness = 0.04;
@@ -167,7 +163,7 @@ void main()
 #ifdef THREE_TEX
   // The albedo may be defined from a base texture or a flat color
 #ifdef BASECOLOR_TEX
-  mediump vec2 baseColorTexCoords = mix(vUV, computeTextureTransform(vUV, uBaseColorTextureTransform), uBaseColorTextureTransformAvailable);
+  highp vec2 baseColorTexCoords = mix(vUV, computeTextureTransform(vUV, uBaseColorTextureTransform), uBaseColorTextureTransformAvailable);
   lowp vec4 baseColor = TEXTURE(sAlbedoAlpha, baseColorTexCoords);
   baseColor = vColor * vec4(linear(baseColor.rgb), baseColor.w) * uColorFactor;
 #else // BASECOLOR_TEX
@@ -175,25 +171,25 @@ void main()
 #endif // BASECOLOR_TEX
 
 #ifdef METALLIC_ROUGHNESS_TEX
-  mediump vec2 metalRoughnessTexCoords = mix(vUV, computeTextureTransform(vUV, uMetalRoughnessTextureTransform), uMetalRoughnessTextureTransformAvailable);
+  highp vec2 metalRoughnessTexCoords = mix(vUV, computeTextureTransform(vUV, uMetalRoughnessTextureTransform), uMetalRoughnessTextureTransformAvailable);
   lowp vec4 metrou = TEXTURE(sMetalRoughness, metalRoughnessTexCoords);
   metallic = metrou.METALLIC * metallic;
   perceptualRoughness = metrou.ROUGHNESS * perceptualRoughness;
 #endif // METALLIC_ROUGHNESS_TEX
 
 #ifdef NORMAL_TEX
-  mediump vec2 normalTexCoords = mix(vUV, computeTextureTransform(vUV, uNormalTextureTransform), uNormalTextureTransformAvailable);
+  highp vec2 normalTexCoords = mix(vUV, computeTextureTransform(vUV, uNormalTextureTransform), uNormalTextureTransformAvailable);
   n = TEXTURE(sNormal, normalTexCoords).rgb;
   n = normalize(vTBN * ((2.0 * n - 1.0) * vec3(uNormalScale, uNormalScale, 1.0)));
 #endif // NORMAL_TEX
 #else // THREE_TEX
-  mediump vec2 baseColorTexCoords = mix(vUV, computeTextureTransform(vUV, uBaseColorTextureTransform), uBaseColorTextureTransformAvailable);
+  highp vec2 baseColorTexCoords = mix(vUV, computeTextureTransform(vUV, uBaseColorTextureTransform), uBaseColorTextureTransformAvailable);
   vec4 albedoMetal = TEXTURE(sAlbedoMetal, baseColorTexCoords);
   lowp vec4 baseColor = vec4(linear(albedoMetal.rgb), 1.0) * vColor * uColorFactor;
 
   metallic = albedoMetal.METALLIC * metallic;
 
-  mediump vec2 normalRoughnessTexCoords = mix(vUV, computeTextureTransform(vUV, uNormalRoughnessTextureTransform), uNormalRoughnessTextureTransformAvailable);
+  highp vec2 normalRoughnessTexCoords = mix(vUV, computeTextureTransform(vUV, uNormalRoughnessTextureTransform), uNormalRoughnessTextureTransformAvailable);
   vec4 normalRoughness = TEXTURE(sNormalRoughness, normalRoughnessTexCoords);
   perceptualRoughness = normalRoughness.ROUGHNESS * perceptualRoughness;
 
@@ -233,9 +229,9 @@ void main()
   f0 = min(f0 * uSpecularColorFactor * materialSpecularTexture.rgb, vec3(1.0));
   f0 = mix(f0, baseColor.rgb, metallic);
 
-  mediump vec3 v = normalize(vPositionToCamera); // Vector from surface point to camera
-  mediump float NdotV = clamp(abs(dot(n, v)), 0.001, 1.0);
-  mediump vec3 reflection = -normalize(reflect(v, n));
+  highp vec3 v = normalize(vPositionToCamera); // Vector from surface point to camera
+  highp float NdotV = clamp(abs(dot(n, v)), 0.001, 1.0);
+  highp vec3 reflection = -normalize(reflect(v, n));
   lowp vec3 brdf = TEXTURE(sbrdfLUT, vec2(NdotV, 1.0 - perceptualRoughness)).rgb;
   vec3 Fr = max(vec3(1.0 - perceptualRoughness), f0) - f0;
   vec3 k_S = f0 + Fr * pow(1.0 - NdotV, 5.0);
@@ -305,7 +301,7 @@ void main()
 
   if(float(uIsShadowReceiving) * float(uIsShadowEnabled) * uShadowIntensity > 0.0)
   {
-    mediump float exposureFactor = 0.0;
+    highp float exposureFactor = 0.0;
 
     highp vec3 l = normalize(-uLightDirection[uShadowLightIndex]);
     highp float NdotL = dot(n, l);
@@ -316,8 +312,8 @@ void main()
 #else
       ivec2 texSize = textureSize(sShadowMap, 0);
 #endif
-      mediump vec2 texelSize = vec2(1.0) / vec2(texSize.x, texSize.y);
-      mediump vec2 pcfSample = vec2(1.0, 0.0);
+      highp vec2 texelSize = vec2(1.0) / vec2(texSize.x, texSize.y);
+      highp vec2 pcfSample = vec2(1.0, 0.0);
       for (int i = 0; i < kPcfSampleCount; ++i)
       {
         pcfSample = vec2(kCosPcfTheta * pcfSample.x - kSinPcfTheta * pcfSample.y,
@@ -335,7 +331,7 @@ void main()
     {
       if(NdotL > 0.0)
       {
-        mediump float depthValue = TEXTURE(sShadowMap, positionFromLightView.xy).r;
+        highp float depthValue = TEXTURE(sShadowMap, positionFromLightView.xy).r;
         exposureFactor           = (depthValue < positionFromLightView.z - uShadowBias) ? 0.0 : 1.0;
       }
     }
@@ -344,13 +340,13 @@ void main()
   }
 
 #ifdef OCCLUSION
-  mediump vec2 occlusionTexCoords = mix(vUV, computeTextureTransform(vUV, uOcclusionTextureTransform), uOcclusionTextureTransformAvailable);
+  highp vec2 occlusionTexCoords = mix(vUV, computeTextureTransform(vUV, uOcclusionTextureTransform), uOcclusionTextureTransformAvailable);
   lowp float ao = TEXTURE(sOcclusion, occlusionTexCoords).r;
   color = mix(color, color * ao, uOcclusionStrength);
 #endif // OCCLUSION
 
 #ifdef EMISSIVE_TEXTURE
-  mediump vec2 emissiveTexCoords = mix(vUV, computeTextureTransform(vUV, uEmissiveTextureTransform), uEmissiveTextureTransformAvailable);
+  highp vec2 emissiveTexCoords = mix(vUV, computeTextureTransform(vUV, uEmissiveTextureTransform), uEmissiveTextureTransformAvailable);
   lowp vec3 emissive = linear(TEXTURE(sEmissive, emissiveTexCoords).rgb) * uEmissiveFactor;
 #else
   lowp vec3 emissive = uEmissiveFactor;
index 8ee1bf42820a8ea4ddccf1ef2b73548d5153fcc9..f5d9a26f1fce4e6c3ac8b2e30ccf60e5ba3e56ce 100644 (file)
@@ -44,9 +44,9 @@ uniform int uBlendShapeGeometryHeight;
 #endif
 #endif
 
-OUTPUT mediump vec2 vUV;
+OUTPUT highp vec2 vUV;
 OUTPUT highp mat3 vTBN;
-OUTPUT lowp vec4 vColor;
+OUTPUT highp vec4 vColor;
 OUTPUT highp vec3 vPositionToCamera;
 
 uniform highp mat4 uViewMatrix;
index 3ce016bd7b3fa0eb595e5f08f80e67c1ba5d659d..c7b229e1c82ae937bd9863ad5794941f3b6ae87d 100644 (file)
@@ -1,5 +1,5 @@
 
-precision mediump float;
+precision highp float;
 uniform lowp vec4 uColor;
 FLAT INPUT float vColor;
 
index 49860c8a275fccb1b4e414c2a97521eebbdc7cb6..6c9b536cd273dd489aeb88840ba72b86f9d3cbef 100644 (file)
@@ -1,5 +1,5 @@
 
-precision mediump float;
+precision highp float;
 uniform mat4 uMvpMatrix;
 INPUT vec3 aPosition;
 INPUT float aColor;
index 7d72c367f1016aff267b383041162ab01c4a36e5..35e74f6149006812058c034d935d12109b501bbc 100644 (file)
@@ -3,8 +3,8 @@ uniform lowp vec4 uColorFactor; // Color from material
 uniform lowp float uMask;
 uniform lowp float uAlphaThreshold;
 
-INPUT mediump vec2 vUV;
-INPUT lowp vec4 vColor;
+INPUT highp vec2 vUV;
+INPUT highp vec4 vColor;
 
 //INPUT highp float depth;
 //OUTPUT highp vec4 FragColor;
index 521870098c45e15184da5c9910834dd794eb6759..648e2c4a1fa39b39f83ab43e0c7dc1830399ceaa 100644 (file)
@@ -27,8 +27,8 @@ uniform int uBlendShapeGeometryHeight;
 #endif
 #endif
 
-OUTPUT mediump vec2 vUV;
-OUTPUT lowp vec4 vColor;
+OUTPUT highp vec2 vUV;
+OUTPUT highp vec4 vColor;
 
 uniform highp mat4 uViewMatrix;
 uniform highp mat4 uModelMatrix;
index d9b3d5af6c24d474404109b6f5ec74b25bc6199c..937dd894c8991aec887d0e0aeec1e060629bf83f 100644 (file)
@@ -1,4 +1,5 @@
-varying mediump vec2 vTexCoord;
+precision highp float;
+varying highp vec2 vTexCoord;
 
 uniform sampler2D sTexture;
 uniform lowp vec4 uColor;
index 7855bf055cc442f23396e15bd1c9be4b862d3507..32f1c59900704ca0fd1ab8f80d74b5cbbc32ac8f 100644 (file)
@@ -1,12 +1,12 @@
-precision mediump float;
+precision highp float;
 
-uniform mediump vec4 start_color;
-uniform mediump vec4 end_color;
-uniform mediump float gradient_offset;
+uniform highp vec4 start_color;
+uniform highp vec4 end_color;
+uniform highp float gradient_offset;
 
-varying mediump vec2 vTexCoord;
-varying mediump vec2 vStart;
-varying mediump vec2 vEnd;
+varying highp vec2 vTexCoord;
+varying highp vec2 vStart;
+varying highp vec2 vEnd;
 
 float get_position(vec2 x, vec2 s, vec2 e)
 {
index 5faf423eb8b3d1b9cb0f1dd8697a4d33810d07d8..6e17f0b5f5f0420ed042b446c9b7d0d9ce00ea49 100644 (file)
@@ -1,15 +1,17 @@
-attribute mediump vec2 aPosition;
+precision highp float;
+
+attribute highp vec2 aPosition;
 uniform highp mat4 uMvpMatrix;
 uniform highp vec3 uSize;
 
-uniform mediump vec2 start_point;
-uniform mediump vec2 end_point;
-uniform mediump vec2 rotate_center;
-uniform mediump float rotate_angle;
+uniform highp vec2 start_point;
+uniform highp vec2 end_point;
+uniform highp vec2 rotate_center;
+uniform highp float rotate_angle;
 
-varying mediump vec2 vTexCoord;
-varying mediump vec2 vStart;
-varying mediump vec2 vEnd;
+varying highp vec2 vTexCoord;
+varying highp vec2 vStart;
+varying highp vec2 vEnd;
 
 vec2 rotate(vec2 x, vec2 c, float a)
 {
@@ -28,7 +30,7 @@ vec2 rotate(vec2 x, vec2 c, float a)
 }
 
 //Visual size and offset
-uniform mediump vec2 offset;
+uniform highp vec2 offset;
 uniform highp vec2 size;
 uniform mediump vec4 offsetSizeMode;
 uniform mediump vec2 origin;
index 4720ae8f298612505e8fda40ad2c7fa2d6738fd9..908e7964ebf16c6413660c1d2a8f05e73a3cace8 100644 (file)
@@ -1,27 +1,30 @@
-INPUT mediump vec2 vPosition;
+precision highp float;
+
+INPUT highp vec2 vPosition;
 
 uniform lowp vec4 uColor;
-uniform mediump float thickness;
-uniform mediump float radius;
-uniform mediump float startAngle;
-uniform mediump float sweepAngle;
+uniform highp float thickness;
+uniform highp float radius;
+uniform highp float startAngle;
+uniform highp float sweepAngle;
 
-const mediump float M_PI_OVER_2 = 1.57079632679;
-const mediump float M_PI = 3.14159265359;
-const mediump float M_PI_2 = 6.28318530718;
+const highp float M_PI_OVER_2 = 1.57079632679;
+const highp float M_PI = 3.14159265359;
+const highp float M_PI_2 = 6.28318530718;
 
 mediump float GetOpacity()
 {
-  mediump float start = radians( mod( startAngle, 360.0 ) );
-  mediump float angle = mod( atan( vPosition.y, vPosition.x ) + M_PI_OVER_2 - start, M_PI_2 );
-  mediump float dist = length( vPosition );
+  highp float start = radians( mod( startAngle, 360.0 ) );
+  highp float angle = mod( atan( vPosition.y, vPosition.x ) + M_PI_OVER_2 - start, M_PI_2 );
+  highp float dist = length( vPosition );
   if( angle <= radians( sweepAngle ) )
   {
     return smoothstep( -1.0, 1.0, thickness / 2.0 - ( abs( dist - radius ) ) );
   }
-  mediump float end = radians( mod( startAngle + sweepAngle, 360.0 ) );
-  mediump vec2 q0 = vec2( dist * cos( start - M_PI_OVER_2 ), dist * sin( start - M_PI_OVER_2 ) );
-  mediump vec2 q1 = vec2( dist * cos( end - M_PI_OVER_2 ), dist * sin( end - M_PI_OVER_2 ) );
+  highp float end = radians( mod( startAngle + sweepAngle, 360.0 ) );
+  highp vec2 q0 = vec2( dist * cos( start - M_PI_OVER_2 ), dist * sin( start - M_PI_OVER_2 ) );
+  highp vec2 q1 = vec2( dist * cos( end - M_PI_OVER_2 ), dist * sin( end - M_PI_OVER_2 ) );
+
   mediump float opacity = 1.0 - smoothstep( 0.0, 2.0, min( length( vPosition - q0 ), length( vPosition - q1 ) ) );
   opacity *= step( 0.0, thickness / 2.0 - abs( dist - radius ) );
   return opacity;
index a73cc9408447c2c7651bd5618e87fa34c2479c86..d605963571d4d8a2d86bfe0cd909de233f61bcf9 100644 (file)
@@ -1,26 +1,26 @@
-INPUT mediump vec2 vPosition;
+INPUT highp vec2 vPosition;
 
 uniform lowp vec4 uColor;
-uniform mediump float thickness;
-uniform mediump float radius;
-uniform mediump float startAngle;
-uniform mediump float sweepAngle;
+uniform highp float thickness;
+uniform highp float radius;
+uniform highp float startAngle;
+uniform highp float sweepAngle;
 
-const mediump float M_PI_OVER_2 = 1.57079632679;
-const mediump float M_PI_2 = 6.28318530718;
+const highp float M_PI_OVER_2 = 1.57079632679;
+const highp float M_PI_2 = 6.28318530718;
 
 mediump float GetOpacity()
 {
-  mediump float start = radians( mod( startAngle, 360.0 ) );
-  mediump float angle = mod( atan( vPosition.y, vPosition.x ) + M_PI_OVER_2 - start, M_PI_2 );
-  mediump float dist = length( vPosition );
+  highp float start = radians( mod( startAngle, 360.0 ) );
+  highp float angle = mod( atan( vPosition.y, vPosition.x ) + M_PI_OVER_2 - start, M_PI_2 );
+  highp float dist = length( vPosition );
   if( angle <= radians( sweepAngle ) )
   {
     return smoothstep( -1.0, 1.0, thickness / 2.0 - ( abs( dist - radius ) ) );
   }
-  mediump float end = radians( mod( startAngle + sweepAngle, 360.0 ) );
-  mediump vec2 q0 = vec2( radius * cos( start - M_PI_OVER_2 ), radius * sin( start - M_PI_OVER_2 ) );
-  mediump vec2 q1 = vec2( radius * cos( end - M_PI_OVER_2 ), radius * sin( end - M_PI_OVER_2 ) );
+  highp float end = radians( mod( startAngle + sweepAngle, 360.0 ) );
+  highp vec2 q0 = vec2( radius * cos( start - M_PI_OVER_2 ), radius * sin( start - M_PI_OVER_2 ) );
+  highp vec2 q1 = vec2( radius * cos( end - M_PI_OVER_2 ), radius * sin( end - M_PI_OVER_2 ) );
   return smoothstep( -1.0, 1.0, thickness / 2.0 - min( length( vPosition - q0 ), length( vPosition - q1 ) ) );
 }
 
index 4f6dab57893df3c988b2362ed4eaace98dd25ed1..80aff58dd19757b0c8d9f8f79f01ab5b00a2de0a 100644 (file)
@@ -1,11 +1,13 @@
-INPUT mediump vec2 aPosition;
-OUTPUT mediump vec2 vPosition;
+precision highp float;
+
+INPUT highp vec2 aPosition;
+OUTPUT highp vec2 vPosition;
 
 uniform highp mat4 uMvpMatrix;
 uniform highp vec3 uSize;
 
 //Visual size and offset
-uniform mediump vec2 offset;
+uniform highp vec2 offset;
 uniform highp vec2 size;
 uniform mediump vec4 offsetSizeMode;
 uniform mediump vec2 origin;
index ff5778b8f4093a3cf2bd095a6a0d99fc0856d622..acd347eb17144023c1df8f8232267e9e80ca5b66 100644 (file)
@@ -1,12 +1,12 @@
-precision mediump float;
-varying mediump vec2 vTexCoord;
+precision highp float;
+varying highp vec2 vTexCoord;
 uniform sampler2D sTexture;
 uniform sampler2D sEffect;
 uniform lowp vec4 uColor;
-uniform float uBloomIntensity;
-uniform float uImageIntensity;
-uniform float uBloomSaturation;
-uniform float uImageSaturation;
+uniform highp float uBloomIntensity;
+uniform highp float uImageIntensity;
+uniform highp float uBloomSaturation;
+uniform highp float uImageSaturation;
 
 vec4 ChangeSaturation(vec4 col, float sat)
 {
@@ -16,8 +16,8 @@ vec4 ChangeSaturation(vec4 col, float sat)
 
 void main()
 {
-  mediump vec4 image;
-  mediump vec4 bloom;
+  highp vec4 image;
+  highp vec4 bloom;
   image = texture2D(sTexture, vTexCoord);
   bloom = texture2D(sEffect, vTexCoord);
   image = ChangeSaturation(image, uImageSaturation) * uImageIntensity;
index 98439ed87d3c46f44558b199bafa05399d3cfb72..e80514295715a636059875e1cf5e9500a11ebd00 100644 (file)
@@ -1,12 +1,13 @@
-varying mediump vec2 vTexCoord;
+precision highp float;
+varying highp vec2 vTexCoord;
 uniform sampler2D sTexture;
 uniform lowp vec4 uColor;
-uniform mediump float uBloomThreshold;
-uniform mediump float uRecipOneMinusBloomThreshold;
+uniform highp float uBloomThreshold;
+uniform highp float uRecipOneMinusBloomThreshold;
 
 void main()
 {
-  mediump vec4 col;
+  highp vec4 col;
   col = texture2D(sTexture, vTexCoord);
   col = (col - uBloomThreshold) * uRecipOneMinusBloomThreshold; // remove intensities lower than the thresold and remap intensities above the threshold to [0..1]
   gl_FragColor = clamp(col, 0.0, 1.0);
index 0f0ca14c22dec9db554c3b032003876dc6d98fa2..00d2491f94079d16cfca844e365d71c6ce59bb22 100644 (file)
@@ -1,3 +1,4 @@
+precision highp float;
 varying highp vec2 vTexCoord;
 uniform sampler2D sTexture;
 uniform highp vec2 uSampleOffsets[NUM_SAMPLES];
index 7572a28e0ab31b855e8a080e700e7287f1a71260..2de2ae0fab1dd51f616021cc19f7c7765d9c8e70 100644 (file)
@@ -2,7 +2,7 @@ precision highp float;
 uniform float uBlurStrength;
 uniform sampler2D sTexture;
 uniform sampler2D sEffect;
-varying mediump vec2 vTexCoord;
+varying highp vec2 vTexCoord;
 
 void main()
 {
index 0017e28533ea7bea23fb87d5289ce7a84837e1fd..864413111ae6d0b9e469bcec98d7ac90dc8e86f8 100644 (file)
@@ -1,5 +1,5 @@
 precision highp float;
-varying mediump vec2 vTexCoord;
+varying highp vec2 vTexCoord;
 uniform sampler2D sTexture;
 uniform vec2 uSampleOffsets[NUM_SAMPLES];
 uniform float uSampleWeights[NUM_SAMPLES];
index 11950925c8556093deb810fedb29342ae74d2ce0..488a9b560d6fb79577944dc85a3a5af8a4e21c8f 100644 (file)
@@ -1,8 +1,9 @@
-INPUT mediump float vAlpha;
+precision highp float;
+INPUT highp float vAlpha;
 
 uniform lowp vec4 uColor;
 uniform lowp vec4 borderColor;
-uniform mediump float borderSize;
+uniform highp float borderSize;
 
 void main()
 {
index e573f37916e1662760c792b66b0ea35a3c324275..4baeded407f21b09c50f075305e7c9970bac52b9 100644 (file)
@@ -1,14 +1,15 @@
-INPUT mediump vec2 aPosition;
-INPUT mediump vec2 aDrift;
-OUTPUT mediump float vAlpha;
+precision highp float;
+INPUT highp vec2 aPosition;
+INPUT highp vec2 aDrift;
+OUTPUT highp float vAlpha;
 
 uniform highp mat4 uMvpMatrix;
 uniform highp vec3 uSize;
-uniform mediump float borderSize;
+uniform highp float borderSize;
 
 void main()
 {
-  vec2 position = aPosition*(uSize.xy+vec2(0.75)) + aDrift*(borderSize+1.5);
+  highp vec2 position = aPosition*(uSize.xy+vec2(0.75)) + aDrift*(borderSize+1.5);
   gl_Position = uMvpMatrix * vec4(position, 0.0, 1.0);
   vAlpha = min( abs(aDrift.x), abs(aDrift.y) )*(borderSize+1.5);
 }
\ No newline at end of file
index de9da9894d4470428dc2497e8fcfba39fb00d92e..ff503cc6e167864745e5b1f30bb7280d8d252ccb 100644 (file)
@@ -1,3 +1,4 @@
+precision highp float;
 uniform lowp vec4 uColor;
 uniform lowp vec4 borderColor;
 
index 6bf08fac4520262a8aeaa631c29e4d36ae8b5417..404662f3d7cc46065e7050cdc000b908b3667f1f 100644 (file)
@@ -1,12 +1,13 @@
-INPUT mediump vec2 aPosition;
-INPUT mediump vec2 aDrift;
+precision highp float;
+INPUT highp vec2 aPosition;
+INPUT highp vec2 aDrift;
 
 uniform highp mat4 uMvpMatrix;
 uniform highp vec3 uSize;
-uniform mediump float borderSize;
+uniform highp float borderSize;
 
 //Visual size and offset
-uniform mediump vec2 offset;
+uniform highp vec2 offset;
 uniform highp vec2 size;
 uniform mediump vec4 offsetSizeMode;
 uniform mediump vec2 origin;
@@ -14,13 +15,13 @@ uniform mediump vec2 anchorPoint;
 
 vec2 ComputeVertexPosition()
 {
-  vec2 visualSize = mix(size * uSize.xy, size, offsetSizeMode.zw );
-  vec2 visualOffset = mix(offset * uSize.xy, offset, offsetSizeMode.xy);
+  highp vec2 visualSize = mix(size * uSize.xy, size, offsetSizeMode.zw );
+  highp vec2 visualOffset = mix(offset * uSize.xy, offset, offsetSizeMode.xy);
   return (aPosition + anchorPoint)*visualSize + visualOffset + origin * uSize.xy;
 }
 
 void main()
 {
-  vec2 position = ComputeVertexPosition() + aDrift*borderSize;
+  highp vec2 position = ComputeVertexPosition() + aDrift*borderSize;
   gl_Position = uMvpMatrix * vec4(position, 0.0, 1.0);
 }
\ No newline at end of file
index b62f151af52617f12f22ea59b82c89349c137d57..163fbb7c35f98802e089d2d03f21cae648a785a5 100644 (file)
@@ -1,3 +1,4 @@
+precision highp float;
 // Use the actor color to paint every layer
 uniform lowp vec4 uColor;
 
index da6933200f681059a12edf6f0c4c376c8057479d..df93307a4e2db11d3e528bfe2dd025aa790c76ae 100644 (file)
@@ -1,9 +1,10 @@
+precision highp float;
 // Modify the vertex position according to the bounce coefficient
-attribute mediump vec3    aPosition1;
-attribute mediump vec3    aPosition2;
-uniform   mediump mat4    uMvpMatrix;
-uniform   mediump vec3    uSize;
-uniform   mediump float   uBounceCoefficient;
+attribute highp vec3    aPosition1;
+attribute highp vec3    aPosition2;
+uniform   highp mat4    uMvpMatrix;
+uniform   highp vec3    uSize;
+uniform   highp float   uBounceCoefficient;
 
 void main()
 {
index 69ff187aa81db11621483aeb875fbe26eecc6aaa..d1537254f4475392512bf3bc7b7b4d5a60fd3428 100644 (file)
@@ -1,7 +1,7 @@
 precision highp float;
 uniform vec3 uHSVDelta;
 uniform float uIgnoreAlpha;
-varying mediump vec2 vTexCoord;
+varying highp vec2 vTexCoord;
 uniform sampler2D sTexture;
 
 float rand(vec2 co)
index fa06063367d6c54e2d7426846f67658a8888ff63..17b39d043469c08b114d5282a3dafd13b8cfc696 100644 (file)
@@ -1,9 +1,10 @@
-varying mediump vec2 vTexCoord;
+precision highp float;
+varying highp vec2 vTexCoord;
 uniform lowp vec4 uColor;
 uniform sampler2D sBackground;
 uniform sampler2D sBubbleShape;
-varying mediump float vPercentage;
-varying mediump vec2 vEffectTexCoord;
+varying highp float vPercentage;
+varying highp vec2 vEffectTexCoord;
 
 void main()
 {
index 538d282a0d6e558579f9115efd19e3e0342f260e..c6753e3d3a44f8111e3cab6ae9b1519b334a3b90 100644 (file)
@@ -1,10 +1,11 @@
-attribute mediump float aIndex;
-attribute mediump vec2  aPosition;
+precision highp float;
+attribute highp float aIndex;
+attribute highp vec2  aPosition;
 attribute highp   vec2  aTexCoord;
-varying   mediump vec2  vTexCoord;
-uniform   mediump mat4  uMvpMatrix;
+varying   highp vec2  vTexCoord;
+uniform   highp mat4  uMvpMatrix;
 // the gravity applied to the y direction
-uniform mediump float uGravity;
+uniform highp float uGravity;
 // xy: the emit position of the bubble; zw: the destination of the bubble.
 // The bubble is moving from (xy) to (zw plus the y drop influenced by gravity).
 uniform vec4 uStartEndPosition[NUMBER_OF_BUBBLE];
index 06690f8779b2e1ed2da13ec221815639ba90bb45..bb9aa231ba77df75bddac5913588043e7adfacbe 100644 (file)
@@ -1,6 +1,6 @@
 precision highp float;
 uniform vec3 uHSVDelta;
-varying mediump vec2 vTexCoord;
+varying highp vec2 vTexCoord;
 uniform sampler2D sTexture;
 
 float rand(vec2 co)
index f7bd5779bfb7ca671521c4e69666eefddce5f7be..2705ad59d7e03fe0e435c764146e7769ed06c071 100644 (file)
@@ -1,8 +1,9 @@
-attribute mediump vec2 aPosition;
-attribute mediump vec2 aTexCoord;
-uniform mediump vec3 uSize;
-uniform mediump mat4 uMvpMatrix;
-varying mediump vec2 vTexCoord;
+precision highp float;
+attribute highp vec2 aPosition;
+attribute highp vec2 aTexCoord;
+uniform highp vec3 uSize;
+uniform highp mat4 uMvpMatrix;
+varying highp vec2 vTexCoord;
 
 void main()
 {
index e122bca4147377984ef3de36715bb20390815ef7..91cb54ebaf1aaec80cff3fd718607b076941acda 100644 (file)
@@ -1,5 +1,6 @@
+precision highp float;
 uniform lowp vec4 uColor;
-varying mediump vec2 vTexCoord;
+varying highp vec2 vTexCoord;
 uniform sampler2D sTexture;
 
 void main()
index 69889936da3a47f55a757ba6bc9a3603112d79a6..a7b041532a1617f6d88d8ace4582b6516af0d406 100644 (file)
@@ -1,5 +1,6 @@
-attribute mediump vec2 aPosition;
-varying mediump vec2 vTexCoord;
+precision highp float;
+attribute highp vec2 aPosition;
+varying highp vec2 vTexCoord;
 uniform highp mat4 uMvpMatrix;
 uniform highp vec3 uSize;
 
index 698717643a71ab0f41a9ec21a041c0ce6145b37e..7a5228cc323de5ebb93ca8091c63fe0a26ce61c2 100644 (file)
@@ -1,3 +1,4 @@
+precision highp float;
 #if defined(IS_REQUIRED_ROUNDED_CORNER) || defined(IS_REQUIRED_BORDERLINE) || defined(IS_REQUIRED_BLUR)
 INPUT highp vec2 vPosition;
 FLAT INPUT highp vec2 vRectSize;
@@ -176,8 +177,8 @@ lowp vec4 convertBorderlineColor(lowp vec4 textureColor)
     borderlineOpacity *= min(1.0, borderlineWidth / gPotentialRange);
   }
 
-  lowp vec3  borderlineColorRGB   = borderlineColor.rgb * uActorColor.rgb;
-  lowp float borderlineColorAlpha = borderlineColor.a * uActorColor.a;
+  highp vec3  borderlineColorRGB   = borderlineColor.rgb * uActorColor.rgb;
+  highp float borderlineColorAlpha = borderlineColor.a * uActorColor.a;
   // NOTE : color-visual is always preMultiplied.
   borderlineColorRGB *= borderlineColorAlpha;
 
@@ -197,7 +198,7 @@ lowp vec4 convertBorderlineColor(lowp vec4 textureColor)
     else
     {
       // potential is in texture range.
-      lowp float textureAlphaScale = mix(1.0, 0.0, smoothstep(MinTexturelinePotential, MaxTexturelinePotential, potential));
+      highp float textureAlphaScale = mix(1.0, 0.0, smoothstep(MinTexturelinePotential, MaxTexturelinePotential, potential));
       textureColor.a *= textureAlphaScale;
       textureColor.rgb *= textureAlphaScale;
     }
@@ -214,8 +215,8 @@ lowp vec4 convertBorderlineColor(lowp vec4 textureColor)
     // If premultipliedAlpha == 1.0, just return vec4(rgb*alpha, alpha)
     // Else, return vec4((rgb*alpha) / alpha, alpha)
 
-    lowp float finalAlpha = mix(textureColor.a, 1.0, borderlineColorAlpha);
-    lowp vec3  finalMultipliedRGB = borderlineColorRGB + (1.0 - borderlineColorAlpha) * textureColor.rgb;
+    highp float finalAlpha = mix(textureColor.a, 1.0, borderlineColorAlpha);
+    highp vec3  finalMultipliedRGB = borderlineColorRGB + (1.0 - borderlineColorAlpha) * textureColor.rgb;
     return vec4(finalMultipliedRGB, finalAlpha);
   }
   return mix(textureColor, vec4(borderlineColorRGB, borderlineColorAlpha), borderlineOpacity);
index 0e022793077a2dfaf0b8c0a8e451faa65b472527..05e87e9eea99577c24eb4a02ecd474e7d63d1fa7 100644 (file)
@@ -1,4 +1,5 @@
-INPUT mediump vec2 aPosition;
+precision highp float;
+INPUT highp vec2 aPosition;
 #if defined(IS_REQUIRED_ROUNDED_CORNER) || defined(IS_REQUIRED_BORDERLINE) || defined(IS_REQUIRED_BLUR)
 OUTPUT highp vec2 vPosition;
 FLAT OUTPUT highp vec2 vRectSize;
index b8b19ac5a6589b595e8742b0eec8d3b4adc98b81..32227c6b3caf45190aef28bca8451977d41c0876 100644 (file)
@@ -1,4 +1,5 @@
-varying mediump vec2 vTexCoord;
+precision highp float;
+varying highp vec2 vTexCoord;
 uniform sampler2D sTexture;
 uniform lowp vec4 uColor;
 uniform lowp vec4 uSamplerRect;
index fccd0355e05bc0e7a90b37a0e02860666b2ec977..b19d304bdfd8666cd1bb24795a0257aee93fece9 100644 (file)
@@ -1,12 +1,13 @@
-attribute mediump vec2 aPosition;
-varying mediump vec2 vTexCoord;
-uniform mediump mat4 uMvpMatrix;
-uniform mediump vec3 uSize;
-uniform mediump vec4 uTextureRect;
+precision highp float;
+attribute highp vec2 aPosition;
+varying highp vec2 vTexCoord;
+uniform highp mat4 uMvpMatrix;
+uniform highp vec3 uSize;
+uniform highp vec4 uTextureRect;
 
 void main()
 {
-  mediump vec4 vertexPosition = vec4(aPosition, 0.0, 1.0);
+  highp vec4 vertexPosition = vec4(aPosition, 0.0, 1.0);
   vertexPosition.xyz *= uSize;
   vertexPosition = uMvpMatrix * vertexPosition;
 
index e28a074879e0253228b5f8273b4b1f02d8d61e87..910e67eeca01fb75e1881546bd2bfd8abadfb321 100644 (file)
@@ -1,5 +1,6 @@
+precision highp float;
 varying float        vPercentage;
-varying mediump vec2 vTexCoord;
+varying highp vec2 vTexCoord;
 
 uniform sampler2D sTexture;
 uniform lowp vec4 uColor;
index be8c3dfc777ec08be78bf321a0ca4b265da3dfbd..b7b82797c9d05b4f9ecd81ce71d62475bf2eb181 100644 (file)
@@ -1,6 +1,7 @@
-attribute mediump vec2 aPosition;
+precision highp float;
+attribute highp vec2 aPosition;
 
-uniform mediump mat4   uMvpMatrix;
+uniform highp mat4   uMvpMatrix;
 uniform vec3           uSize;
 uniform vec4           uTextureRect;
 
@@ -15,7 +16,7 @@ varying vec2           vTexCoord;
 
 void main()
 {
-  mediump vec4 vertexPosition = vec4(aPosition, 0.0, 1.0);
+  highp vec4 vertexPosition = vec4(aPosition, 0.0, 1.0);
   vertexPosition.xyz *= uSize;
   vertexPosition = uMvpMatrix * vertexPosition;
   gl_Position = vertexPosition;
index 82c294da23689c00cec314dd91e259fb8a2efa12..cd5b15246070816d1d99d5e5c03de6655caeb34c 100644 (file)
@@ -1,10 +1,11 @@
-varying mediump vec2 vTexCoord;
+precision highp float;
+varying highp vec2 vTexCoord;
 
-uniform mediump float uGlowBoundary;
-uniform mediump vec2  uOutlineParams;
+uniform highp float uGlowBoundary;
+uniform highp vec2  uOutlineParams;
 uniform lowp    vec4  uOutlineColor;
 uniform lowp    vec4  uShadowColor;
-uniform mediump vec2  uShadowOffset;
+uniform highp vec2  uShadowOffset;
 uniform lowp    vec4  uGlowColor;
 uniform lowp    float uDoOutline;
 uniform lowp    float uDoShadow;
@@ -16,22 +17,22 @@ uniform lowp vec4 uColor;
 void main()
 {
   // sample distance field
-  mediump float smoothing = 0.5;
+  highp float smoothing = 0.5;
 
-  mediump float distance = texture2D(sTexture, vTexCoord).a;
-  mediump float smoothWidth = fwidth(distance);
-  mediump float alphaFactor = smoothstep(smoothing - smoothWidth, smoothing + smoothWidth, distance);
+  highp float distance = texture2D(sTexture, vTexCoord).a;
+  highp float smoothWidth = fwidth(distance);
+  highp float alphaFactor = smoothstep(smoothing - smoothWidth, smoothing + smoothWidth, distance);
   lowp    vec4  color;
 
   if (uDoShadow == 0.0)
   {
-    mediump float alpha = uColor.a * alphaFactor;
+    highp float alpha = uColor.a * alphaFactor;
     lowp    vec4  rgb = uColor;
 
     if (uDoOutline > 0.0)
     {
-      mediump float outlineWidth = uOutlineParams[1] + smoothWidth;
-      mediump float outlineBlend = smoothstep(uOutlineParams[0] - outlineWidth, uOutlineParams[0] + outlineWidth, distance);
+      highp float outlineWidth = uOutlineParams[1] + smoothWidth;
+      highp float outlineBlend = smoothstep(uOutlineParams[0] - outlineWidth, uOutlineParams[0] + outlineWidth, distance);
       alpha = smoothstep(smoothing - smoothWidth, smoothing + smoothWidth, distance);
       rgb = mix(uOutlineColor, uColor, outlineBlend);
     }
@@ -48,9 +49,9 @@ void main()
 
   else // (uDoShadow > 0.0)
   {
-    mediump float shadowDistance = texture2D(sTexture, vTexCoord - uShadowOffset).a;
-    mediump float inText = alphaFactor;
-    mediump float inShadow = smoothstep(smoothing - smoothWidth, smoothing + smoothWidth, shadowDistance);
+    highp float shadowDistance = texture2D(sTexture, vTexCoord - uShadowOffset).a;
+    highp float inText = alphaFactor;
+    highp float inShadow = smoothstep(smoothing - smoothWidth, smoothing + smoothWidth, shadowDistance);
 
     // inside object, outside shadow
     if (inText == 1.0)
index 9c66b3b2a9f29811d2678264104857ad25f4acd8..078da8100cf0dd9ec9630e7e579cb9f98dc5a40f 100644 (file)
@@ -1,4 +1,5 @@
-varying mediump vec2 vTexCoord;
+precision highp float;
+varying highp vec2 vTexCoord;
 uniform sampler2D sTexture;
 uniform lowp vec4 effectColor;
 
index e8b7984db93314273391895f5376ea603a210a75..59619a3e9e86b9de1fb41a63df3d38139d7c60eb 100644 (file)
@@ -1,12 +1,13 @@
-attribute mediump vec2 aPosition;
-varying mediump vec2 vTexCoord;
-uniform mediump mat4 uMvpMatrix;
-uniform mediump vec3 uSize;
-uniform mediump vec3 effectOffset;
+precision highp float;
+attribute highp vec2 aPosition;
+varying highp vec2 vTexCoord;
+uniform highp mat4 uMvpMatrix;
+uniform highp vec3 uSize;
+uniform highp vec3 effectOffset;
 
 void main()
 {
-  mediump vec4 vertexPosition = vec4(aPosition, 0.0, 1.0);
+  highp vec4 vertexPosition = vec4(aPosition, 0.0, 1.0);
   vertexPosition.xyz *= uSize;
   vertexPosition.xyz += effectOffset;
   vertexPosition = uMvpMatrix * vertexPosition;
index 1ef9fc19a8b53b749c6ed16c9b8ed67f62e02471..fb7b11a52ff290c42771b617434887810c75d9d5 100644 (file)
@@ -1,4 +1,5 @@
-varying mediump vec2 vTexCoord;
+precision highp float;
+varying highp vec2 vTexCoord;
 uniform sampler2D sTexture;
 uniform lowp vec4 uEffectColor;
 
index 2a6761aea47e3965e90fc0d6df6569b91044dae5..a40820bb248a14410a98808b222a6baf51385066 100644 (file)
@@ -1,5 +1,5 @@
 precision highp float;
-varying mediump vec2 vTexCoord;
+varying highp vec2 vTexCoord;
 uniform sampler2D sTexture;
 uniform vec2 uTexScale;
 uniform vec3 uCoefficient;
index 0f0ca14c22dec9db554c3b032003876dc6d98fa2..00d2491f94079d16cfca844e365d71c6ce59bb22 100644 (file)
@@ -1,3 +1,4 @@
+precision highp float;
 varying highp vec2 vTexCoord;
 uniform sampler2D sTexture;
 uniform highp vec2 uSampleOffsets[NUM_SAMPLES];
index 9b0b9175529097e0f4ee97a1b76b29f9cdeebee8..ed5664052e9b026f4a36ffd2cf69b178e78afd24 100644 (file)
@@ -1,5 +1,6 @@
+precision highp float;
 uniform lowp vec4          uColor;
-varying mediump vec2       vTexCoord;
+varying highp vec2       vTexCoord;
 uniform samplerExternalOES sTexture;
 
 void main()
index eeec3837324a3f6d7d4c56e462e9101c73d54807..401fb48df1504c145e5d3484501734acc54cbd84 100644 (file)
@@ -1,7 +1,8 @@
-attribute mediump vec2 aPosition;
-uniform mediump mat4   uMvpMatrix;
-uniform mediump vec3   uSize;
-varying mediump vec2   vTexCoord;
+precision highp float;
+attribute highp vec2 aPosition;
+uniform highp mat4   uMvpMatrix;
+uniform highp vec3   uSize;
+varying highp vec2   vTexCoord;
 
 void main()
 {
index 8c89734117b58addade2c90fee9d06d39f897317..bbe0fa05740355cac47f0db805949cd054c07aea 100644 (file)
@@ -1,4 +1,5 @@
-INPUT mediump vec2 vTexCoord;
+precision highp float;
+INPUT highp vec2 vTexCoord;
 #if defined(IS_REQUIRED_ROUNDED_CORNER) || defined(IS_REQUIRED_BORDERLINE)
 INPUT highp vec2 vPosition;
 FLAT INPUT highp vec2 vRectSize;
@@ -10,7 +11,7 @@ FLAT INPUT highp vec4 vCornerRadius;
 #endif
 
 // scale factor to fit start and end position of gradient.
-uniform mediump float uTextureCoordinateScaleFactor;
+uniform highp float uTextureCoordinateScaleFactor;
 
 uniform sampler2D sTexture; // sampler1D?
 uniform lowp vec4 uColor;
@@ -167,8 +168,8 @@ lowp vec4 convertBorderlineColor(lowp vec4 textureColor)
     borderlineOpacity *= min(1.0, borderlineWidth / gPotentialRange);
   }
 
-  lowp vec3  borderlineColorRGB   = borderlineColor.rgb * uActorColor.rgb;
-  lowp float borderlineColorAlpha = borderlineColor.a * uActorColor.a;
+  highp vec3  borderlineColorRGB   = borderlineColor.rgb * uActorColor.rgb;
+  highp float borderlineColorAlpha = borderlineColor.a * uActorColor.a;
   // NOTE : gradient-visual is always preMultiplied.
   borderlineColorRGB *= borderlineColorAlpha;
 
@@ -188,7 +189,7 @@ lowp vec4 convertBorderlineColor(lowp vec4 textureColor)
     else
     {
       // potential is in texture range.
-      lowp float textureAlphaScale = mix(1.0, 0.0, smoothstep(MinTexturelinePotential, MaxTexturelinePotential, potential));
+      highp float textureAlphaScale = mix(1.0, 0.0, smoothstep(MinTexturelinePotential, MaxTexturelinePotential, potential));
       textureColor.a *= textureAlphaScale;
       textureColor.rgb *= textureAlphaScale;
     }
@@ -205,8 +206,8 @@ lowp vec4 convertBorderlineColor(lowp vec4 textureColor)
     // If premultipliedAlpha == 1.0, just return vec4(rgb*alpha, alpha)
     // Else, return vec4((rgb*alpha) / alpha, alpha)
 
-    lowp float finalAlpha = mix(textureColor.a, 1.0, borderlineColorAlpha);
-    lowp vec3  finalMultipliedRGB = borderlineColorRGB + (1.0 - borderlineColorAlpha) * textureColor.rgb;
+    highp float finalAlpha = mix(textureColor.a, 1.0, borderlineColorAlpha);
+    highp vec3  finalMultipliedRGB = borderlineColorRGB + (1.0 - borderlineColorAlpha) * textureColor.rgb;
     return vec4(finalMultipliedRGB, finalAlpha);
   }
   return mix(textureColor, vec4(borderlineColorRGB, borderlineColorAlpha), borderlineOpacity);
@@ -238,7 +239,7 @@ mediump float calculateCornerOpacity()
 void main()
 {
 #ifdef RADIAL
-  mediump float radialTexCoord = ((length(vTexCoord) - 0.5) * uTextureCoordinateScaleFactor) + 0.5;
+  highp float radialTexCoord = ((length(vTexCoord) - 0.5) * uTextureCoordinateScaleFactor) + 0.5;
   lowp vec4 textureColor = TEXTURE(sTexture, vec2(radialTexCoord, 0.5)) * uColor;
 #else
   lowp vec4 textureColor = TEXTURE(sTexture, vec2(vTexCoord.y, 0.5)) * uColor;
index 95feb12b7ede892e4ced084b853aef06408d3598..1c8e4b88c13c7270b720f12a409e97dec9be0034 100644 (file)
@@ -1,5 +1,6 @@
-INPUT mediump vec2 aPosition;
-OUTPUT mediump vec2 vTexCoord;
+precision highp float;
+INPUT highp vec2 aPosition;
+OUTPUT highp vec2 vTexCoord;
 #if defined(IS_REQUIRED_ROUNDED_CORNER) || defined(IS_REQUIRED_BORDERLINE)
 OUTPUT highp vec2 vPosition;
 FLAT OUTPUT highp vec2 vRectSize;
@@ -12,7 +13,7 @@ FLAT OUTPUT highp vec4 vCornerRadius;
 
 uniform highp mat4 uMvpMatrix;
 uniform highp vec3 uSize;
-uniform mediump mat3 uAlignmentMatrix;
+uniform highp mat3 uAlignmentMatrix;
 
 #if defined(IS_REQUIRED_ROUNDED_CORNER) || defined(IS_REQUIRED_BORDERLINE)
 // Be used when we calculate anti-alias range near 1 pixel.
index 5997336c3f44697d5a55d3af2b23f98db8a520f8..dec913f5bf9d159124af10eaee7bb2f3934f4608 100644 (file)
@@ -1,17 +1,18 @@
-attribute mediump vec2 aPosition;
+precision highp float;
+attribute highp vec2 aPosition;
 
-uniform mediump mat4 uMvpMatrix;
+uniform highp mat4 uMvpMatrix;
 uniform vec3 uSize;
 uniform vec4 uTextureRect;
 
 varying vec2 vTexCoord;
 
-uniform mediump vec2 uTopLeft;
-uniform mediump vec2 uBottomRight;
+uniform highp vec2 uTopLeft;
+uniform highp vec2 uBottomRight;
 
 void main()
 {
-  mediump vec4 position = vec4(aPosition, 0.0, 1.0);
+  highp vec4 position = vec4(aPosition, 0.0, 1.0);
   position.xyz *= uSize;
   gl_Position = uMvpMatrix * position;
 
index 31e05b273386a3cd8af0c90fcdce10f497112fa4..747bfa9a872c68a5e4b19605f21eeeedf82a2671 100644 (file)
@@ -1,4 +1,5 @@
-INPUT mediump vec2 vTexCoord;
+precision highp float;
+INPUT highp vec2 vTexCoord;
 #if defined(IS_REQUIRED_DEBUG_VISUAL_SHADER) || defined(IS_REQUIRED_ROUNDED_CORNER) || defined(IS_REQUIRED_BORDERLINE)
 INPUT highp vec2 vPosition;
 FLAT INPUT highp vec2 vRectSize;
@@ -22,11 +23,11 @@ uniform sampler2D sTextureV;
 #ifdef IS_REQUIRED_ALPHA_MASKING
 uniform sampler2D sMaskTexture;
 uniform lowp float uYFlipMaskTexture;
-INPUT mediump vec2 vMaskTexCoord;
+INPUT highp vec2 vMaskTexCoord;
 #endif
 
 #ifdef ATLAS_DEFAULT_WARP
-uniform mediump vec4 uAtlasRect;
+uniform highp vec4 uAtlasRect;
 #elif defined(ATLAS_CUSTOM_WARP)
 // WrapMode -- 0: CLAMP; 1: REPEAT; 2: REFLECT;
 uniform lowp vec2 wrapMode;
@@ -51,9 +52,9 @@ uniform highp vec4 cornerSquareness;
 #endif
 
 #ifdef ATLAS_CUSTOM_WARP
-mediump float wrapCoordinate( mediump vec2 range, mediump float coordinate, lowp float wrap )
+highp float wrapCoordinate( highp vec2 range, highp float coordinate, lowp float wrap )
 {
-  mediump float coord;
+  highp float coord;
   if( wrap > 1.5 ) /* REFLECT */
     coord = 1.0 - abs(fract(coordinate*0.5)*2.0 - 1.0);
   else /* warp is 0 or 1 */
@@ -203,8 +204,8 @@ lowp vec4 convertBorderlineColor(lowp vec4 textureColor)
     borderlineOpacity *= min(1.0, borderlineWidth / gPotentialRange);
   }
 
-  lowp vec3  borderlineColorRGB   = borderlineColor.rgb * uActorColor.rgb;
-  lowp float borderlineColorAlpha = borderlineColor.a * uActorColor.a;
+  highp vec3  borderlineColorRGB   = borderlineColor.rgb * uActorColor.rgb;
+  highp float borderlineColorAlpha = borderlineColor.a * uActorColor.a;
   borderlineColorRGB *= mix(1.0, borderlineColorAlpha, premultipliedAlpha);
 
   // Calculate inside of borderline when alpha is between (0.0  1.0). So we need to apply texture color.
@@ -223,7 +224,7 @@ lowp vec4 convertBorderlineColor(lowp vec4 textureColor)
     else
     {
       // potential is in texture range.
-      lowp float textureAlphaScale = mix(1.0, 0.0, smoothstep(MinTexturelinePotential, MaxTexturelinePotential, potential));
+      highp float textureAlphaScale = mix(1.0, 0.0, smoothstep(MinTexturelinePotential, MaxTexturelinePotential, potential));
       textureColor.a *= textureAlphaScale;
       textureColor.rgb *= mix(textureColor.a, textureAlphaScale, premultipliedAlpha);
     }
@@ -239,8 +240,8 @@ lowp vec4 convertBorderlineColor(lowp vec4 textureColor)
     // If premultipliedAlpha == 1.0, just return vec4(rgb*alpha, alpha)
     // Else, return vec4((rgb*alpha) / alpha, alpha)
 
-    lowp float finalAlpha = mix(textureColor.a, 1.0, borderlineColorAlpha);
-    lowp vec3  finalMultipliedRGB = borderlineColorRGB + (1.0 - borderlineColorAlpha) * textureColor.rgb;
+    highp float finalAlpha = mix(textureColor.a, 1.0, borderlineColorAlpha);
+    highp vec3  finalMultipliedRGB = borderlineColorRGB + (1.0 - borderlineColorAlpha) * textureColor.rgb;
     // TODO : Need to find some way without division
     return vec4(finalMultipliedRGB * mix(1.0 / finalAlpha, 1.0, premultipliedAlpha), finalAlpha);
   }
@@ -271,7 +272,7 @@ mediump float calculateCornerOpacity()
 #endif
 
 #if defined(IS_REQUIRED_YUV_TO_RGB) || defined(IS_REQUIRED_UNIFIED_YUV_AND_RGB)
-lowp vec4 ConvertYuvToRgba(mediump vec2 texCoord)
+lowp vec4 ConvertYuvToRgba(highp vec2 texCoord)
 {
 #ifdef IS_REQUIRED_UNIFIED_YUV_AND_RGB
   // Special case when shader use YUV but actual textures are not YUV format.
@@ -282,10 +283,10 @@ lowp vec4 ConvertYuvToRgba(mediump vec2 texCoord)
   }
 #endif
 
-  lowp float y = TEXTURE(sTexture, texCoord).r;
-  lowp float u = TEXTURE(sTextureU, texCoord).r - 0.5;
-  lowp float v = TEXTURE(sTextureV, texCoord).r - 0.5;
-  lowp vec4 rgba;
+  highp float y = TEXTURE(sTexture, texCoord).r;
+  highp float u = TEXTURE(sTextureU, texCoord).r - 0.5;
+  highp float v = TEXTURE(sTextureV, texCoord).r - 0.5;
+  highp vec4 rgba;
   rgba.r = y + (1.403 * v);
   rgba.g = y - (0.344 * u) - (0.714 * v);
   rgba.b = y + (1.770 * u);
@@ -421,12 +422,12 @@ mediump vec3 ApplyDebugMixColor(mediump vec4 originColor)
 void main()
 {
 #ifdef ATLAS_DEFAULT_WARP
-  mediump vec2 texCoord = clamp( mix( uAtlasRect.xy, uAtlasRect.zw, vTexCoord ), uAtlasRect.xy, uAtlasRect.zw );
+  highp vec2 texCoord = clamp( mix( uAtlasRect.xy, uAtlasRect.zw, vTexCoord ), uAtlasRect.xy, uAtlasRect.zw );
 #elif defined(ATLAS_CUSTOM_WARP)
-  mediump vec2 texCoord = vec2( wrapCoordinate( uAtlasRect.xz, vTexCoord.x, wrapMode.x ),
-                                wrapCoordinate( uAtlasRect.yw, vTexCoord.y, wrapMode.y ) );
+  highp vec2 texCoord = vec2( wrapCoordinate( uAtlasRect.xz, vTexCoord.x, wrapMode.x ),
+                              wrapCoordinate( uAtlasRect.yw, vTexCoord.y, wrapMode.y ) );
 #else
-  mediump vec2 texCoord = vTexCoord;
+  highp vec2 texCoord = vTexCoord;
 #endif
 
 #if defined(IS_REQUIRED_YUV_TO_RGB) || defined(IS_REQUIRED_UNIFIED_YUV_AND_RGB)
@@ -436,7 +437,7 @@ void main()
 #endif
 
 #ifdef IS_REQUIRED_ALPHA_MASKING
-  mediump vec2 maskTexCoord = vMaskTexCoord;
+  highp vec2 maskTexCoord = vMaskTexCoord;
   maskTexCoord.y = mix(maskTexCoord.y, 1.0-maskTexCoord.y, uYFlipMaskTexture);
   mediump float maskAlpha = TEXTURE(sMaskTexture, maskTexCoord).a;
   textureColor.a *= maskAlpha;
index 8885cf771f4d9abc299378414e3d6845222b8f86..9b0c5f28dc37bf902f4ce15953452d2c1eb6669d 100644 (file)
@@ -1,5 +1,6 @@
-INPUT mediump vec2 aPosition;
-OUTPUT mediump vec2 vTexCoord;
+precision highp float;
+INPUT highp vec2 aPosition;
+OUTPUT highp vec2 vTexCoord;
 #if defined(IS_REQUIRED_DEBUG_VISUAL_SHADER) || defined(IS_REQUIRED_ROUNDED_CORNER) || defined(IS_REQUIRED_BORDERLINE)
 OUTPUT highp vec2 vPosition;
 FLAT OUTPUT highp vec2 vRectSize;
@@ -42,9 +43,9 @@ uniform highp vec4 cornerRadius;
 uniform mediump float cornerRadiusPolicy;
 #endif
 #ifdef IS_REQUIRED_ALPHA_MASKING
-OUTPUT  mediump vec2  vMaskTexCoord;
-uniform lowp    float cropToMask;
-uniform mediump vec2  maskTextureRatio;
+OUTPUT  highp vec2  vMaskTexCoord;
+uniform lowp  float cropToMask;
+uniform highp vec2  maskTextureRatio;
 #endif
 uniform highp vec2 extraSize;
 
index b482d8c806857ad435f41de01696c688d2951311..70da4c1ec4ca3b0f5bfab227cbf2d3e143edfbc3 100644 (file)
@@ -1,7 +1,7 @@
-precision mediump float;
-varying mediump vec2 vTexCoord;
-varying mediump vec3 vLightDirection;
-varying mediump vec3 vHalfVector;
+precision highp float;
+varying highp vec2 vTexCoord;
+varying highp vec3 vLightDirection;
+varying highp vec3 vHalfVector;
 uniform sampler2D sDiffuse;
 uniform sampler2D sNormal;
 uniform sampler2D sGloss;
index bc9ac8af0ad56634ab65784f1226ef15a8706419..2876174325ead663e2dc5aae2a993347cca33739 100644 (file)
@@ -1,23 +1,24 @@
+precision highp float;
 attribute highp vec3 aPosition;
 attribute highp vec2 aTexCoord;
 attribute highp vec3 aNormal;
 attribute highp vec3 aTangent;
 attribute highp vec3 aBiNormal;
-varying mediump vec2 vTexCoord;
-varying mediump vec3 vLightDirection;
-varying mediump vec3 vHalfVector;
-uniform mediump vec3 uSize;
-uniform mediump mat4 uMvpMatrix;
-uniform mediump mat4 uModelView;
-uniform mediump mat4 uViewMatrix;
-uniform mediump mat3 uNormalMatrix;
-uniform mediump mat4 uObjectMatrix;
-uniform mediump vec3 lightPosition;
-uniform mediump vec2 uStageOffset;
+varying highp vec2 vTexCoord;
+varying highp vec3 vLightDirection;
+varying highp vec3 vHalfVector;
+uniform highp vec3 uSize;
+uniform highp mat4 uMvpMatrix;
+uniform highp mat4 uModelView;
+uniform highp mat4 uViewMatrix;
+uniform highp mat3 uNormalMatrix;
+uniform highp mat4 uObjectMatrix;
+uniform highp vec3 lightPosition;
+uniform highp vec2 uStageOffset;
 
 //Visual size and offset
-uniform mediump vec2 offset;
-uniform mediump vec2 size;
+uniform highp vec2 offset;
+uniform highp vec2 size;
 uniform mediump vec4 offsetSizeMode;
 uniform mediump vec2 origin;
 uniform mediump vec2 anchorPoint;
index fd240fede562136d3e214aace0e0342f2868d963..e0baf6dfae75116209f0c5a60afe15315b956074 100644 (file)
@@ -1,7 +1,7 @@
-precision mediump float;
-varying mediump vec2 vTexCoord;
-varying mediump vec3 vIllumination;
-varying mediump float vSpecular;
+precision highp float;
+varying highp vec2 vTexCoord;
+varying highp vec3 vIllumination;
+varying highp float vSpecular;
 uniform sampler2D sDiffuse;
 uniform lowp vec4 uColor;
 
index 858c92dc0f946379a885427d662f818740f9274f..dfacaf381b8d3928f9804855d00dcbf208823a7a 100644 (file)
@@ -1,21 +1,22 @@
+precision highp float;
 attribute highp vec3 aPosition;
 attribute highp vec2 aTexCoord;
 attribute highp vec3 aNormal;
-varying mediump vec2 vTexCoord;
-varying mediump vec3 vIllumination;
-varying mediump float vSpecular;
-uniform mediump vec3 uSize;
-uniform mediump mat4 uMvpMatrix;
-uniform mediump mat4 uModelView;
-uniform mediump mat4 uViewMatrix;
-uniform mediump mat3 uNormalMatrix;
-uniform mediump mat4 uObjectMatrix;
-uniform mediump vec3 lightPosition;
-uniform mediump vec2 uStageOffset;
+varying highp vec2 vTexCoord;
+varying highp vec3 vIllumination;
+varying highp float vSpecular;
+uniform highp vec3 uSize;
+uniform highp mat4 uMvpMatrix;
+uniform highp mat4 uModelView;
+uniform highp mat4 uViewMatrix;
+uniform highp mat3 uNormalMatrix;
+uniform highp mat4 uObjectMatrix;
+uniform highp vec3 lightPosition;
+uniform highp vec2 uStageOffset;
 
 //Visual size and offset
-uniform mediump vec2 offset;
-uniform mediump vec2 size;
+uniform highp vec2 offset;
+uniform highp vec2 size;
 uniform mediump vec4 offsetSizeMode;
 uniform mediump vec2 origin;
 uniform mediump vec2 anchorPoint;
index 3f344a7568f1ea992138f9f356daf277c7ec8b9b..3255c3e2dca64089cc2ad483aa32d34aeb46be7c 100644 (file)
@@ -1,5 +1,5 @@
-precision mediump float;
-varying mediump vec3 vIllumination;
+precision highp float;
+varying highp vec3 vIllumination;
 uniform lowp vec4 uColor;
 
 void main()
index 0541a164eb46f1d9db286cac81d042231ba8026a..88beba49d2e360d4f68dd0a14a28f496cef936d1 100644 (file)
@@ -1,18 +1,19 @@
+precision highp float;
 attribute highp vec3 aPosition;
 attribute highp vec3 aNormal;
-varying mediump vec3 vIllumination;
-uniform mediump vec3 uSize;
-uniform mediump mat4 uMvpMatrix;
-uniform mediump mat4 uModelView;
-uniform mediump mat4 uViewMatrix;
-uniform mediump mat3 uNormalMatrix;
-uniform mediump mat4 uObjectMatrix;
-uniform mediump vec3 lightPosition;
-uniform mediump vec2 uStageOffset;
+varying highp vec3 vIllumination;
+uniform highp vec3 uSize;
+uniform highp mat4 uMvpMatrix;
+uniform highp mat4 uModelView;
+uniform highp mat4 uViewMatrix;
+uniform highp mat3 uNormalMatrix;
+uniform highp mat4 uObjectMatrix;
+uniform highp vec3 lightPosition;
+uniform highp vec2 uStageOffset;
 
 //Visual size and offset
-uniform mediump vec2 offset;
-uniform mediump vec2 size;
+uniform highp vec2 offset;
+uniform highp vec2 size;
 uniform mediump vec4 offsetSizeMode;
 uniform mediump vec2 origin;
 uniform mediump vec2 anchorPoint;
index b2db8e9c60d657feb1cf1f641c20b994555b91dd..0e5c87cb9199a73e69c06e6c9cb11ca0ed9b2b61 100644 (file)
@@ -1,7 +1,7 @@
-precision mediump float;
-varying mediump vec2 vTexCoord;
-varying mediump vec3 vLightDirection;
-varying mediump vec3 vHalfVector;
+precision highp float;
+varying highp vec2 vTexCoord;
+varying highp vec3 vLightDirection;
+varying highp vec3 vHalfVector;
 uniform sampler2D sDiffuse;
 uniform sampler2D sNormal;
 uniform sampler2D sGloss;
index 3e00350cac0d7e439c622678df7212e8ebc805e7..46f9d905283da4a1cfd74081d50421fb85a4e0c8 100644 (file)
@@ -1,17 +1,18 @@
+precision highp float;
 attribute highp vec3 aPosition;
 attribute highp vec2 aTexCoord;
 attribute highp vec3 aNormal;
 attribute highp vec3 aTangent;
 attribute highp vec3 aBiNormal;
-varying mediump vec2 vTexCoord;
-varying mediump vec3 vLightDirection;
-varying mediump vec3 vHalfVector;
-uniform mediump vec3 uSize;
-uniform mediump mat4 uMvpMatrix;
-uniform mediump mat4 uModelView;
-uniform mediump mat3 uNormalMatrix;
-uniform mediump mat4 uObjectMatrix;
-uniform mediump vec3 uLightPosition;
+varying highp vec2 vTexCoord;
+varying highp vec3 vLightDirection;
+varying highp vec3 vHalfVector;
+uniform highp vec3 uSize;
+uniform highp mat4 uMvpMatrix;
+uniform highp mat4 uModelView;
+uniform highp mat3 uNormalMatrix;
+uniform highp mat4 uObjectMatrix;
+uniform highp vec3 uLightPosition;
 
 void main()
 {
index 0c48098c83255ba00530d2d0c5cb5d8d79c6b299..bc601cc349d178a6f77ee459db1c92e4b21ea540 100644 (file)
@@ -1,7 +1,7 @@
-precision mediump float;
-varying mediump vec2 vTexCoord;
-varying mediump vec3 vIllumination;
-varying mediump float vSpecular;
+precision highp float;
+varying highp vec2 vTexCoord;
+varying highp vec3 vIllumination;
+varying highp float vSpecular;
 uniform sampler2D sDiffuse;
 uniform lowp vec4 uColor;
 
index 7987a184598e86dc55bfcc0621babefcacc05edb..474bb11a8a2198aa9baa2532d508ca46331610da 100644 (file)
@@ -1,15 +1,16 @@
+precision highp float;
 attribute highp vec3 aPosition;
 attribute highp vec2 aTexCoord;
 attribute highp vec3 aNormal;
-varying mediump vec2 vTexCoord;
-varying mediump vec3 vIllumination;
-varying mediump float vSpecular;
-uniform mediump vec3 uSize;
-uniform mediump mat4 uMvpMatrix;
-uniform mediump mat4 uModelView;
-uniform mediump mat3 uNormalMatrix;
-uniform mediump mat4 uObjectMatrix;
-uniform mediump vec3 uLightPosition;
+varying highp vec2 vTexCoord;
+varying highp vec3 vIllumination;
+varying highp float vSpecular;
+uniform highp vec3 uSize;
+uniform highp mat4 uMvpMatrix;
+uniform highp mat4 uModelView;
+uniform highp mat3 uNormalMatrix;
+uniform highp mat4 uObjectMatrix;
+uniform highp vec3 uLightPosition;
 
 void main()
 {
index d7be96f0512d4a16395a0dcaddb13bdadf273b5b..85f02b2c68227bf14c38cd76967c6e9458baf070 100644 (file)
@@ -1,5 +1,5 @@
-precision mediump float;
-varying mediump vec3 vIllumination;
+precision highp float;
+varying highp vec3 vIllumination;
 uniform lowp vec4 uColor;
 
 void main()
index a94619e68d6942a70acfbd8ff28744b5432d6836..ef3f83c9934b8bca1a4b686daa59ad0f02a60291 100644 (file)
@@ -1,13 +1,14 @@
+precision highp float;
 attribute highp vec3 aPosition;
 attribute highp vec2 aTexCoord;
 attribute highp vec3 aNormal;
-varying mediump vec3 vIllumination;
-uniform mediump vec3 uSize;
-uniform mediump mat4 uMvpMatrix;
-uniform mediump mat4 uModelView;
-uniform mediump mat3 uNormalMatrix;
-uniform mediump mat4 uObjectMatrix;
-uniform mediump vec3 uLightPosition;
+varying highp vec3 vIllumination;
+uniform highp vec3 uSize;
+uniform highp mat4 uMvpMatrix;
+uniform highp mat4 uModelView;
+uniform highp mat3 uNormalMatrix;
+uniform highp mat4 uObjectMatrix;
+uniform highp vec3 uLightPosition;
 
 void main()
 {
index b2c0857cb14698e21178fce7675e2896b55161b0..278964c0c160ca2a0e0c040f20f53d41afb92b6e 100644 (file)
@@ -1,4 +1,4 @@
-precision mediump float;
+precision highp float;
 
 uniform sampler2D sTexture;
 uniform vec4 uColor;
index ed3ca94f588d0a9f550a2d42fa585e20c8b17066..1a459c679b0525438e751f00c4f2ad1d117c5e29 100644 (file)
@@ -1,4 +1,4 @@
-precision mediump float;
+precision highp float;
 
 attribute vec2 aPosition;
 
index 8754a4fb700a9eb002fd53553a3bce9e5d4f3f0a..bb63199268bce46f063e6c74adeda7fc90c2f123 100644 (file)
@@ -1,4 +1,4 @@
-precision mediump float;
+precision highp float;
 
 uniform sampler2D sTexture;
 uniform vec4 uColor;
index 3ac7364111f7ad76ba42a102b2099145591bc45b..2994cc407a85856b57e9759735da8f61f6f2a6da 100644 (file)
@@ -1,4 +1,4 @@
-precision mediump float;
+precision highp float;
 
 attribute vec2 aPosition;
 
index c3db4749957c219c857b092473efe9368b4e8bf5..ac96282e971a2958b529023988815ea35311245b 100644 (file)
@@ -1,6 +1,7 @@
-attribute mediump vec2 aPosition;
-varying mediump vec2 vTexCoord;
-varying mediump vec2 vMaskTexCoord;
+precision highp float;
+attribute highp vec2 aPosition;
+varying highp vec2 vTexCoord;
+varying highp vec2 vMaskTexCoord;
 
 uniform highp mat4 uMvpMatrix;
 uniform highp vec3 uSize;
index fbb4bdf8aa45ef7a605380bfcb0dbacb11329329..ea7ed5f13a4a58fc49dae8bad0e5df8079574341 100644 (file)
@@ -1,5 +1,6 @@
-varying mediump vec2 vTexCoord;
-varying mediump vec2 vMaskTexCoord;
+precision highp float;
+varying highp vec2 vTexCoord;
+varying highp vec2 vMaskTexCoord;
 uniform sampler2D sTexture;
 uniform sampler2D sMask;
 uniform lowp vec4 uColor;
@@ -18,8 +19,8 @@ void main()
 
   mediump float maskAlpha = mask.a * auxiliaryImageAlpha;
 
-  lowp vec3 preMultipliedMaskRGB = mask.rgb * mix(mask.a, 1.0, premultipliedAlpha) * auxiliaryImageAlpha;
-  lowp vec3 preMultipliedTextureRGB = color.rgb * mix(color.a, 1.0, premultipliedAlpha);
+  highp vec3 preMultipliedMaskRGB = mask.rgb * mix(mask.a, 1.0, premultipliedAlpha) * auxiliaryImageAlpha;
+  highp vec3 preMultipliedTextureRGB = color.rgb * mix(color.a, 1.0, premultipliedAlpha);
 
   // Manual blend operation with premultiplied colors.
   // Final alpha = maskAlpha + (1.0 - maskAlpha) * color.a.
@@ -27,8 +28,8 @@ void main()
   // If premultipliedAlpha == 1.0, just return vec4(rgb*alpha, alpha)
   // Else, return vec4((rgb*alpha) / alpha, alpha)
 
-  lowp float finalAlpha = mix(color.a, 1.0, maskAlpha);
-  lowp vec3  finalMultipliedRGB = preMultipliedMaskRGB + (1.0 - maskAlpha) * preMultipliedTextureRGB;
+  highp float finalAlpha = mix(color.a, 1.0, maskAlpha);
+  highp vec3  finalMultipliedRGB = preMultipliedMaskRGB + (1.0 - maskAlpha) * preMultipliedTextureRGB;
 
   // TODO : Need to find some way without division
   lowp vec4 finalColor = vec4(finalMultipliedRGB * mix(1.0 / finalAlpha, 1.0, premultipliedAlpha), finalAlpha);
index 93f8fbce6c33d0161817206ff6534935c014a815..54d3ad2a2851f2d195135cff0135cacbc6134c13 100644 (file)
@@ -1,4 +1,5 @@
-varying mediump vec2 vTexCoord;
+precision highp float;
+varying highp vec2 vTexCoord;
 uniform sampler2D sTexture;
 uniform lowp vec4 uColor;
 
index d571a6406dfcba7168b5c4d9d106150bb7ca0e95..bdb45b2a8ded9c99aec2770ed43372b20bbc720c 100644 (file)
@@ -1,6 +1,7 @@
-attribute mediump vec2 aPosition;
-varying mediump vec2 vTexCoord;
-varying mediump vec2 vMaskTexCoord;
+precision highp float;
+attribute highp vec2 aPosition;
+varying highp vec2 vTexCoord;
+varying highp vec2 vMaskTexCoord;
 uniform highp mat4 uMvpMatrix;
 uniform highp vec3 uSize;
 uniform highp vec2 uNinePatchFactorsX[FACTOR_SIZE_X];
index c4544aa3c5c4fa828a7766941f903e31e6b71c7a..8eb3cf92f1f7330b508237c3e1a3371f09e3f7ee 100644 (file)
@@ -1,5 +1,5 @@
-precision mediump float;
-varying mediump vec2 vTexCoord;
+precision highp float;
+varying highp vec2 vTexCoord;
 uniform vec3 uSize;
 uniform vec2 uSpineShadowParameter;
 uniform sampler2D sTexture;
index 900aeb9acefb6bb4004f81417eae878225284144..fc315a9a5173501a1d896e39422945fae126a177 100644 (file)
@@ -1,13 +1,13 @@
-precision mediump float;
-attribute mediump vec2 aPosition;
-uniform mediump mat4 uMvpMatrix;
+precision highp float;
+attribute highp vec2 aPosition;
+uniform highp mat4 uMvpMatrix;
 uniform vec3 uSize;
 uniform float uTextureWidth;
 varying vec2 vTexCoord;
 
 void main()
 {
-  mediump vec4 vertexPosition = vec4(aPosition*uSize.xy, 0.0, 1.0);
+  highp vec4 vertexPosition = vec4(aPosition*uSize.xy, 0.0, 1.0);
   gl_Position = uMvpMatrix * vertexPosition;
   vTexCoord = aPosition + vec2(0.5);
   vTexCoord.x /= uTextureWidth;
index 8fa6e776a9b976bb4799301b17b4e592d1c2cecf..12d30655a24cca389dac36bb73d1ee386a83b3c9 100644 (file)
@@ -1,13 +1,13 @@
-precision mediump float;
+precision highp float;
 
-varying mediump vec2 vTexCoord;
+varying highp vec2 vTexCoord;
 
 uniform sampler2D sTexture;
 uniform lowp vec4 uColor;
-uniform vec3 uSize;
-uniform vec2 uSpineShadowParameter;
-varying vec3 vNormal;
-varying vec4 vPosition;
+uniform highp vec3 uSize;
+uniform highp vec2 uSpineShadowParameter;
+varying highp vec3 vNormal;
+varying highp vec4 vPosition;
 
 void main()
 {
index 97050617961df94e06858733bce3d8beea0ceb99..ef15a16d6d1decb6840ad3b8b9b496b0a9c7a475 100644 (file)
  * ([3][3]) float currentLength: The length from the current center to the curveEnd.
  */
 
-precision mediump float;
+precision highp float;
 
-attribute mediump vec2 aPosition;
+attribute highp vec2 aPosition;
 
-uniform mediump mat4 uMvpMatrix;
-uniform mediump mat3 uNormalMatrix;
-uniform mediump mat4 uModelView;
+uniform highp mat4 uMvpMatrix;
+uniform highp mat3 uNormalMatrix;
+uniform highp mat4 uModelView;
 
-uniform mat4 uCommonParameters;
+uniform highp mat4 uCommonParameters;
 
-uniform vec3 uSize;
+uniform highp vec3 uSize;
 uniform float uIsTurningBack;
 uniform float uTextureWidth;
-varying vec3 vNormal;
-varying vec4 vPosition;
-varying mediump vec2 vTexCoord;
+varying highp vec3 vNormal;
+varying highp vec4 vPosition;
+varying highp vec2 vTexCoord;
 
 void main()
 {
index 751f52773f7ce3e845fe66932f24ea0a2cf8ca8d..0535c644428d3eb5a819a557e7dbd16dcb3e94d4 100644 (file)
@@ -1,7 +1,7 @@
 //Very simple fragment shader that merely applies the vertex shading to the color at each fragment.
 
-precision mediump float;
-varying mediump vec3 vIllumination;
+precision highp float;
+varying highp vec3 vIllumination;
 uniform lowp vec4 uColor;
 
 void main()
index 12002941ddd878c898aa9a743544f2b2cc24b083..4a23d4a543c0b4eb64b5fa89401d57176c794dac 100644 (file)
@@ -1,22 +1,23 @@
 //A simple shader that applies diffuse lighting to a mono-coloured object.
 
+precision highp float;
 attribute highp vec3 aPosition;
 attribute highp vec2 aTexCoord;
 attribute highp vec3 aNormal;
-varying mediump vec3 vIllumination;
-uniform mediump vec3 uSize;
-uniform mediump vec3 uObjectDimensions;
-uniform mediump mat4 uMvpMatrix;
-uniform mediump mat4 uModelView;
-uniform mediump mat4 uViewMatrix;
-uniform mediump mat3 uNormalMatrix;
-uniform mediump mat4 uObjectMatrix;
-uniform mediump vec3 lightPosition;
-uniform mediump vec2 uStageOffset;
+varying highp vec3 vIllumination;
+uniform highp vec3 uSize;
+uniform highp vec3 uObjectDimensions;
+uniform highp mat4 uMvpMatrix;
+uniform highp mat4 uModelView;
+uniform highp mat4 uViewMatrix;
+uniform highp mat3 uNormalMatrix;
+uniform highp mat4 uObjectMatrix;
+uniform highp vec3 lightPosition;
+uniform highp vec2 uStageOffset;
 
 //Visual size and offset
-uniform mediump vec2 offset;
-uniform mediump vec2 size;
+uniform highp vec2 offset;
+uniform highp vec2 size;
 uniform mediump vec4 offsetSizeMode;
 uniform mediump vec2 origin;
 uniform mediump vec2 anchorPoint;
index d193acfb4a0c9b8971534b8db0f5e447b4b81826..c0e41380e6a9d7ceff0c1d502ae2e948153e28fc 100644 (file)
@@ -1,4 +1,5 @@
-varying mediump vec2 vTexCoord;
+precision highp float;
+varying highp vec2 vTexCoord;
 uniform lowp vec4 uShadowColor;
 uniform sampler2D sTexture;
 
index 4b38884c9a42c910a472955bef9862b512f6059e..9096c94803ba16fb3383f9e1b6b4b04c033118be 100644 (file)
@@ -1,15 +1,16 @@
-attribute mediump vec2 aPosition;
-uniform mediump mat4 uMvpMatrix;
-uniform mediump mat4 uModelMatrix;
-uniform vec3 uSize;
-varying vec2 vTexCoord;
+precision highp float;
+attribute highp vec2 aPosition;
+uniform highp mat4 uMvpMatrix;
+uniform highp mat4 uModelMatrix;
+uniform highp vec3 uSize;
+varying highp vec2 vTexCoord;
 
-uniform mediump mat4 uLightCameraProjectionMatrix;
-uniform mediump mat4 uLightCameraViewMatrix;
+uniform highp mat4 uLightCameraProjectionMatrix;
+uniform highp mat4 uLightCameraViewMatrix;
 
 void main()
 {
-  mediump vec4 vertexPosition = vec4(aPosition, 0.0, 1.0);
+  highp vec4 vertexPosition = vec4(aPosition, 0.0, 1.0);
   vertexPosition.xyz *= uSize;
   gl_Position = uMvpMatrix * vertexPosition;
   vec4 textureCoords = uLightCameraProjectionMatrix * uLightCameraViewMatrix * uModelMatrix  * vertexPosition;
index ac8276323de8a3057923084ce912b6add558f8e5..11d5bbe914ba473d11bd26367ec4148801d210e6 100644 (file)
@@ -1,8 +1,8 @@
 precision highp float;
-varying mediump vec2 vTexCoord;
+varying highp vec2 vTexCoord;
 uniform sampler2D sTexture;
-uniform int uSpread;
-uniform vec2 uTexScale;
+uniform highp int uSpread;
+uniform highp vec2 uTexScale;
 
 void main()
 {
index aad41e1a54e8bb97fdafba9d864a999a9f383230..553732849ac3d6a8fd7383f06ad8a11aeae0e60c 100644 (file)
@@ -1,4 +1,5 @@
-varying mediump vec2 vTexCoord;
+precision highp float;
+varying highp vec2 vTexCoord;
 uniform sampler2D sTexture;
 uniform lowp vec4 uColor;
 uniform lowp float uAlpha;
index e42de21e5bc3943f4d5b7c806bdce60dc7b1aa2a..97acac81baebebb76f420fca9592f66cd3dc5442 100644 (file)
@@ -1,8 +1,9 @@
-uniform lowp    vec4      uColor;
-uniform lowp    vec4      textColorAnimatable;
-uniform         sampler2D sTexture;
-varying mediump vec2      vTexCoord;
-varying mediump vec4      vColor;
+precision highp float;
+uniform lowp  vec4      uColor;
+uniform lowp  vec4      textColorAnimatable;
+uniform       sampler2D sTexture;
+varying highp vec2      vTexCoord;
+varying highp vec4      vColor;
 
 void main()
 {
index 966ee9055564e53588d640f2fdc0dd44b9f8daa1..a79381ae5f765f7361995372ef9e8d422015b1fb 100644 (file)
@@ -1,7 +1,8 @@
-uniform lowp    vec4      uColor;
-uniform lowp    vec4      textColorAnimatable;
-uniform         sampler2D sTexture;
-varying mediump vec2      vTexCoord;
+precision highp float;
+uniform lowp  vec4      uColor;
+uniform lowp  vec4      textColorAnimatable;
+uniform       sampler2D sTexture;
+varying highp vec2      vTexCoord;
 
 void main()
 {
index 0d2d62168878cd7ddcbbb8d0313afff18b494248..ef465023b0b9eec066cdd8308579cb83bf41a193 100644 (file)
@@ -1,10 +1,11 @@
-attribute   highp vec2    aPosition;
-attribute mediump vec2    aTexCoord;
-attribute mediump vec4    aColor;
-uniform   mediump vec2    uOffset;
-uniform     highp mat4    uMvpMatrix;
-varying   mediump vec2    vTexCoord;
-varying   mediump vec4    vColor;
+precision highp float;
+attribute highp vec2 aPosition;
+attribute highp vec2 aTexCoord;
+attribute highp vec4 aColor;
+uniform   highp vec2 uOffset;
+uniform   highp mat4 uMvpMatrix;
+varying   highp vec2 vTexCoord;
+varying   highp vec4 vColor;
 
 void main()
 {
index c935d22108e2b3c7cbe76f8a43ae516837ebc2cf..f0fbd7f3a4c2005e3de033169e92b8f6cc34ccf1 100644 (file)
@@ -1,5 +1,6 @@
-varying mediump vec4      vColor;
-uniform lowp    vec4      uColor;
+precision highp float;
+varying highp vec4 vColor;
+uniform lowp  vec4 uColor;
 
 void main()
 {
index 9ce403cba9788243dcaae15c80fbd1ee2c29f7bc..8518edd5e228b223de5707f98054732cf2de946a 100644 (file)
@@ -1,11 +1,12 @@
-attribute mediump vec2    aPosition;
-attribute mediump vec4    aColor;
-varying   mediump vec4    vColor;
-uniform   highp mat4      uMvpMatrix;
+precision highp float;
+attribute highp vec2 aPosition;
+attribute highp vec4 aColor;
+varying   highp vec4 vColor;
+uniform   highp mat4 uMvpMatrix;
 
 void main()
 {
-  mediump vec4 position = vec4( aPosition, 0.0, 1.0 );
+  highp vec4 position = vec4( aPosition, 0.0, 1.0 );
   gl_Position = uMvpMatrix * position;
   vColor = aColor;
 }
index 7402ddef75ed88cbaca1bcb32f407a3f276b2ac0..404409dd43963f0a854b76a0328a40a1e88a738e 100644 (file)
@@ -1,4 +1,5 @@
-uniform      lowp vec4 uColor;
+precision highp float;
+uniform lowp vec4 uColor;
 
 void main()
 {
index 6afdfca6aadefe7aa95f8f64a82a83628bf21ccf..a3c6918fe002dc4873a20bffe9830eb0b0a8b51f 100644 (file)
@@ -1,8 +1,9 @@
-attribute mediump vec2    aPosition;
-uniform   highp mat4      uMvpMatrix;
+precision highp float;
+attribute highp vec2 aPosition;
+uniform   highp mat4 uMvpMatrix;
 
 void main()
 {
-  mediump vec4 position = vec4( aPosition, 0.0, 1.0 );
+  highp vec4 position = vec4( aPosition, 0.0, 1.0 );
   gl_Position = uMvpMatrix * position;
 }
index 876628abc3f787e92deb1cf9a16ae329afbe03a8..2af902c2809eb6ff7779d26486c75936094dab1e 100644 (file)
@@ -1,3 +1,4 @@
+precision highp float;
 varying highp vec2 vTexCoord;
 uniform sampler2D sTexture;
 uniform lowp vec4 uColor;
index c152b5e3be9704691ef535c9817806c0f15299b8..9636f33b8417b655ecaf8da61fb7480a2b2f8ebc 100644 (file)
@@ -1,16 +1,17 @@
-attribute mediump vec2 aPosition;
+precision highp float;
+attribute highp vec2 aPosition;
 varying highp vec2 vTexCoord;
 uniform highp vec3 uSize;
 uniform highp float uDelta;
-uniform mediump vec2 uTextureSize;
+uniform highp vec2 uTextureSize;
 uniform highp float uGap;
-uniform mediump float uHorizontalAlign;
-uniform mediump float uVerticalAlign;
+uniform highp float uHorizontalAlign;
+uniform highp float uVerticalAlign;
 
 uniform highp mat4 uMvpMatrix;
 
 //Visual size and offset
-uniform mediump vec2 offset;
+uniform highp vec2 offset;
 uniform highp vec2 size;
 uniform mediump vec4 offsetSizeMode;
 uniform mediump vec2 origin;
@@ -21,8 +22,8 @@ void main()
   highp vec2 visualSize = mix(size * uSize.xy, size, offsetSizeMode.zw);
   highp vec2 visualOffset = mix(offset * uSize.xy, offset, offsetSizeMode.xy);
 
-  vTexCoord.x = ( uDelta + uHorizontalAlign * ( uTextureSize.x - visualSize.x - uGap ) + aPosition.x * visualSize.x - uGap * 0.5 ) / uTextureSize.x + 0.5;
-  vTexCoord.y = ( uVerticalAlign * ( uTextureSize.y - visualSize.y ) + aPosition.y * visualSize.y ) / ( uTextureSize.y ) + 0.5;
+  vTexCoord.x = ( uDelta + (aPosition.x - uHorizontalAlign) * visualSize.x - uGap * (0.5 + uHorizontalAlign) ) / uTextureSize.x + uHorizontalAlign + 0.5;
+  vTexCoord.y = ( (aPosition.y - uVerticalAlign) * visualSize.y ) / uTextureSize.y + uVerticalAlign + 0.5;
 
   highp vec4 vertexPosition = vec4( ( aPosition + anchorPoint ) * visualSize + visualOffset + origin * uSize.xy, 0.0, 1.0 );
 
index 8cd690a3ca4e1c8fc5021e1445f44c3797fc6950..9aaf6c4cbe2d059e352ede2bd12e7d7b2bc00315 100644 (file)
@@ -1,4 +1,5 @@
-INPUT mediump vec2 vTexCoord;
+precision highp float;
+INPUT highp vec2 vTexCoord;
 uniform sampler2D sTexture;
 #ifdef IS_REQUIRED_STYLE
 uniform sampler2D sStyle;
index 68503a9af2de733134772b74b24feb31c4d42b3f..ea92a4c749f407dc3e7096e919f298f8a5fd02c9 100644 (file)
@@ -1,11 +1,12 @@
-INPUT mediump vec2 aPosition;
+precision highp float;
+INPUT highp vec2 aPosition;
 uniform highp mat4 uMvpMatrix;
 uniform highp vec3 uSize;
 
-OUTPUT mediump vec2 vTexCoord;
+OUTPUT highp vec2 vTexCoord;
 
 //Visual size and offset
-uniform mediump vec2 offset;
+uniform highp vec2 offset;
 uniform highp vec2 size;
 uniform mediump vec4 offsetSizeMode;
 uniform mediump vec2 origin;
@@ -13,8 +14,8 @@ uniform mediump vec2 anchorPoint;
 
 vec4 ComputeVertexPosition()
 {
-  vec2 visualSize = mix(size * uSize.xy, size, offsetSizeMode.zw );
-  vec2 visualOffset = mix(offset * uSize.xy, offset, offsetSizeMode.xy);
+  highp vec2 visualSize = mix(size * uSize.xy, size, offsetSizeMode.zw );
+  highp vec2 visualOffset = mix(offset * uSize.xy, offset, offsetSizeMode.xy);
   return vec4( (aPosition + anchorPoint) * visualSize + visualOffset + origin * uSize.xy, 0.0, 1.0 );
 }
 
index 306f12e7e1a1a9bf920e920a8363f9b0c785b20f..ba034c94564c84ab2abebac6522fdcebeb6d567c 100644 (file)
@@ -1,5 +1,6 @@
+precision highp float;
 uniform lowp vec4 uColor;
-varying mediump vec2 vTexCoord;
+varying highp vec2 vTexCoord;
 uniform samplerExternalOES sTexture;
 
 void main()
index 79cbb239370e9a33937092e7344814ab30be6867..a7b041532a1617f6d88d8ace4582b6516af0d406 100644 (file)
@@ -1,8 +1,8 @@
-attribute mediump vec2 aPosition;
-varying mediump vec2 vTexCoord;
+precision highp float;
+attribute highp vec2 aPosition;
+varying highp vec2 vTexCoord;
 uniform highp mat4 uMvpMatrix;
 uniform highp vec3 uSize;
-varying mediump vec2 sTexCoordRect;
 
 void main()
 {
index 8045c0def0bca9a45403d757222a08d560375ec7..549baa3ee7b4f786d965886e9cf6b8c123f4f4b9 100644 (file)
@@ -1,3 +1,4 @@
+precision highp float;
 void main()
 {
   gl_FragColor = vec4(0.0);
index 3f824dd1b0b96e1123dcc903bc53780fbe5feac5..6073ab60a25818bfec21ff1ecb063590ab0c86a8 100644 (file)
@@ -1,10 +1,11 @@
-attribute mediump vec2 aPosition;
+precision highp float;
+attribute highp vec2 aPosition;
 uniform highp mat4 uMvpMatrix;
 uniform highp vec3 uSize;
 
 void main()
 {
-  mediump vec4 vertexPosition = vec4(aPosition, 0.0, 1.0);
+  highp vec4 vertexPosition = vec4(aPosition, 0.0, 1.0);
   vertexPosition.xyz *= uSize;
   gl_Position = uMvpMatrix * vertexPosition;
 }
index c75da53311f8460c5ca6881e19c3722491bbec0c..404409dd43963f0a854b76a0328a40a1e88a738e 100644 (file)
@@ -1,3 +1,4 @@
+precision highp float;
 uniform lowp vec4 uColor;
 
 void main()
index 9a9975cda110fde8328a44f1107f933e388435fd..0ddd70112200d6cfcb8617a82e28462f2c7eaea9 100644 (file)
@@ -1,9 +1,10 @@
-attribute mediump vec2  aPosition;
+precision highp float;
+attribute highp vec2  aPosition;
 uniform   highp   mat4  uMvpMatrix;
 uniform   highp   vec3  uSize;
 
 //Visual size and offset
-uniform mediump vec2 offset;
+uniform highp   vec2 offset;
 uniform highp   vec2 size;
 uniform mediump vec4 offsetSizeMode;
 uniform mediump vec2 origin;