Shader cleanup
This commit is contained in:
29
core/assets/shaders/sun.frag
Executable file
29
core/assets/shaders/sun.frag
Executable file
@@ -0,0 +1,29 @@
|
||||
#ifdef GL_ES
|
||||
precision mediump float;
|
||||
precision lowp int;
|
||||
#define INTEGER lowp int
|
||||
#else
|
||||
#define INTEGER int
|
||||
#endif
|
||||
|
||||
#define gradients false
|
||||
|
||||
const int MAX_COLORS = 10;
|
||||
|
||||
uniform INTEGER u_colornum;
|
||||
uniform vec4 u_colors[MAX_COLORS];
|
||||
|
||||
varying float v_height;
|
||||
|
||||
void main() {
|
||||
if(gradients){
|
||||
int from = int(v_height * float(u_colornum));
|
||||
int to = int(clamp(float(int(v_height * float(u_colornum) + 1.0)), 0.0, float(u_colornum)-1.0));
|
||||
float alpha = fract(v_height * float(u_colornum));
|
||||
|
||||
gl_FragColor = vec4(mix(u_colors[from], u_colors[to], alpha));
|
||||
}else{
|
||||
int from = int(v_height * float(u_colornum));
|
||||
gl_FragColor = u_colors[from];
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user