我尝试使用圆形模板制作clippingNode,但结果是边缘不平滑 尝试使用DrawNode.drawDot和Sprite作为模板,结果相同
我也试过很多阈值数,但仍然相同,可能会更糟......这个图像使用的是0.05
有没有让边缘更平滑?
我正在使用cocos2d-x 3.5
答案 0 :(得分:0)
使用抗锯齿功能尝试this forum中提供的解决方案:
const char* ccPositionColorLengthTexture_frag = STRINGIFY(
\n#ifdef GL_ES\n
\n#extension GL_OES_standard_derivatives : enable\n
varying mediump vec4 v_color;
varying mediump vec2 v_texcoord;
\n#else\n
varying vec4 v_color;
varying vec2 v_texcoord;
\n#endif\n
void main()
{
\n#if defined GL_OES_standard_derivatives\n
gl_FragColor = v_color*smoothstep(0.0, length(fwidth(v_texcoord)), 1.0 - length(v_texcoord));\n
\n#else\n
gl_FragColor = v_color*step(0.0, 1.0 - length(v_texcoord));
\n#endif\n
}
);
进行一些调整,例如
更改了:
dot->drawDot(end, DOT_RADIUS / 2.0, color);
为:
dot->drawSegment(start, end, DOT_RADIUS / 2, color);