From 75474b19e6b9693fa83b430dc198788d896b337c Mon Sep 17 00:00:00 2001 From: Patrick Walton Date: Fri, 10 Nov 2017 15:03:43 -0800 Subject: [PATCH] Add the normal angle to the shaders used in the 3D demo --- shaders/gles2/direct-3d-curve.vs.glsl | 5 ++++- shaders/gles2/direct-3d-interior.vs.glsl | 5 ++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/shaders/gles2/direct-3d-curve.vs.glsl b/shaders/gles2/direct-3d-curve.vs.glsl index 86db7f6d..6f08193d 100644 --- a/shaders/gles2/direct-3d-curve.vs.glsl +++ b/shaders/gles2/direct-3d-curve.vs.glsl @@ -11,6 +11,7 @@ precision highp float; uniform mat4 uTransform; +uniform vec2 uEmboldenAmount; uniform ivec2 uPathColorsDimensions; uniform ivec2 uPathTransformDimensions; uniform sampler2D uPathColors; @@ -20,6 +21,7 @@ attribute vec2 aPosition; attribute vec2 aTexCoord; attribute float aPathID; attribute float aSign; +attribute float aNormalAngle; varying vec4 vColor; varying vec2 vPathID; @@ -31,7 +33,8 @@ void main() { vec4 pathTransform = fetchFloat4Data(uPathTransform, pathID, uPathTransformDimensions); - vec2 position = transformVertexPositionST(aPosition, pathTransform); + vec2 position = dilatePosition(aPosition, aNormalAngle, uEmboldenAmount); + position = transformVertexPositionST(position, pathTransform); gl_Position = uTransform * vec4(position, 0.0, 1.0); diff --git a/shaders/gles2/direct-3d-interior.vs.glsl b/shaders/gles2/direct-3d-interior.vs.glsl index e736a21f..5502ca0a 100644 --- a/shaders/gles2/direct-3d-interior.vs.glsl +++ b/shaders/gles2/direct-3d-interior.vs.glsl @@ -11,6 +11,7 @@ precision highp float; uniform mat4 uTransform; +uniform vec2 uEmboldenAmount; uniform ivec2 uPathColorsDimensions; uniform ivec2 uPathTransformDimensions; uniform sampler2D uPathColors; @@ -18,6 +19,7 @@ uniform sampler2D uPathTransform; attribute vec2 aPosition; attribute float aPathID; +attribute float aNormalAngle; varying vec4 vColor; varying vec2 vPathID; @@ -27,7 +29,8 @@ void main() { vec4 pathTransform = fetchFloat4Data(uPathTransform, pathID, uPathTransformDimensions); - vec2 position = transformVertexPositionST(aPosition, pathTransform); + vec2 position = dilatePosition(aPosition, aNormalAngle, uEmboldenAmount); + position = transformVertexPositionST(position, pathTransform); gl_Position = uTransform * vec4(position, 0.0, 1.0);