GBA Video: Fix blend issues with obscured middle layers
Jeffrey Pfau jeffrey@endrift.com
Tue, 23 Dec 2014 00:10:08 -0800
2 files changed,
3 insertions(+),
2 deletions(-)
M
CHANGES
→
CHANGES
@@ -24,6 +24,7 @@ - GBA Memory: Properly initialize 1 Mb flash, and add debug logging
- Qt: Properly set default video recording settings - GBA Audio: Make larger buffer sizes than 2048 actually work properly - GBA Audio: Audio buffer sizes are now correct sizes for both sample rates + - GBA Video: Fix blend issues with obscured middle layers Misc: - Qt: Disable sync to video by default - GBA: Exit cleanly on FATAL if the port supports it
M
src/gba/renderers/video-software.c
→
src/gba/renderers/video-software.c
@@ -1303,7 +1303,7 @@ int tileEnd = ((length + inX) >> 3) - (inX >> 3);
uint16_t* vram = renderer->d.vram; if (!objwinSlowPath) { - if (!(flags & FLAG_TARGET_2)) { + if (!(flags & FLAG_TARGET_2) && renderer->blendEffect != BLEND_ALPHA) { if (!background->multipalette) { DRAW_BACKGROUND_MODE_0(16, NoBlend, NO_OBJWIN); } else {@@ -1317,7 +1317,7 @@ DRAW_BACKGROUND_MODE_0(256, Blend, NO_OBJWIN);
} } } else { - if (!(flags & FLAG_TARGET_2)) { + if (!(flags & FLAG_TARGET_2) && renderer->blendEffect != BLEND_ALPHA) { if (!background->multipalette) { DRAW_BACKGROUND_MODE_0(16, NoBlend, OBJWIN); } else {