(ДА + RdDn GsSg + GdDg, BsSb + BclDb, AsSa + AdDcJ, где (Sti Sg, Sb, Sa) и (Д., Dg, Db, Da) - коэффициенты смешения.

Для задания связи этих коэффициентов с «-значениями используется следующая функция:

void gIBIendFunc (GLenum sfactor, GLenum dfactor );

Здесь параметр зГас1:ог задает то, как нужно вычислять коэффициенты^, З^, 5а), а параметр dfactor - коэффициенты^,., Д, йа). Возможные значения для этих параметров приведены в таблице.

Значение

Задействованные коэффициенты

Значение коэффициентов

GL ZERO S,D (0, 0, 0, 0)
GL ONE S,D (1,1,1,1)
GL DST COLOR S

(Rd, G,,, В ,i, A J)

GL SRC COLOR D (Rs, Gs, Bs.
GL ONE MINUS DST COLOR S

(1, 1, 1,\)-(Rtl, G„, Вd, Ad)

GL ONE MINUS SRC COLOR D (1, 1, 1,\)-(R„G„B„A,)
GL SRC ALPHA S, D (As, A 5., A A., A s)
GL ONE MINUS SRC ALPHA S, D (1, 1, 1, \)-(A„A„A„A.)

Компьютерная графика. Полигональные модели

GLDSTALPHA S,D (Ad,Ad,Ad,Ad)
GL_ONE_MINUS_DST_ALPHA S,D (1, 1, 1, \)-(Ad,Ad,A(hAd)
GL_SRC_ALPHA_SATURATE S (/; /; /,i)/-min(4 \-Ad)

12.8. Вывод битовых изображений

OpenGL поддерживает вывод битовых масок (изображений), когда на Л пиксел приходится 1 бит.

Для вывода битовых масок служит процедура

void gIBitmap ( GLsizeï width, GLsizei height, GLfloat xo, GLfloat yo, GLfloat xi, GLfloat yi, const GLubyte * bitmap );

Эта процедура выводит изображение, задаваемое параметром bitmap. Битовое изображение выводится начиная с текущей растровой позиции. Параметры width и height задают размер битового изображения в пикселах. Параметры хо и уо используются для задания положения нижнего левого угла выводимого изображения относительно текущей растровой позиции, параметры xi и yi представляют собой величины, прибавляемые к текущей растровой позиции после вывода изображения.

Для задания текущей растровой позиции служит процедура

void gIRasterPos {234}{sifd}[v]( TYPE x, TYPE y, TYPE z );

Для задания того, в каком формате хранятся пикселы в передаваемом изображении, служит команда

void glPixelStore{if}(Glenum pname, Glint param );

Аргумент pname определяет устанавливаемый параметр и может принимать одно из 12 значений (по 6 на чтение и запись пикселов).


⇐ Предыдущая| |Следующая ⇒