![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
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]Помоему там альфа-канал.