【发布时间】:2015-08-14 17:58:22
【问题描述】:
我被片段着色器困住了。我设法从上到下显示了一个线性渐变(cp。左图)。目标是在这个线性渐变上叠加一个放射状的白色渐变(左图中的黑色虚线 => 右图说明了目标)。
我知道我必须以某种方式组合 x 和 y 坐标,但到目前为止所有试验都失败了 - 我认为我的数学太差了 :-/ 我也没有弄清楚如何混合蓝色为了获得白色阴影。
有人可以帮我一个提示吗?
这是给出左图结果的当前着色器(取决于颜色制服):
// Precision
precision highp float;
// Uniforms
uniform vec2 uResolution;
// Colors
uniform vec3 uColor1;
uniform vec3 uColor2;
void main(void) {
vec2 position = gl_FragCoord.xy/uResolution;
vec3 color = vec3(uColor2.x+(uColor1.x-uColor2.x)*position.y, uColor2.y+(uColor1.y-uColor2.y)*position.y, uColor2.z+(uColor1.z-uColor2.z)*position.y);
gl_FragColor = vec4(color.x, color.y, color.z, 1.);
}
【问题讨论】:
标签: android ios opengl-es-2.0 fragment-shader