|
|
@@ -193,7 +193,6 @@ int GBAVideoSoftwareRendererPreprocessSprite(struct GBAVideoSoftwareRenderer* re |
|
|
if (GBAObjAttributesAIsTransformed(sprite->a)) {
|
|
|
int totalWidth = width << GBAObjAttributesAGetDoubleSize(sprite->a);
|
|
|
int totalHeight = height << GBAObjAttributesAGetDoubleSize(sprite->a);
|
|
|
- renderer->spriteCyclesRemaining -= 10;
|
|
|
struct GBAOAMMatrix mat;
|
|
|
LOAD_16(mat.a, 0, &renderer->d.oam->mat[GBAObjAttributesBGetMatIndex(sprite->b)].a);
|
|
|
LOAD_16(mat.b, 0, &renderer->d.oam->mat[GBAObjAttributesBGetMatIndex(sprite->b)].b);
|
|
|
@@ -253,6 +252,7 @@ int GBAVideoSoftwareRendererPreprocessSprite(struct GBAVideoSoftwareRenderer* re |
|
|
if (outX < start || outX >= condition) {
|
|
|
return 0;
|
|
|
}
|
|
|
+ renderer->spriteCyclesRemaining -= 10;
|
|
|
|
|
|
if (!GBAObjAttributesAIs256Color(sprite->a)) {
|
|
|
palette = &palette[GBAObjAttributesCGetPalette(sprite->c) << 4];
|
|
|
@@ -273,7 +273,7 @@ int GBAVideoSoftwareRendererPreprocessSprite(struct GBAVideoSoftwareRenderer* re |
|
|
SPRITE_TRANSFORMED_LOOP(256, NORMAL);
|
|
|
}
|
|
|
}
|
|
|
- if (x + totalWidth > VIDEO_HORIZONTAL_PIXELS) {
|
|
|
+ if (end == VIDEO_HORIZONTAL_PIXELS && x + totalWidth > VIDEO_HORIZONTAL_PIXELS) {
|
|
|
renderer->spriteCyclesRemaining -= (x + totalWidth - VIDEO_HORIZONTAL_PIXELS) * 2;
|
|
|
}
|
|
|
} else {
|
|
|
@@ -333,7 +333,7 @@ int GBAVideoSoftwareRendererPreprocessSprite(struct GBAVideoSoftwareRenderer* re |
|
|
SPRITE_NORMAL_LOOP(256, NORMAL);
|
|
|
}
|
|
|
}
|
|
|
- if (x + width > VIDEO_HORIZONTAL_PIXELS) {
|
|
|
+ if (end == VIDEO_HORIZONTAL_PIXELS && x + width > VIDEO_HORIZONTAL_PIXELS) {
|
|
|
renderer->spriteCyclesRemaining -= x + width - VIDEO_HORIZONTAL_PIXELS;
|
|
|
}
|
|
|
}
|
|
|
|
0 comments on commit
4f24682