Forward+ это графическая техника, которая является развитием классической техники Forward (учёт освещения одновременно с выводом геометрии). Основная идея была индуцирована компанией AMD в демке
Суть рендера Forward+ можно вкратце изложить следующим способом :
1) Делается ZPrepass - заполняем depth buffer
2) Делается lights tiled culling - для каждого тайла (обычно размером 8x8) с использованием compute shaders находится список лайтов, влияющих на этот тайл ( как правило это RWBuffer)
3) Делается обычный Forward проход для геометрии, но при освещении в PS выбираются только те источники освещения, которые оказывают влияние на текущий фрагмент.
В демо от AMD это делается через динамический цикл по всему множеству лайтов, но при этом делается быстрый переход на следующую итерацию, если лайт не влияет на текущий тайл.
В сравнении с техниками Deferred Shading и Deferred Lighting такая техника имеет ряд преимуществ: не имеет проблем с размером GBuffer и MSAA и не имеет проблем с количеством DIPs соответственно.
>> В сравнении с техниками Deferred Shading и Deferred Lighting такая техника имеет преимуществ: не имеет проблем с размером GBuffer и MSAA и не имеет проблем с количеством DIPs соотвественно.
как раз таки с дипами там есть проблема, потому что надо делать prepass (т.к. overdraw убивает этот подход на корню).
В случае с классическим деферредом overdraw большой роли не играет.
Хочу попробовать внедрить эту технику в свой движок, открыл их дэмку, и там тихий ужас... даже не знаю с чего начать... Можете что посоветовать, какие-нибудь основные куски кода, под спойлер что ли копирнуть или еще что?)
bazhenovc > как раз таки с дипами там есть проблема, потому что надо делать prepass (т.к. > overdraw убивает этот подход на корню).
Некоторые нехорошие дяди делают zprepass и с DL. Если у тебя в сцене не сильный overdraw, для Forward+ можно обойтись без zprepass - в итоге будет в два раза меньше DIPs.
IronBunny > сложности - ну вот dise & guerila, уже и epic > прикручивают фотометрические профили, разные для разных IronBunny > И как в етот рулез вписать лайты со сложным шейпом?
Так вопрос в шейпах или продвинутом лайтинге ?
> Я понял что альтернатива - просто смешит что в легенде к описанию > вместе с плюсами не описаны минусы. ето не спортивно