Permalink
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Browse files
Implemented more flexible blending modes for accelerated renderers
This fixes bug 2594 - Propose new blend mode, SDL_BLENDMODE_BLEND_DSTA blendMode = SDL_ComposeCustomBlendMode(SDL_BLENDFACTOR_SRC_ALPHA, SDL_BLENDFACTOR_ONE_MINUS_SRC_ALPHA, SDL_BLENDOPERATION_ADD, SDL_BLENDFACTOR_ZERO, SDL_BLENDFACTOR_ONE, SDL_BLENDOPERATION_ADD); This fixes bug 2828 - Subtractive Blending blendMode = SDL_ComposeCustomBlendMode(SDL_BLENDFACTOR_SRC_ALPHA, SDL_BLENDFACTOR_ONE, SDL_BLENDOPERATION_SUBTRACT, SDL_BLENDFACTOR_ZERO, SDL_BLENDFACTOR_ONE, SDL_BLENDOPERATION_SUBTRACT); This goes partway to fixing bug 3684 - Add support for a pre-multiplied alpha blending mode blendMode = SDL_ComposeCustomBlendMode(SDL_BLENDFACTOR_ONE, SDL_BLENDFACTOR_ONE_MINUS_SRC_ALPHA, SDL_BLENDOPERATION_ADD, SDL_BLENDFACTOR_ONE, SDL_BLENDFACTOR_ONE_MINUS_SRC_ALPHA, SDL_BLENDOPERATION_ADD);
- Loading branch information
Showing
with
718 additions
and 778 deletions.
- +58 −1 include/SDL_blendmode.h
- +1 −0 src/dynapi/SDL_dynapi_overrides.h
- +1 −0 src/dynapi/SDL_dynapi_procs.h
- +135 −0 src/render/SDL_render.c
- +9 −0 src/render/SDL_sysrender.h
- +63 −42 src/render/direct3d/SDL_render_d3d.c
- +135 −72 src/render/direct3d11/SDL_render_d3d11.c
- +2 −1 src/render/opengl/SDL_glfuncs.h
- +79 −17 src/render/opengl/SDL_render_gl.c
- +2 −0 src/render/opengles/SDL_glesfuncs.h
- +99 −25 src/render/opengles/SDL_render_gles.c
- +1 −0 src/render/opengles2/SDL_gles2funcs.h
- +112 −62 src/render/opengles2/SDL_render_gles2.c
- +11 −556 src/render/opengles2/SDL_shaders_gles2.c
- +1 −1 src/render/opengles2/SDL_shaders_gles2.h
- +9 −1 test/testsprite2.c
Oops, something went wrong.