gIBIendFunc
Определяет функцию смешивания цветов.
void gIBIendFunc (
GLenum sfactor,
GLenum dfactor ) ; Подробнее о параметрах, sfactor
Функция, используемая для обработки входящего цвета, dfactor
Функция, используемая для обработки предыдущего цвета (цвета в буфере кадра).
Оба аргумента могут принимать одно из следующих значений:
• GL_ZERO - результат равен (0,0,0,0);
• GL_ONE - результат равен (1,1,1,1);
• GL_SRC_COLOR - результат равен (Rs,Gs,Bs,As);
• GL_DST_COLOR - результат равен (Rd,Gd,Bd,Ad);
• GL_CONSTANT_COLOR - результат равен (Rc,Gc,Bc,Ac);
• GL_ONE_MINUS_SRC_COLOR - результат равен (1,1,1,1)-(Rs,Gs,Bs,As);
• GL_ONE_MINUS_DST_COLOR - результат равен (1,1,1,1)-(Rd,Gd,Bd,Ad);
• GL_ONE_MINUS_CONSTANT_COLOR - результат равен (1,1,1,1 )-(Rc,Gc,Bc,Ac);
• GL_SRC_ALPHA - результат равен (As,As,As,As);
• GL_DST_ALPHA - результат равен (Ad,Ad,Ad,Ad);
• GL_CONSTANT_ALPHA- результат равен (Ac,Ac,Ac,Ac);
• GL_ONE_MINUS_SRC_ALPHA - результат равен (1,1,1,1 )-(As,As,As,As);
• GL_ONE_MINUS_DST_ALPHA - результат равен (1,1,1,1)-(Ad,Ad,Ad,Ad);
• GL_ONE_MINUS_CONSTANT_ALPHA - результат равен (1,1,1,1)-(Ac,Ac,Ac,Ac);
• GL_SRC_ALPHA_SATURATE - результат равен (f,f,f,f).
Где (Rs,Gs,Bs,As) - RGBA значения входящего цвета, (Rd,Gd,Bd,Ad) - RP^A значения цвета в буфере кадра, (Rc,Gc,Bc,Ac) - RGdA значения цвета указанного последним вызовом функции gIBIendColor, f=min(As,1-Ad).
Позволяет задать отдельные функции смешивания для RGB значений цвета и альфа-канала.
void gIBIendFuncSeparate
(
GLenum srcRGB,
GLenum dstRGB,
GLenum srcAlpha,
GLenum dstAlpha ) ; Подробнее о параметрах.
Параметры принимают те же значения, что и параметры функции gIBIendFunc:
• GL_ZERO;
• GL_ONE;
• GL_SRC_COLOR;
• GL_DST_COLOR;
• GL_CONSTANT_COLOR;
• GL_ONE_MINUS_SRC_COLOR;
• GL_ONE_MINUS_DST_COLOR;
• GL_ONE_MINUS_CONSTANT_COLOR;
• GL_SRC_ALPHA;
• GL_DST_ALPHA;
• GL_CONSTANT_ALPHA;
• GL_ONE_MINUS_SRC_ALPHA;
• G L_0 N E_MINU S_DST_ALPHA;
. GL_ONE_MINUS_CONSTANT_ALPHA;
• GL_SRC_ALPHA_SATURATE.
Смотри также:
glAlphaFunc, gIBIendFunc, gIBIendColor.
glCallList
Выполняет список отображения.
void glCallList
(
GLuint list // индекс списка
) ; Функции, сохраненные в списке отображения, выполняются так же, как если бы были вызваны отдельно без списка отображения. По этой причине функцию можно включать внутри пары gIBegin/glEnd, только если список отображения содержит разрешенные функции. Если список не был определен, то вызов функции игнорируется. В списке отображения также может содержаться функция glCallList. Чтобы избежать возможной бесконечной рекурсии, уровень вложения списков ограничен, и это число зависит от конкретной реализации (обычно не меньше 64). При выполнении функции glCallList OpenGI не сохраняет текущие настройки, для этого нужно использовать в списке функции gIPushAttrib, gIPopAttrib, gIPushMatrix и gIPopMatrix.