mirror of https://github.com/mgba-emu/mgba.git
GBA Video: Fix effects blending improperly in some non-last windows
This commit is contained in:
parent
ed2353ff76
commit
b6f863be26
1
CHANGES
1
CHANGES
|
@ -94,6 +94,7 @@ Emulation fixes:
|
||||||
- GBA Memory: Fix open bus from IWRAM (fixes mgba.io/i/1575)
|
- GBA Memory: Fix open bus from IWRAM (fixes mgba.io/i/1575)
|
||||||
- GBA Video: Fix OpenGL renderer 512x512 backgrounds (fixes mgba.io/i/1572)
|
- GBA Video: Fix OpenGL renderer 512x512 backgrounds (fixes mgba.io/i/1572)
|
||||||
- GBA Video: Fix BLDY for semitransparent sprite on non-target-2 backgrounds
|
- GBA Video: Fix BLDY for semitransparent sprite on non-target-2 backgrounds
|
||||||
|
- GBA Video: Fix effects blending improperly in some non-last windows
|
||||||
Other fixes:
|
Other fixes:
|
||||||
- 3DS: Fix screen darkening (fixes mgba.io/i/1562)
|
- 3DS: Fix screen darkening (fixes mgba.io/i/1562)
|
||||||
- Core: Fix uninitialized memory issues with graphics caches
|
- Core: Fix uninitialized memory issues with graphics caches
|
||||||
|
|
|
@ -652,10 +652,11 @@ static void GBAVideoSoftwareRendererDrawScanline(struct GBAVideoRenderer* render
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
for (w = 0; w < softwareRenderer->nWindows; ++w) {
|
for (w = 0; w < softwareRenderer->nWindows; ++w) {
|
||||||
|
int end = softwareRenderer->windows[w].endX;
|
||||||
if (!GBAWindowControlIsBlendEnable(softwareRenderer->windows[w].control.packed)) {
|
if (!GBAWindowControlIsBlendEnable(softwareRenderer->windows[w].control.packed)) {
|
||||||
|
x = end;
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
int end = softwareRenderer->windows[w].endX;
|
|
||||||
if (softwareRenderer->blendEffect == BLEND_DARKEN) {
|
if (softwareRenderer->blendEffect == BLEND_DARKEN) {
|
||||||
for (; x < end; ++x) {
|
for (; x < end; ++x) {
|
||||||
uint32_t color = softwareRenderer->row[x];
|
uint32_t color = softwareRenderer->row[x];
|
||||||
|
|
Loading…
Reference in New Issue