ВУЗ:
Составители:
Рубрика:
53
Параметр
Тест завершается положительно в слу-
чае
GL_GEQUAL
Если поступающее значение больше или рав-
но ref
GL_ALWAYS
Всегда. Установлено по умолчанию
Данная команда позволяет принять или отклонить фрагмент, основываясь на сравнении заданного
значения альфа-канала с реальным. Если результат сравнения положительный, то поступающий фраг-
мент рисуется в буфере кадра (в зависимости от условий тестов трафарета и глубины). В случае отрица-
тельного результата – вывод фрагмента не осуществляется.
В данном примере выводится фрагмент объекта в буфер кадра, если его альфа-значение больше
(0.4):
glEnable(GL_ALPHA_TEST);
glAlphaFunc(GL_GREATER, 0.4f);
Используя команду glAlphaFunc() мы работаем с полностью прозрачным или полностью непро-
зрачным смешиванием, но при этом не возникает реального смешивания. Для определения метода ре-
ального смешивания выводимых фрагментов с изображением существующим в буфере кадра использу-
ется команда
void glBlendFunc(GLenum srcfactor,GLenum dstfactor)
Параметр srcfactor определяет метод обработки RGBA значений, поступающих от источника на
смешивание (выводимый фрагмент), а dstfactor определяет метод обработки RGBA значений, находя-
щихся в буфере кадра с которыми будет осуществляться смешивание. Всего существует одиннадцать
методов обработки RGBA значений. Девять из них предназначены для источника (srcfactor) и восемь
для приемника (dstfactor).
Параметр Метод
GL_ZERO (0, 0, 0 ,0)
GL_ONE
(1, 1, 1 ,1)
GL_SRC_COLOR
(R
S
/ k
R
, G
S
/ k
G
, B
S
/ k
B
, A
S
/ k
A
)
Продолжение табл.
Параметр Метод
GL_ONE_MINUS_SRC_CO
LOR
(1, 1, 1, 1) – (R
S
/ k
R
, G
S
/ k
G
,
B
S
/ k
B
, A
S
/ k
A
)
GL_DST_COLOR
(R
D
/ k
R
, G
D
/ k
G
, B
D
/ k
B
, A
D
/
k
A
)
GL_ONE_MINUS_DST_CO
LOR
(1, 1, 1, 1) – (R
D
/ k
R
, G
D
/ k
G
,
B
D
/ k
B
, A
D
/ k
A
)
GL_SRC_ALPHA
(A
S
/ k
A
, A
S
/ k
A
, A
S
/ k
A
, A
S
/
k
A
)
GL_ONE_MINUS_SRC_AL
PHA
(1, 1, 1, 1) – (A
S
/ k
A
, A
S
/ k
A
,
A
S
/ k
A
, A
S
/ k
A
)
GL_DST_ALPHA
(A
D
/ k
A
, A
D
/ k
A
, A
D
/ k
A
, A
D
/
k
A
)
GL_ONE_MINUS_DST_AL
PHA
(1, 1, 1, 1) – (A
D
/ k
A
, A
D
/ k
A
,
A
D
/ k
A
, A
D
/ k
A
)
Страницы
- « первая
- ‹ предыдущая
- …
- 49
- 50
- 51
- 52
- 53
- …
- следующая ›
- последняя »