GL_ARB_blend_func_extended (dual source alpha) support

I would like to request support for ARB_blend_func_extended in OpenGL ES Next.

Currently, the .a of the gl_FragColor (or the fragment shader out-variable bound to frag color, as you can do nowadays) is used for two separate things:

  • The value written to the Destination Alpha channel of the framebuffer
  • The SRC_ALPHA alpha value input to the blender

These are arguably two completely separate uses of the same value, and it only makes sense to have the ability to write two separate values as needed.

One immediate use for this is both in the Dolphin (GC/Wii) and PPSSPP (PSP) emulator projects, to simulate the behavior of the emulated GPUs correctly, as they both have a similar ability. Working around the lack of this currently requires dual passing with write masks, which is a drag on performance.

This topic was automatically closed 183 days after the last reply. New replies are no longer allowed.