mirror of https://github.com/mgba-emu/mgba.git
GBA Video: Fix OBJWIN mosaic sprites
This commit is contained in:
parent
2cbf40cc13
commit
3b8639aa05
|
@ -236,7 +236,12 @@ int GBAVideoSoftwareRendererPreprocessSprite(struct GBAVideoSoftwareRenderer* re
|
||||||
if (flags & FLAG_OBJWIN) {
|
if (flags & FLAG_OBJWIN) {
|
||||||
SPRITE_NORMAL_LOOP(16, OBJWIN);
|
SPRITE_NORMAL_LOOP(16, OBJWIN);
|
||||||
} else if (GBAObjAttributesAIsMosaic(sprite->a)) {
|
} else if (GBAObjAttributesAIsMosaic(sprite->a)) {
|
||||||
SPRITE_MOSAIC_LOOP(16, NORMAL);
|
if (objwinSlowPath) {
|
||||||
|
objwinPalette = &objwinPalette[GBAObjAttributesCGetPalette(sprite->c) << 4];
|
||||||
|
SPRITE_MOSAIC_LOOP(16, NORMAL_OBJWIN);
|
||||||
|
} else {
|
||||||
|
SPRITE_MOSAIC_LOOP(16, NORMAL);
|
||||||
|
}
|
||||||
} else if (objwinSlowPath) {
|
} else if (objwinSlowPath) {
|
||||||
objwinPalette = &objwinPalette[GBAObjAttributesCGetPalette(sprite->c) << 4];
|
objwinPalette = &objwinPalette[GBAObjAttributesCGetPalette(sprite->c) << 4];
|
||||||
SPRITE_NORMAL_LOOP(16, NORMAL_OBJWIN);
|
SPRITE_NORMAL_LOOP(16, NORMAL_OBJWIN);
|
||||||
|
@ -247,7 +252,12 @@ int GBAVideoSoftwareRendererPreprocessSprite(struct GBAVideoSoftwareRenderer* re
|
||||||
if (flags & FLAG_OBJWIN) {
|
if (flags & FLAG_OBJWIN) {
|
||||||
SPRITE_NORMAL_LOOP(256, OBJWIN);
|
SPRITE_NORMAL_LOOP(256, OBJWIN);
|
||||||
} else if (GBAObjAttributesAIsMosaic(sprite->a)) {
|
} else if (GBAObjAttributesAIsMosaic(sprite->a)) {
|
||||||
SPRITE_MOSAIC_LOOP(256, NORMAL);
|
if (objwinSlowPath) {
|
||||||
|
objwinPalette = &objwinPalette[GBAObjAttributesCGetPalette(sprite->c) << 4];
|
||||||
|
SPRITE_MOSAIC_LOOP(256, NORMAL_OBJWIN);
|
||||||
|
} else {
|
||||||
|
SPRITE_MOSAIC_LOOP(256, NORMAL);
|
||||||
|
}
|
||||||
} else if (objwinSlowPath) {
|
} else if (objwinSlowPath) {
|
||||||
SPRITE_NORMAL_LOOP(256, NORMAL_OBJWIN);
|
SPRITE_NORMAL_LOOP(256, NORMAL_OBJWIN);
|
||||||
} else {
|
} else {
|
||||||
|
|
Loading…
Reference in New Issue