logo search
Литература_1 / photon_old

Поддержка альфа-сопряжения

Альфа-сопряжение – это технология прорисовки прозрачности при рисовании какого-то объекта. В этой технологии комбинируется цвет рисуемого обьекта (источник) и цвет чего-то того, на чём сверху рисуется объект (получатель). Чем больше объём цвета источника, тем более непрозрачным выглядит объект.

Математически фактор смешения представляет из себя вещественное число в диапазоне от 0 до 1 включительно. В Photon микроGUI этот фактор хранится в 8 битах, т.е. масштабирован в диапазоне от 0 до 255 включительно.

32-битовый цвет создаётся из четырёх 8-битовых каналов: альфа, красный, зелёный и синий. Эти каналы представлены как (А, R, G, B). При ссылке на источник, каналы обозначаются как As, Rs, Gs и Bs; для получателя они Ad, Rd, Gd и Bd. Альфа-сопряжение примитивов драйвера поддерживает только базовое непрозрачное сопряжение с сопряжением источника:

(As, As, As, As) + ((1, 1, 1, 1) - ( As, As, As, As)).

Альфа-сопряжение может быть использовано двумя способами:

или

Функции включают:

PgAlphaOff()

Выключение операций альфа-сопряжения

PgAlphaOn()

Включение операций альфа-сопряжения

PgAlphaValue()

Извлечение альфа-компонента из значения цвета

PgARGB()

Преобразование значений альфа, красного, зелёного и синего в комбинированный формат цвета

PgSetAlpha()

Детальная установка параметров альфа-сопряжения

PgSetAlphaBlend()

Простая установка параметров альфа-сопряжения