34 lines
745 B
GLSL
34 lines
745 B
GLSL
// https://gamedevelopment.tutsplus.com/tutorials/a-beginners-guide-to-coding-graphics-shaders--cms-23313
|
|
uniform vec3 topColor;
|
|
uniform vec3 groundColor;
|
|
uniform vec3 bottomColor;
|
|
varying vec3 vWorldPosition;
|
|
void main() {
|
|
float h = vWorldPosition.y;
|
|
if(h > 0.0)
|
|
{
|
|
gl_FragColor = vec4(topColor,1.0);
|
|
}
|
|
else
|
|
{
|
|
// gl_FragColor = vec4(bottomColor,1.0);
|
|
// h = h * -1.0;
|
|
// float hh = abs(normalize( vWorldPosition ).y);
|
|
gl_FragColor = vec4(
|
|
mix(
|
|
groundColor,
|
|
bottomColor,
|
|
min(abs(h)/100.0,1.0)
|
|
// min(h/150.0 , 2.0)
|
|
// max(
|
|
// pow(
|
|
// max( hh , 0.0),
|
|
// exponent
|
|
// ),
|
|
// 0.0
|
|
// )
|
|
), 1.0
|
|
);
|
|
}
|
|
}
|