2022-09-19 18:05:01 +08:00

22 lines
575 B
Bash

precision mediump float;
varying vec4 vPosition; //接收从顶点着色器过来的参数
uniform highp vec3 uLightLocation; //光源位置
void main()
{
float dis=distance(vPosition.xyz,uLightLocation);
float zsbf=floor(dis);
float xsbf=fract(dis);
xsbf=floor(xsbf*1024.0);
float hzsbf=floor(zsbf/256.0);
float lzsbf=mod(zsbf,256.0);
float hxsbf=floor(xsbf/32.0);
float lxsbf=mod(xsbf,32.0);
float r=hzsbf/256.0;
float g=lzsbf/256.0;
float b=hxsbf/32.0;
float a=lxsbf/32.0;
gl_FragColor=vec4(r,g,b,a);
}