Я работал над графическим проектом, создавая Depth of Field. Метод выполняет несколько проходов, каждый из которых визуализирует сцену с различными ближними и дальними параметрами отсечения, так что он отображает разные диапазоны глубины на каждом проходе.
Идея состоит в том, чтобы применить ядро размытия на каждом отдельном слое путем рендеринга в текстуру и создания размытия на визуализированном квадре (с текстурой). Это все довольно простые вещи. Как работает нормально. Однако часть, которую я не могу получить, - это объединение слоев:
Цветовой буфер очищается с color4 (0,0,0,0) перед каждым проходом. Однако накопление, по-видимому, не позволяет использовать glBlendFunc таким образом, чтобы он накапливался с учетом альфа-канала (т.е. glBlendFunc (GL_SRC_ALPHA, GL_SRC_ONE_MINUS_ALPHA)).
Тогда возникает вопрос:
- Влияет ли glBlendFunc на glAccum?
- Если нет, как я могу обойти это?
Судя по документации, это не соответствует действительности, так как не упоминается, однако кажется, что это очень полезная функция.
С уважением,
R