Я пытаюсь нарисовать прозрачные текстуры в отложенном затенении.
Это макет gBuffer:
_depthComponentTexture = new Texture(_width, _height, GL_DEPTH_COMPONENT24, GL_DEPTH_COMPONENT, GL_NEAREST);
_worldNormalSpecPower = new Texture(_width, _height, GL_RGBA16F, GL_RGBA, GL_NEAREST);
_albedoSpecularIntensity = new Texture(_width, _height, GL_RGBA8, GL_RGBA, GL_NEAREST);
_3unusedShaderless = new Texture(_width, _height, GL_RGBA16F, GL_RGBA, GL_NEAREST);
При прямом рендеринге простой вызов glEnabeld blend и blendFunc работал, как и ожидалось, но так как я переключился на отложенный, это не так. Нужно ли резервировать альфа-канал в альбедо / диффузной части буфера? Также GL_ONE к GL_ONE отлично работает для накопления света.
Что я пробовал:
glEnable(GL_BLEND);
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);