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

OpenGL Вопросы (80 стр)

Страницы: 179 80 81 82100 Следующая »
#1185
22:04, 4 окт 2023

Dmitry_Milk
> использовать также текстуры с FLOAT для каждой цветовой компоненты в
> COLOR_ATTACHMENT?
Да, насколько помню.

#1186
11:07, 12 окт 2023

Как сегодня побеждают peter panning? Делают двойные стенки мешей в 3D редакторе или используют геометрический шейдер для этого?

#1187
17:18, 12 окт 2023

iw4nna.rock
> Как сегодня побеждают peter panning? Делают двойные стенки мешей в 3D редакторе
> или используют геометрический шейдер для этого?
Так же как и раньше. Бросают тени только от бекфейсов, и делают отрицательное смещение.

#1188
19:45, 12 окт 2023

MrShoor
> Так же как и раньше. Бросают тени только от бекфейсов, и делают отрицательное
> смещение.
Это для устранения Shadow acne.
Peter panning - это просветы возле рёбер.

#1189
20:14, 12 окт 2023

iw4nna.rock
> Peter panning - это просветы возле рёбер.
Peter panning - это когда объект должен был бы лежать на плоскости, но из-за тени он как бы парит. Парение возникает если сделать положительное смещение. Если же сделать отрицательное смещение - то все фронтфейсы уйдут в тень. Поэтому при рендере в шедоумапу рендерят только бекфейсы.
А акне возникает - если смещение вообще не делать, либо если смещение сильно маленькое.

#1190
20:23, 12 окт 2023

iw4nna.rock
> Как сегодня побеждают peter panning?
В новых играх используют contact shadows для мелких деталей, бонусом это устраняет(маскирует) peter panning. Но это дорого.

#1191
21:06, 14 окт 2023

Записываю в текстуру свойства материала, чтобы затем использовать эту текстуру в другом проходе.
И получаю артефакты, когда 4-й канал, то есть канал прозрачности, меньше единицы, то R, G и B каналы искажаются.
Есть ли способ сказать OpenGL'у не использовать блендинг для одного color_attachment?

#1192
0:05, 15 окт 2023

iw4nna.rock
> Есть ли способ сказать OpenGL'у не использовать блендинг для одного
> color_attachment?
Оказалось, что есть способ указать блендинг для конкретной текстуры фреймбуфера:

glBlendFuncSeparatei(0, GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA,  GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
#1193
8:44, 15 окт 2023

iw4nna.rock
> > Есть ли способ сказать OpenGL'у не использовать блендинг для одного
> > color_attachment?
Можно же через glDisablei(GL_BLEND, /*номер буфера цвета*/).

#1194
11:09, 15 окт 2023

prowkan
> glDisablei(GL_BLEND, /*номер буфера цвета*/)
О, даже такое есть! Теперь я буду как буриданов осёл.

#1195
11:11, 15 окт 2023

iw4nna.rock
> Теперь я буду как буриданов осёл
Режим блендинга и включение-выключение

#1196
11:32, 15 окт 2023

1Man1
остановлюсь на этом:

glEnablei(GL_BLEND, 0);
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);

ведь блендинг больше нигде не нужен, кроме цветового канала. И тогда не придётся включать и выключать, достаточно один раз включить для 0-го буфера фреймбуфера.

#1197
14:56, 15 окт 2023

Детский сад...

#1198
19:06, 17 окт 2023

Есть текстурный объект с двумя каналами.
Можно ли как то используя технологии ядра 4.5 сделать так, чтобы было два текстурных объекта, шарящих между собой одну и ту же память, но при чтении из которых в шейдере по каналу R, я получал значения из R и G каналов соответсвенно?
Насколько я понял сэмплеры не подойдут, так как для них нельзя задавать swizzle.

#1199
19:41, 17 окт 2023

AMM1AK
Попробуй через  glTextureView сделать алиас текстуры и уже ему задать другой свизл.

Страницы: 179 80 81 82100 Следующая »
ПрограммированиеФорумГрафика