cocos2dx shader使用问题

我自己写了一个shader,在win平台和android平台都没有问题,但是在mac上面跑的时候报错了,shader代码如下

uniform int alpha;
uniform float radius;
uniform vec2 center;

void main()
{
vec4 v_orColor = v_fragmentColor * texture2D(CC_Texture0, v_texCoord);
//float gray = dot(v_orColor.rgb,vec3(0.299,0.587,0.114))0.706;
float root = (gl_FragCoord.x - center.x )
(gl_FragCoord.x - center.x )+(gl_FragCoord.y - center.y )(gl_FragCoord.y - center.y );
if(root < radius){
gl_FragColor = vec4(v_orColor.r
(1-root/(radius255/(255-alpha))),v_orColor.g(1-root/(radius255/(255-alpha))),v_orColor.b(1-root/(radius255/(255-alpha))),v_orColor.a);
}
else{
gl_FragColor = vec4(v_orColor.r
alpha/255,v_orColor.galpha/255,v_orColor.balpha/255,v_orColor.a);
}
}
报错说float类型不能和int类型直接使用*或者/号…不明白为什么会这样

我还是默默的顶一下吧,你们在ios下面写shader都没有遇到过问题么

将整数1和255等改成浮点数:1.0和255.0就可以啦

提示我gl_FragColor需要int。。。我也是醉了,你说的方案我第一时间就试过了。。。