会shader的大佬帮忙看下
uniform mat4 CC_PMatrix;
uniform mat4 CC_MultiViewPMatrix[4];
uniform mat4 CC_MVMatrix;
uniform mat4 CC_MVPMatrix;
uniform mat4 CC_MultiViewMVPMatrix[4];
uniform mat3 CC_NormalMatrix;
uniform vec4 CC_Time;
uniform vec4 CC_SinTime;
uniform vec4 CC_CosTime;
uniform vec4 CC_Random01;
uniform sampler2D CC_Texture0;
uniform sampler2D CC_Texture1;
uniform sampler2D CC_Texture2;
uniform sampler2D CC_Texture3;
//CC INCLUDES END
#ifdef GL_ES
varying lowp vec2 v_texCoord;
varying mediump vec2 v_position;
#else
varying vec2 v_texCoord;
varying vec2 v_position;
#endif
uniform vec2 uLightsPos[20];
uniform vec4 uLightColor;
uniform float uLightRange;
uniform int uIsCloseLights;
vec4 getLightsColor(vec2 texPos, float lightRange)
{
if(uIsCloseLights == 1){
return vec4(1.0, 1.0, 1.0, 1.0);
}
float rgb = 1.0;
for(int i = 0; i < uLightsPos.length(); ++i)
{
vec2 lightPos = uLightsPos[i];
float miniValue = 1.0;
if(length(lightPos - vec2(0.0, 0.0)) > miniValue){
float d = length(lightPos - texPos);
float tmpRgb = (d - 90.0) / lightRange;
if(tmpRgb < rgb)
rgb = tmpRgb;
}
}
return vec4(rgb, rgb, rgb, rgb);
}
void main()
{
vec4 color = uLightColor * getLightsColor(v_position, uLightRange);
color = clamp(color, 0.0, 1.0);
gl_FragColor = texture2D(CC_Texture0, v_texCoord) * color;
}
cocos2d: ERROR: 0:39: Method calls not allowed in this GLSL version