Я рисую плоские цвета и текстуры на холсте WebGL. Мои цвета и текстуры имеют разные значения альфа-канала, и я хочу, чтобы они правильно смешивались. Я хочу иметь прозрачный фон (, они должны быть смешаны с содержимым HTML, которое находится под холстом ).
В WebGL я использую
gl.clearColor(0, 0, 0, 0);
gl.blendFunc(gl.SRC_ALPHA, gl.ONE_MINUS_SRC_ALPHA);
gl.enable(gl.BLEND);
Он работает правильно, когда фон HTML черный. Но когда я устанавливаю шаблон JPG в качестве фона, я рисую черный треугольник (alpha=1 )и белый треугольник (alpha=0,5 ), я вижу фоновый узор в том месте, где треугольники пересекаются друг с другом. Другие. Это правильное поведение?