Войти
ПрограммированиеФорумГрафика

Vertex attributes для shadow pass

Страницы: 1 2 3 4 Следующая »
#0
12:51, 10 дек. 2018

Во всех гайдах, что я видел, меши в теневом проходе рендерятся точно также, как и в простом геометрическом проходе. Но я вот задумался... Теневому проходу нужен только атрибут позиции. Дак может включать только его?
Сейчас мой меш состоит из VAO, в который забинжены VBO {PNT...} и IBO. Для того, чтобы включить только конкретный атрибут, нужно либо создать еще один VAO, либо биндить все содержимое ручками. 
Что думаете по этому поводу? Как будет максимально профитно?


#1
15:23, 10 дек. 2018

d934
> Что думаете по этому поводу?

всё остально работает максимально быстро ? :)
если альфатест то и uv нужна

#2
16:53, 10 дек. 2018

d934
> Теневому проходу нужен только атрибут позиции. Дак может включать только его?
Вроде как вендоры рекомендуют именно так и делать.

#3
1:21, 11 дек. 2018

d934
А у вас один VB ?  Или все атрибуты по разным VB лежат?

Если в одном - то без разницы.

#4
11:05, 11 дек. 2018

Да, лишние *BO биндить не стоит.

#5
12:05, 11 дек. 2018

В гл ничего не надо - слишком большой кост дро колла сведет на нет все "оптимизации".
А для нормальных гапи можно еще и геометрию оптимизированную сгенерить (только позиции, швы зашиты, все сабсеты склеены,  etc.).

#6
12:10, 11 дек. 2018

Wraith
Кост дроколла в OpenGL? Серьезно что ли?

#7
13:07, 11 дек. 2018

Dampire
> Кост дроколла в OpenGL? Серьезно что ли?
вполне

#8
13:09, 11 дек. 2018

Misanthrope
В таком случае что подразумевается под дроколлом не подскажешь? Потому что сам дрокол (который glDraw*) не стоит практически ничего, по сравнению со стейт чейнджами, которые как раз таки обычно нормально так оптимизируют в OpenGL (в том числе и redunant).

#9
13:36, 11 дек. 2018

Wraith
> слишком большой кост дро колла сведет на нет все "оптимизации".

какие ваши доказательства ?

> А для нормальных гапи можно еще и геометрию оптимизированную сгенерить (только
> позиции, швы зашиты, все сабсеты склеены, etc.).

я так понял, в GL нельзя так сделать ?

#10
14:24, 11 дек. 2018

Wraith
> В гл ничего не надо - слишком большой кост дро колла сведет на нет все
> "оптимизации".
Скорость дварвкола зависит от GAPI только на уровне больше/меньше микро-копирований структур внутри самого GAPI (процент очень маленький для x86). Основная работа дравкола это загрузка всех данных необходимых для отрисовки в видеокарту - а это прежде всего драйвер и сама видюха, а не GAPI.

d934
Для теневого прохода я бы упростил сами шейдеры если они имеют твою собственную специфику. И опционно отключал UV и остальное по необходимости.

#11
16:36, 11 дек. 2018

Dampire
> Потому что сам дрокол (который glDraw*) не стоит практически ничего
а миллион дравколов ?

#12
17:40, 11 дек. 2018

Misanthrope
> а миллион дравколов ?

миллион батчей в секунду ? :)

#13
20:23, 11 дек. 2018

Пользуясь случаем, передаются привет Nvidia, у которых дрова мультипоточные.
Кроме того хотелось бы передать привет автоматическому батчингу дроколлов, которое делает драйвер, когда состояния не менялись.

И как результат передаются привет товарищам, ищущим стоимость дроколла в OpenGl и хочу пожелать им удачи в их начинаниях

#14
20:31, 11 дек. 2018

Misanthrope
Попробуй, потом расскажешь. Заодно ботлнек замеришь где.

Страницы: 1 2 3 4 Следующая »
ПрограммированиеФорумГрафика

Тема в архиве.