我在 OpenGL ES 2.0 的四边形中画了一个圆。片段着色器中的代码采用已设置的中心和半径,并在四边形内创建一个圆。这工作正常,直到我尝试更改背景颜色,因为四边形仍然显示为空白并且没有填充背景颜色/纹理。有没有一种简单的方法可以使四边形填充与背景相同的颜色/纹理,同时保持圆圈显示?
片段着色器中的代码如下:
"varying highp vec2 textureCoordinate;\n"
"const highp vec2 center = vec2(0.5, 0.5);\n"
"const highp float radius = 0.5;\n"
"void main()\n"
"{\n"
"highp float distanceFromCenter = distance(center, textureCoordinate);\n"
"lowp float checkForPresenceWithinCircle = step(distanceFromCenter, radius);\n"
"gl_FragColor = vec4(1.0, 0.0, 0.0, 1.0) * checkForPresenceWithinCircle;\n"
"}\n"