Программа по формированию навыков безопасного поведения на дорогах и улицах «Добрая дорога детства» 2





Скачать 475.81 Kb.
НазваниеПрограмма по формированию навыков безопасного поведения на дорогах и улицах «Добрая дорога детства» 2
страница12/13
Дата публикации17.05.2014
Размер475.81 Kb.
ТипРуководство
100-bal.ru > Информатика > Руководство
1   ...   5   6   7   8   9   10   11   12   13

7.Смешивание с буфером кадра и альфа-тест

7.1.Смешивание с буфером кадра


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

Формула смешивания в современных графических ускорителях выглядит так

.

Здесь S (source) – цвет, полученный смешиванием текстур; D – цвет в буфере кадра; op – операция, которая может принимать следующие значения (задаются перечисляемым значением D3DBLENDOP):



Все операции в приведенных формулах являются покомпонентными.

Коэффициенты A и B также являются цветами и могут принимать значения, перечисленные в таблице 5.
Таблица 5. Значения коэффициентов A и B функции смешивания с буфером кадра.

Значение

Значение в D3DBLEND

Значение

Значение в D3DBLEND

0

D3DBLEND_ZERO

1

D3DBLEND_ONE

const

D3DBLEND_BLENDFACTOR

1 – const

D3DBLEND_INVBLENDFACTOR

S.color

D3DBLEND_SRCCOLOR

1 – S.color

D3DBLEND_INVSRCCOLOR

S.alpha

D3DBLEND_SRCALPHA

1 – S.alpha

D3DBLEND_INVSRCALPHA

D.color

D3DBLEND_DESTCOLOR

1 – D.color

D3DBLEND_INVDESTCOLOR

D.alpha

D3DBLEND_DESTALPHA

1 – D.alpha

D3DBLEND_INVDESTALPHA


Для задания смешивания с буфером кадра используются следующие настройки (устанавливаются через SetRenderState()):

  • D3DRS_ALPHABLENDENABLE – включение/выключение смешивания

  • D3DRS_SRCBLEND – для задания коэффициента А

  • D3DRS_DESTBLEND – для задания коэффициента B

  • D3DRS_BLENDFACTOR – фактор смешивания для значений A и B D3DBLEND_BLENDFACTOR и D3DBLEND_INVBLENDFACTOR (представляет собой цвет)

  • D3DRS_BLENDOP – для задания операции смешивания.

Чем же тогда в свете вышесказанного является прозрачность? В компьютерной графике принято использовать для этой цели альфа-канал (канал прозрачности) и имитировать прозрачность объектов с помощью операции альфа смешивания:



Здесь значение альфа-канала выступает в виде коэффициента непрозрачности объекта. Рассмотрим два наиболее часто используемых способа применения альфа-смешивания.

Первый из них – прозрачность объекта. Допустим, мы делаем витражное окно. Витраж состоит из металлической решетки, задающей рисунок, и цветных стекол, его раскрашивающих. Можно делать металлическую решетку непрозрачными треугольниками, а стекла – прозрачными. Однако это приведет к излишне большому числу треугольников. Чтобы достичь такого же эффекта, достаточно использовать два треугольника и текстуру с альфа-каналом, в котором будет содержаться непрозрачность (см. рис. 11 и рис. 12).


Рис. 11. Вид из окна на “двор”, в котором растут пальмы. Витражное окно сделано альфа-смешиванием.



Рис. 12. Текстура витража. RGB компоненты слева, альфа-канал – справа.
Второй способ использования альфа смешивания – задание маски. Например, требуется смоделировать листву дерева. Понятно, что триангуляция листьев дерева даст очень большое количество треугольников. Поэтому можно рисовать лист, как плоскость из двух треугольников, задавая форму листа в альфа-канале текстуры. Более того, можно пойти дальше – поместить в текстуре целую ветку или даже всю крону дерева (см. рис. 13).

Однако при этом возникают артефакты, связанные с z-буфером. Фактически, при использовании альфа-смешивания результат становится зависящим от порядка вывода объектов. Допустим, два прозрачных объекта стоят рядом друг за другом. В реальности мы должны видеть дальний объект сквозь ближний. Однако если мы выведем сначала ближний объект, то он запишет в z-буфер свои значения z и пиксели дальнего объекта, которые перекрываются ближним объектом, не будут ставиться в буфер кадра, так как не пройдут z-тест (см. рис. 14).

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



Рис. 14. Слева – задняя коробка выводится первой (правильный порядок), справа – передняя коробка выводится первой и перекрывает в z-буфере пиксели задней (неправильный порядок).
1   ...   5   6   7   8   9   10   11   12   13

Похожие:

Программа по формированию навыков безопасного поведения на дорогах и улицах «Добрая дорога детства» 2 iconПрограмма по формированию навыков безопасного поведения на дорогах...
Проектно-образовательная деятельность по формированию у детей навыков безопасного поведения на улицах и дорогах города
Программа по формированию навыков безопасного поведения на дорогах и улицах «Добрая дорога детства» 2 iconПрограмма по формированию навыков безопасного поведения на дорогах...
Цель: Создание условий для формирования у школьников устойчивых навыков безопасного поведения на улицах и дорогах
Программа по формированию навыков безопасного поведения на дорогах и улицах «Добрая дорога детства» 2 iconПрограмма по формированию навыков безопасного поведения на дорогах...
«Организация воспитательно- образовательного процесса по формированию и развитию у дошкольников умений и навыков безопасного поведения...
Программа по формированию навыков безопасного поведения на дорогах и улицах «Добрая дорога детства» 2 iconПрограмма по формированию навыков безопасного поведения на дорогах...
Цель: формировать у учащихся устойчивые навыки безопасного поведения на улицах и дорогах, способствующие сокращению количества дорожно-...
Программа по формированию навыков безопасного поведения на дорогах и улицах «Добрая дорога детства» 2 iconПрограмма по формированию навыков безопасного поведения на дорогах...
Конечно, главная роль в привитии навыков безопасного поведения на проезжей части отводится родителям. Но я считаю, что процесс воспитания...
Программа по формированию навыков безопасного поведения на дорогах и улицах «Добрая дорога детства» 2 iconПрограмма по формированию навыков безопасного поведения на дорогах...
Поэтому очень важно воспитывать у детей чувство дисциплинированности и организованности, чтобы соблюдение правил безопасного поведения...
Программа по формированию навыков безопасного поведения на дорогах и улицах «Добрая дорога детства» 2 iconПрограмма по формированию навыков безопасного поведения на дорогах...
Всероссийский конкур сочинений «Пусть помнит мир спасённый» (проводит газета «Добрая дорога детства»)
Программа по формированию навыков безопасного поведения на дорогах и улицах «Добрая дорога детства» 2 iconПрограмма по формированию навыков безопасного поведения на дорогах...
Поэтому очень важно воспиты­вать у детей чувство дисциплинированности, добиваться, чтобы соблюдение правил безопасного поведения...
Программа по формированию навыков безопасного поведения на дорогах и улицах «Добрая дорога детства» 2 iconПрограмма по формированию навыков безопасного поведения на дорогах...

Программа по формированию навыков безопасного поведения на дорогах и улицах «Добрая дорога детства» 2 iconПрограмма по формированию навыков безопасного поведения на дорогах...

Программа по формированию навыков безопасного поведения на дорогах и улицах «Добрая дорога детства» 2 iconПрограмма по формированию навыков безопасного поведения на дорогах...

Программа по формированию навыков безопасного поведения на дорогах и улицах «Добрая дорога детства» 2 iconПрограмма по формированию навыков безопасного поведения на дорогах...

Программа по формированию навыков безопасного поведения на дорогах и улицах «Добрая дорога детства» 2 iconПрограмма по формированию навыков безопасного поведения на дорогах...

Программа по формированию навыков безопасного поведения на дорогах и улицах «Добрая дорога детства» 2 iconПрограмма по формированию навыков безопасного поведения на дорогах...

Программа по формированию навыков безопасного поведения на дорогах и улицах «Добрая дорога детства» 2 iconПрограмма по формированию навыков безопасного поведения на дорогах...

Программа по формированию навыков безопасного поведения на дорогах и улицах «Добрая дорога детства» 2 iconПрограмма по формированию навыков безопасного поведения на дорогах...



Школьные материалы


При копировании материала укажите ссылку © 2013
контакты
100-bal.ru
Поиск