Я хочу изменить прозрачность объекта, нарисованного с помощью glDrawArrays (GL_TRIANGLE_STRIP, 0, 4);
Я использовал вариант смешивания, например
glEnable(GL_BLEND);
//glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
glBlendFunc(GL_SRC_ALPHA, GL_SRC_ALPHA_SATURATE);
(Я пробовал использовать следующие параметры: GL_ONE_MINUS_SRC_ALPHA, GL_ZERO, GL_ONE, GL_ONE_MINUS_DST_COLOR, GL_SRC_ALPHA_SATURATE) В целом, я получаю изменение цвета при изменении значения Alpha, но не становлюсь прозрачным или полупрозрачным. При альфа = 255 цвет становится ярким, при альфа = 1 черный цвет, но не прозрачный. Если я сделаю альфа = 0, я получу полную прозрачность. Есть ли способ придать полупрозрачность? (Если я даю значение альфа от 1 до 255, скажем, 100, я получаю светлый оттенок, но фоновый объект все еще не отображается. Значит, прозрачность недоступна) Кто-нибудь поможет?
Вот мои используемые API для построения графиков:
glUniformMatrix4fv(i32Location, 1, GL_FALSE, afIdentity);
glEnableVertexAttribArray(VERTEX_ARRAY);
glVertexAttribPointer(VERTEX_ARRAY, 3, GL_FLOAT, GL_FALSE, 0, 0);
glEnable(GL_BLEND);
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
glDrawArrays(GL_TRIANGLE_STRIP, 0, 4);