Я нарисовал круг в квадрате на OpenGL ES 2.0. Код в шейдере фрагмента принимает центр и радиус, который был установлен, и создает круг в квадрате. Это работало нормально, пока я не попытался изменить цвет фона, поскольку квадрат все еще отображается пустым и не заполняется цветом фона/текстурой. Есть ли простой способ сделать квадровое заполнение с тем же цветом/текстурой, что и фон, в то же время сохраняя круг в шоу?OpenGL ES 2.0, quad не меняет цвет при изменении фона
Код в пиксельный шейдер выглядит следующим образом:
"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"
проблемы Thankyou решена! –