Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

ColorKey&Direct3D [D7, WinXP]


Pa5ha ©   (2004-04-15 19:12:00) 

Есть ли в Direct3D цветовой ключ и как его юзать?


Pa5ha   (2004-04-17 14:48:00) [1]

Спасибо.
Кстати, отключить-то нельзя - сцена трехмерная, вывод моделей  хаотичный.


Sapersky   (2004-04-17 11:15:00) [2]

Даже при Альфа=0 данные записываются в ZBUFFER.

Отключить можно -
D3DDEV8.SetRenderState(D3DRS_ZWRITEENABLE, 0);

А вообще в качестве цветового ключа можно использовать альфа-тест:

D3DDEV8.SetRenderState(D3DRS_ALPHAREF, 150);
D3DDEV8.SetRenderState(D3DRS_ALPHAFUNC, D3DCMP_GREATER);
D3DDEV8.SetRenderState(D3DRS_ALPHATESTENABLE, 1);

Т.е. "выводить все пиксели, альфа-компонент которых больше 150".

(Взято из примеров Lord Trancos'а, которые, по крайней мере частично, должны быть в комплекте с PowerDraw).


Pa5ha   (2004-04-16 20:33:00) [3]

Альфа-канал - это просто прекрасно, но если сначала хрени с альфой вывести, а затем под них чтонить, то хрень с альфой перекроет все выведенное поже и будут пятна. Даже при Альфа=0 данные записываются в ZBUFFER.


Mihey   (2004-04-15 21:34:00) [4]

Помоему там альфа-канал.


Наверх

Титульная страница Поиск, карта сайта Написать письмо