Тема: Xors3D
Показать сообщение отдельно
Старый 25.07.2014, 12:36   #706
Mr_F_
Терабайт исходников
 
Аватар для Mr_F_
 
Регистрация: 13.09.2008
Сообщений: 3,947
Написано 2,189 полезных сообщений
(для 6,051 пользователей)
Ответ: Xors3D

"if (diffuse.a < 0.5f) discard; // реализация маски"
всё верно, должно работать

diffuse.a выдаёт альфаканал.
затем сравниваешь его с 0.5 (в шейдерах цвет считается от 0 до 1, вместо 0-255, т.е. по сути это серый 128), если альфа прозрачнее средней в этом пикселе, то выкидываем этот пиксель.

зачем точка
точка выдаёт элемент типа.
у тебя тип - float4.
в нём 4 элемента-флоата: x,y,z,w, их же альтернативно можно получать через r,g,b,a, нет разницы.
__________________
бложик | geom.io | твиттер | faded | демо 1 2 | роботы | лайтмаппер
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Arton (25.07.2014)