Browse Source

Change SDL_BLENDMODE_MUL for gl renderers
Add FIXME for PSP

Sylvain 2 years ago
parent
commit
899ee8f75a
2 changed files with 2 additions and 1 deletions
  1. 1 1
      src/render/SDL_render.c
  2. 1 0
      src/render/psp/SDL_render_psp.c

+ 1 - 1
src/render/SDL_render.c

@@ -85,7 +85,7 @@ this should probably be removed at some point in the future.  --ryan. */
 
 #define SDL_BLENDMODE_MUL_FULL                                                                                    \
     SDL_COMPOSE_BLENDMODE(SDL_BLENDFACTOR_DST_COLOR, SDL_BLENDFACTOR_ONE_MINUS_SRC_ALPHA, SDL_BLENDOPERATION_ADD, \
-                          SDL_BLENDFACTOR_DST_ALPHA, SDL_BLENDFACTOR_ONE_MINUS_SRC_ALPHA, SDL_BLENDOPERATION_ADD)
+                          SDL_BLENDFACTOR_ZERO, SDL_BLENDFACTOR_ONE, SDL_BLENDOPERATION_ADD)
 
 #if !SDL_RENDER_DISABLED
 static const SDL_RenderDriver *render_drivers[] = {

+ 1 - 0
src/render/psp/SDL_render_psp.c

@@ -992,6 +992,7 @@ static void PSP_SetBlendState(PSP_RenderData *data, PSP_BlendState *state)
             break;
         case SDL_BLENDMODE_MUL:
             sceGuTexFunc(GU_TFX_MODULATE, GU_TCC_RGBA);
+            /* FIXME SDL_BLENDMODE_MUL is simplified, and dstA is in fact un-changed.*/
             sceGuBlendFunc(GU_ADD, GU_DST_COLOR, GU_ONE_MINUS_SRC_ALPHA, 0, 0);
             sceGuEnable(GU_BLEND);
             break;