From 80142a09456f71b826e4f557bfc8c0bb3abd45ff Mon Sep 17 00:00:00 2001 From: Heeyong Song Date: Thu, 25 Apr 2019 16:34:36 +0900 Subject: [PATCH] Change matrix in shaders - Change matrix precision to highp - Use uMvpMatrix in all shaders Change-Id: I6b178f8926218bbcab307c110a7a5fad507ade2d --- .../internal/controls/video-view/video-view-impl.cpp | 4 ++-- dali-toolkit/internal/text/decorator/text-decorator.cpp | 2 +- dali-toolkit/internal/text/text-scroller.cpp | 6 ++---- .../visuals/animated-gradient/animated-gradient-visual.cpp | 2 +- dali-toolkit/internal/visuals/border/border-visual.cpp | 4 ++-- dali-toolkit/internal/visuals/color/color-visual.cpp | 2 +- dali-toolkit/internal/visuals/gradient/gradient-visual.cpp | 4 ++-- .../internal/visuals/image-visual-shader-factory.cpp | 11 ++--------- dali-toolkit/internal/visuals/npatch/npatch-visual.cpp | 5 ++--- dali-toolkit/internal/visuals/text/text-visual.cpp | 12 ++---------- dali-toolkit/internal/visuals/wireframe/wireframe-visual.cpp | 2 +- 11 files changed, 18 insertions(+), 36 deletions(-) diff --git a/dali-toolkit/internal/controls/video-view/video-view-impl.cpp b/dali-toolkit/internal/controls/video-view/video-view-impl.cpp index cd11ea1..93ce5a3 100755 --- a/dali-toolkit/internal/controls/video-view/video-view-impl.cpp +++ b/dali-toolkit/internal/controls/video-view/video-view-impl.cpp @@ -87,7 +87,7 @@ const char* const CUSTOM_SAMPLER_TYPE_NAME( "samplerExternalOES" ); const char* VERTEX_SHADER = DALI_COMPOSE_SHADER( attribute mediump vec2 aPosition;\n - uniform mediump mat4 uMvpMatrix;\n + uniform highp mat4 uMvpMatrix;\n uniform mediump vec3 uSize;\n \n void main()\n @@ -109,7 +109,7 @@ const char* FRAGMENT_SHADER = DALI_COMPOSE_SHADER( const char* VERTEX_SHADER_TEXTURE = DALI_COMPOSE_SHADER( attribute mediump vec2 aPosition;\n varying mediump vec2 vTexCoord;\n - uniform mediump mat4 uMvpMatrix;\n + uniform highp mat4 uMvpMatrix;\n uniform mediump vec3 uSize;\n varying mediump vec2 sTexCoordRect;\n void main()\n diff --git a/dali-toolkit/internal/text/decorator/text-decorator.cpp b/dali-toolkit/internal/text/decorator/text-decorator.cpp index be8cdd0..d0f89d9 100644 --- a/dali-toolkit/internal/text/decorator/text-decorator.cpp +++ b/dali-toolkit/internal/text/decorator/text-decorator.cpp @@ -46,7 +46,7 @@ namespace { const char* VERTEX_SHADER = MAKE_SHADER( attribute mediump vec2 aPosition; -uniform mediump mat4 uMvpMatrix; +uniform highp mat4 uMvpMatrix; void main() { diff --git a/dali-toolkit/internal/text/text-scroller.cpp b/dali-toolkit/internal/text/text-scroller.cpp index 4ca011e..8fba9b5 100644 --- a/dali-toolkit/internal/text/text-scroller.cpp +++ b/dali-toolkit/internal/text/text-scroller.cpp @@ -50,9 +50,7 @@ const char* VERTEX_SHADER_SCROLL = DALI_COMPOSE_SHADER( uniform mediump float uHorizontalAlign;\n uniform mediump float uVerticalAlign;\n \n - uniform mediump mat4 uModelMatrix;\n - uniform mediump mat4 uViewMatrix;\n - uniform mediump mat4 uProjection;\n + uniform highp mat4 uMvpMatrix;\n \n //Visual size and offset uniform mediump vec2 offset;\n @@ -71,7 +69,7 @@ const char* VERTEX_SHADER_SCROLL = DALI_COMPOSE_SHADER( \n mediump vec4 vertexPosition = vec4( floor( ( aPosition + anchorPoint ) * visualSize + ( visualOffset + origin ) * uSize.xy ), 0.0, 1.0 );\n \n - gl_Position = uProjection * uViewMatrix * uModelMatrix * vertexPosition;\n + gl_Position = uMvpMatrix * vertexPosition;\n }\n ); diff --git a/dali-toolkit/internal/visuals/animated-gradient/animated-gradient-visual.cpp b/dali-toolkit/internal/visuals/animated-gradient/animated-gradient-visual.cpp index b51f140..1a624c4 100755 --- a/dali-toolkit/internal/visuals/animated-gradient/animated-gradient-visual.cpp +++ b/dali-toolkit/internal/visuals/animated-gradient/animated-gradient-visual.cpp @@ -126,7 +126,7 @@ const Toolkit::DevelAnimatedGradientVisual::AnimationParameter::EasingType::Type const char* const BASIC_VERTEX_SHADER = DALI_COMPOSE_SHADER( attribute mediump vec2 aPosition; - uniform mediump mat4 uMvpMatrix; + uniform highp mat4 uMvpMatrix; uniform mediump vec3 uSize; uniform mediump vec2 start_point; diff --git a/dali-toolkit/internal/visuals/border/border-visual.cpp b/dali-toolkit/internal/visuals/border/border-visual.cpp index 993bcde..d1c3280 100644 --- a/dali-toolkit/internal/visuals/border/border-visual.cpp +++ b/dali-toolkit/internal/visuals/border/border-visual.cpp @@ -53,7 +53,7 @@ const char * const INDEX_NAME("indices"); const char* VERTEX_SHADER = DALI_COMPOSE_SHADER( attribute mediump vec2 aPosition;\n attribute mediump vec2 aDrift;\n - uniform mediump mat4 uMvpMatrix;\n + uniform highp mat4 uMvpMatrix;\n uniform mediump vec3 uSize;\n uniform mediump float borderSize;\n \n @@ -93,7 +93,7 @@ const char* FRAGMENT_SHADER = DALI_COMPOSE_SHADER( const char* VERTEX_SHADER_ANTI_ALIASING = DALI_COMPOSE_SHADER( attribute mediump vec2 aPosition;\n attribute mediump vec2 aDrift;\n - uniform mediump mat4 uMvpMatrix;\n + uniform highp mat4 uMvpMatrix;\n uniform mediump vec3 uSize;\n uniform mediump float borderSize;\n varying mediump float vAlpha;\n diff --git a/dali-toolkit/internal/visuals/color/color-visual.cpp b/dali-toolkit/internal/visuals/color/color-visual.cpp index fdc4835..9fa6a30 100644 --- a/dali-toolkit/internal/visuals/color/color-visual.cpp +++ b/dali-toolkit/internal/visuals/color/color-visual.cpp @@ -45,7 +45,7 @@ namespace const char* VERTEX_SHADER = DALI_COMPOSE_SHADER( attribute mediump vec2 aPosition;\n - uniform mediump mat4 uMvpMatrix;\n + uniform highp mat4 uMvpMatrix;\n uniform mediump vec3 uSize;\n \n diff --git a/dali-toolkit/internal/visuals/gradient/gradient-visual.cpp b/dali-toolkit/internal/visuals/gradient/gradient-visual.cpp index aaf4f03..27c12dd 100644 --- a/dali-toolkit/internal/visuals/gradient/gradient-visual.cpp +++ b/dali-toolkit/internal/visuals/gradient/gradient-visual.cpp @@ -103,7 +103,7 @@ const char* VERTEX_SHADER[] = // vertex shader for gradient units as OBJECT_BOUNDING_BOX DALI_COMPOSE_SHADER( attribute mediump vec2 aPosition;\n - uniform mediump mat4 uMvpMatrix;\n + uniform highp mat4 uMvpMatrix;\n uniform mediump vec3 uSize;\n uniform mediump mat3 uAlignmentMatrix;\n varying mediump vec2 vTexCoord;\n @@ -135,7 +135,7 @@ const char* VERTEX_SHADER[] = // vertex shader for gradient units as USER_SPACE DALI_COMPOSE_SHADER( attribute mediump vec2 aPosition;\n - uniform mediump mat4 uMvpMatrix;\n + uniform highp mat4 uMvpMatrix;\n uniform mediump vec3 uSize;\n uniform mediump mat3 uAlignmentMatrix;\n varying mediump vec2 vTexCoord;\n diff --git a/dali-toolkit/internal/visuals/image-visual-shader-factory.cpp b/dali-toolkit/internal/visuals/image-visual-shader-factory.cpp index 3c3fc30..0dec934 100644 --- a/dali-toolkit/internal/visuals/image-visual-shader-factory.cpp +++ b/dali-toolkit/internal/visuals/image-visual-shader-factory.cpp @@ -38,13 +38,10 @@ const Vector4 FULL_TEXTURE_RECT(0.f, 0.f, 1.f, 1.f); const char* VERTEX_SHADER = DALI_COMPOSE_SHADER( attribute mediump vec2 aPosition;\n - uniform mediump mat4 uModelMatrix;\n - uniform mediump mat4 uViewMatrix;\n - uniform mediump mat4 uProjection;\n + uniform highp mat4 uMvpMatrix;\n uniform mediump vec3 uSize;\n uniform mediump vec4 pixelArea; varying mediump vec2 vTexCoord;\n - uniform lowp float uPixelAligned;\n \n //Visual size and offset uniform mediump vec2 offset;\n @@ -62,12 +59,8 @@ const char* VERTEX_SHADER = DALI_COMPOSE_SHADER( \n void main()\n {\n - mediump vec4 vertexPosition = uViewMatrix * uModelMatrix * ComputeVertexPosition();\n - vec4 alignedVertexPosition = vertexPosition;\n - alignedVertexPosition.xy = floor ( vertexPosition.xy );\n // Pixel alignment - vertexPosition = uProjection * mix( vertexPosition, alignedVertexPosition, uPixelAligned );\n + gl_Position = uMvpMatrix * ComputeVertexPosition();\n vTexCoord = pixelArea.xy+pixelArea.zw*(aPosition + vec2(0.5) );\n - gl_Position = vertexPosition;\n }\n ); diff --git a/dali-toolkit/internal/visuals/npatch/npatch-visual.cpp b/dali-toolkit/internal/visuals/npatch/npatch-visual.cpp index e1b162c..85fc08c 100755 --- a/dali-toolkit/internal/visuals/npatch/npatch-visual.cpp +++ b/dali-toolkit/internal/visuals/npatch/npatch-visual.cpp @@ -57,7 +57,7 @@ const char* VERTEX_SHADER = DALI_COMPOSE_SHADER( attribute mediump vec2 aPosition;\n varying mediump vec2 vTexCoord;\n varying mediump vec2 vMaskTexCoord;\n - uniform mediump mat4 uMvpMatrix;\n + uniform highp mat4 uMvpMatrix;\n uniform mediump vec3 uSize;\n uniform mediump vec2 uNinePatchFactorsX[ FACTOR_SIZE_X ];\n uniform mediump vec2 uNinePatchFactorsY[ FACTOR_SIZE_Y ];\n @@ -98,8 +98,7 @@ const char* VERTEX_SHADER_3X3 = DALI_COMPOSE_SHADER( attribute mediump vec2 aPosition;\n varying mediump vec2 vTexCoord;\n varying mediump vec2 vMaskTexCoord;\n - uniform mediump mat4 uModelMatrix;\n - uniform mediump mat4 uMvpMatrix;\n + uniform highp mat4 uMvpMatrix;\n uniform mediump vec3 uSize;\n uniform mediump vec2 uFixed[ 3 ];\n uniform mediump vec2 uStretchTotal;\n diff --git a/dali-toolkit/internal/visuals/text/text-visual.cpp b/dali-toolkit/internal/visuals/text/text-visual.cpp index 4b3176c..1171033 100755 --- a/dali-toolkit/internal/visuals/text/text-visual.cpp +++ b/dali-toolkit/internal/visuals/text/text-visual.cpp @@ -68,14 +68,10 @@ const Vector4 FULL_TEXTURE_RECT( 0.f, 0.f, 1.f, 1.f ); const char* VERTEX_SHADER = DALI_COMPOSE_SHADER( attribute mediump vec2 aPosition;\n - uniform mediump mat4 uMvpMatrix;\n + uniform highp mat4 uMvpMatrix;\n uniform mediump vec3 uSize;\n uniform mediump vec4 pixelArea;\n - uniform mediump mat4 uModelMatrix;\n - uniform mediump mat4 uViewMatrix;\n - uniform mediump mat4 uProjection;\n - varying mediump vec2 vTexCoord;\n //Visual size and offset @@ -94,12 +90,8 @@ const char* VERTEX_SHADER = DALI_COMPOSE_SHADER( void main()\n {\n - mediump vec4 nonAlignedVertex = uViewMatrix*uModelMatrix*ComputeVertexPosition();\n - mediump vec4 pixelAlignedVertex = vec4 ( floor(nonAlignedVertex.xyz), 1.0 );\n - mediump vec4 vertexPosition = uProjection*pixelAlignedVertex;\n - + gl_Position = uMvpMatrix * ComputeVertexPosition();\n vTexCoord = pixelArea.xy+pixelArea.zw*(aPosition + vec2(0.5) );\n - gl_Position = vertexPosition;\n }\n ); diff --git a/dali-toolkit/internal/visuals/wireframe/wireframe-visual.cpp b/dali-toolkit/internal/visuals/wireframe/wireframe-visual.cpp index 227a780..1202d1c 100644 --- a/dali-toolkit/internal/visuals/wireframe/wireframe-visual.cpp +++ b/dali-toolkit/internal/visuals/wireframe/wireframe-visual.cpp @@ -42,7 +42,7 @@ const char * const INDEX_NAME("indices"); const char* VERTEX_SHADER = DALI_COMPOSE_SHADER( attribute mediump vec2 aPosition;\n -uniform mediump mat4 uMvpMatrix;\n +uniform highp mat4 uMvpMatrix;\n uniform mediump vec3 uSize;\n \n -- 2.7.4