Size: a a a

pro.graphon (and gamedev)

2020 March 04

AM

Aleksey Muravev in pro.graphon (and gamedev)
Vitaliy ◀️TriΔng3l▶️ Kuzmin
хотя, просто с Z pass и фронтфейсами много лишних пикселей получится, если смотришь сквозь лампочку вдаль(
Вот я об этом и говорю
источник

k

koren in pro.graphon (and gamedev)
Aleksey Muravev
Вот рисуешь ты сферу света, а в неё ничего не попадает. Но стенсилом твоим подмечено. Вывод: не то ты в стенсил метишь
Стенсилом подмечено?
источник

AM

Aleksey Muravev in pro.graphon (and gamedev)
koren
Стенсилом подмечено?
Ты же объекты собрался туда метить
источник

k

koren in pro.graphon (and gamedev)
Если там нет объекта, то и стенсил у меня пустой
источник

k

koren in pro.graphon (and gamedev)
Чего непонятного?
источник

eb

ed braed in pro.graphon (and gamedev)
Так, давайте я тоже выскажусь:
Если брать 1 бит на все сферы, мы получим условную маску для расчёта света. Это понятно. Но не понятно какой в ней смысл, если мы например находимся внутри сферы, или она просто загораживает 99% скринспейса..
Потому что условие в этом случае будет "считать все источники в этом пиксиле, или нет".

Тут я вижу смысл именно связывать некий пиксель скринспейса с неким списком источников освещения.
Как это в tile-based-deferred работает +/- понятно.
А как со сферами?
источник

S

Sergey in pro.graphon (and gamedev)
ed braed
*"Бит будет показывать, лежит ли данный фрагмент во всех сферах."???
Хотя бы в одну сферу.
Как раз для борьбы с проблемой "смотрим вдаль через лампочку" или "смотрим на далёкие лампочки через модель".
источник

k

koren in pro.graphon (and gamedev)
koren
Если там нет объекта, то и стенсил у меня пустой
.
источник

VK

Vitaliy ◀️TriΔng3l▶️ Kuzmin in pro.graphon (and gamedev)
Надо для одного bounding volume рисовать сначала бэкфейсы, потом фронтфейсы
источник

VK

Vitaliy ◀️TriΔng3l▶️ Kuzmin in pro.graphon (and gamedev)
Потом для другого
источник

VK

Vitaliy ◀️TriΔng3l▶️ Kuzmin in pro.graphon (and gamedev)
То есть, половина примитивов от меша с одним winding order, половина с другим
источник

VK

Vitaliy ◀️TriΔng3l▶️ Kuzmin in pro.graphon (and gamedev)
И для фронтфейсов ставить бит, что лампочка не скрыта за стеной
источник

VK

Vitaliy ◀️TriΔng3l▶️ Kuzmin in pro.graphon (and gamedev)
а, тьфу, не прокатит, мы не можем в одном draw call переключать depth test
источник

VK

Vitaliy ◀️TriΔng3l▶️ Kuzmin in pro.graphon (and gamedev)
но нет
источник

VK

Vitaliy ◀️TriΔng3l▶️ Kuzmin in pro.graphon (and gamedev)
всё с Z fail
источник

S

Sergey in pro.graphon (and gamedev)
ed braed
Так, давайте я тоже выскажусь:
Если брать 1 бит на все сферы, мы получим условную маску для расчёта света. Это понятно. Но не понятно какой в ней смысл, если мы например находимся внутри сферы, или она просто загораживает 99% скринспейса..
Потому что условие в этом случае будет "считать все источники в этом пиксиле, или нет".

Тут я вижу смысл именно связывать некий пиксель скринспейса с неким списком источников освещения.
Как это в tile-based-deferred работает +/- понятно.
А как со сферами?
Да, действительно.

Я думал про свой кейс, там через полигоны видно много далёких источников, и камера почти никогда не бывает внутри сферы.
источник

AM

Aleksey Muravev in pro.graphon (and gamedev)
koren
Чего непонятного?
Они есть, но свет до них не достаёт
источник

k

koren in pro.graphon (and gamedev)
Aleksey Muravev
Они есть, но свет до них не достаёт
Если не достигает, то просто discard
источник

AM

Aleksey Muravev in pro.graphon (and gamedev)
koren
Если не достигает, то просто discard
Не делай так
источник

k

koren in pro.graphon (and gamedev)
Aleksey Muravev
Не делай так
?
источник