diff options
Diffstat (limited to 'assets/shaders/linearGradient.frag.glsl')
-rwxr-xr-x | assets/shaders/linearGradient.frag.glsl | 91 |
1 files changed, 46 insertions, 45 deletions
diff --git a/assets/shaders/linearGradient.frag.glsl b/assets/shaders/linearGradient.frag.glsl index 111dffbd..2cc8c92f 100755 --- a/assets/shaders/linearGradient.frag.glsl +++ b/assets/shaders/linearGradient.frag.glsl | |||
@@ -1,24 +1,25 @@ | |||
1 | /* <copyright> | 1 | /* <copyright> |
2 | Copyright (c) 2012, Motorola Mobility, Inc | 2 | Copyright (c) 2012, Motorola Mobility LLC. |
3 | All Rights Reserved. | 3 | All Rights Reserved. |
4 | BSD License. | ||
5 | 4 | ||
6 | Redistribution and use in source and binary forms, with or without | 5 | Redistribution and use in source and binary forms, with or without |
7 | modification, are permitted provided that the following conditions are met: | 6 | modification, are permitted provided that the following conditions are met: |
8 | 7 | ||
9 | - Redistributions of source code must retain the above copyright notice, | 8 | * Redistributions of source code must retain the above copyright notice, |
10 | this list of conditions and the following disclaimer. | 9 | this list of conditions and the following disclaimer. |
11 | - Redistributions in binary form must reproduce the above copyright | 10 | |
12 | notice, this list of conditions and the following disclaimer in the | 11 | * Redistributions in binary form must reproduce the above copyright notice, |
13 | documentation and/or other materials provided with the distribution. | 12 | this list of conditions and the following disclaimer in the documentation |
14 | - Neither the name of Motorola Mobility nor the names of its contributors | 13 | and/or other materials provided with the distribution. |
15 | may be used to endorse or promote products derived from this software | 14 | |
16 | without specific prior written permission. | 15 | * Neither the name of Motorola Mobility LLC nor the names of its |
16 | contributors may be used to endorse or promote products derived from this | ||
17 | software without specific prior written permission. | ||
17 | 18 | ||
18 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" | 19 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" |
19 | AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | 20 | AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE |
20 | IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE | 21 | IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE |
21 | ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE | 22 | ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE |
22 | LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR | 23 | LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR |
23 | CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF | 24 | CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF |
24 | SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS | 25 | SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS |
@@ -33,44 +34,44 @@ precision highp float; | |||
33 | #endif | 34 | #endif |
34 | 35 | ||
35 | 36 | ||
36 | uniform vec4 u_color1; | 37 | uniform vec4 u_color1; |
37 | uniform vec4 u_color2; | 38 | uniform vec4 u_color2; |
38 | uniform vec4 u_color3; | 39 | uniform vec4 u_color3; |
39 | uniform vec4 u_color4; | 40 | uniform vec4 u_color4; |
40 | uniform float u_colorStop1; | 41 | uniform float u_colorStop1; |
41 | uniform float u_colorStop2; | 42 | uniform float u_colorStop2; |
42 | uniform float u_colorStop3; | 43 | uniform float u_colorStop3; |
43 | uniform float u_colorStop4; | 44 | uniform float u_colorStop4; |
44 | uniform vec2 u_cos_sin_angle; | 45 | uniform vec2 u_cos_sin_angle; |
45 | //uniform int u_colorCount; // currently using 4 | 46 | //uniform int u_colorCount; // currently using 4 |
46 | 47 | ||
47 | varying vec2 v_uv; | 48 | varying vec2 v_uv; |
48 | 49 | ||
49 | 50 | ||
50 | void main(void) | 51 | void main(void) |
51 | { | 52 | { |
52 | float t = dot(v_uv, u_cos_sin_angle); | 53 | float t = dot(v_uv, u_cos_sin_angle); |
53 | 54 | ||
54 | vec4 color; | 55 | vec4 color; |
55 | if (t < u_colorStop1) | 56 | if (t < u_colorStop1) |
56 | color = u_color1; | 57 | color = u_color1; |
57 | else if (t < u_colorStop2) | 58 | else if (t < u_colorStop2) |
58 | { | 59 | { |
59 | float tLocal = (t - u_colorStop1)/(u_colorStop2 - u_colorStop1); | 60 | float tLocal = (t - u_colorStop1)/(u_colorStop2 - u_colorStop1); |
60 | color = mix(u_color1,u_color2,tLocal); | 61 | color = mix(u_color1,u_color2,tLocal); |
61 | } | 62 | } |
62 | else if (t < u_colorStop3) | 63 | else if (t < u_colorStop3) |
63 | { | 64 | { |
64 | float tLocal = (t - u_colorStop2)/(u_colorStop3 - u_colorStop2); | 65 | float tLocal = (t - u_colorStop2)/(u_colorStop3 - u_colorStop2); |
65 | color = mix(u_color2,u_color3,tLocal); | 66 | color = mix(u_color2,u_color3,tLocal); |
66 | } | 67 | } |
67 | else if (t < u_colorStop4) | 68 | else if (t < u_colorStop4) |
68 | { | 69 | { |
69 | float tLocal = (t - u_colorStop3)/(u_colorStop4 - u_colorStop3); | 70 | float tLocal = (t - u_colorStop3)/(u_colorStop4 - u_colorStop3); |
70 | color = mix(u_color3,u_color4,tLocal); | 71 | color = mix(u_color3,u_color4,tLocal); |
71 | } | 72 | } |
72 | else | 73 | else |
73 | color = u_color4; | 74 | color = u_color4; |
74 | 75 | ||
75 | gl_FragColor =color; | 76 | gl_FragColor =color; |
76 | } | 77 | } |