Рисую ветки деревьев с альфа каналом. Хочу сделать так: нарисовать часть где альфа > 0.5 полностью непрозрачными и со включенным тестингом и записью глубины, а часть где альфа < 0.5 с тестингом глубины, но без записи в маску.
Думаю только с бубном... Но я чот не совсем понял задачу... Может так:
if (alpha > 0.5) gl_FragColor = color; else discard;
?
Думаю, придется использовать текстуру глубины в шейдере деревьев...
Blew_zc
>Думаю, придется использовать текстуру глубины в шейдере деревьев...
Мне кажется загон.
Наверное, придется нарисовать в два прохода :/
mocia
Почему загон?
> Наверное, придется нарисовать в два прохода :/
Ну если ты в коде отличаешь <0.5 и >0.5, тогда чем плох вывод в 2 прохода?
Иначе в два прохода не получится.
mocia
Чем мой код не устраивает?
Executor
> mocia
> Чем мой код не устраивает?
mocia
Кстати, да =)
В два прохода работает, но тормозновато :/
Executor
твой код отсечет что меньше 0.5, а надо нарисовать но без записи в маску
не знаю стоит ли пробовать с текстурой глубины - будет ли шустрее работать?
...уж больно много ковыряться чтобы реализовать такое дело
mocia
>но без записи в маску
Маска - это что? Depth Buffer ?
Blew_zc
да, маска глубины == Depth Buffer
mocia
> но без записи в маску
:)
Тема в архиве.