softgpu: Correct simple rectangles with mipmaps.

Might be used for fonts, we could potentially check for bias/slope, but
mipmaps are uncommon in direct through draws anyway.
This commit is contained in:
Unknown W. Brackets 2022-01-23 12:26:58 -08:00
parent d8c5c35b1a
commit 3010cd56d1
2 changed files with 3 additions and 4 deletions

View File

@ -270,8 +270,7 @@ bool RectangleFastPath(const VertexData &v0, const VertexData &v1, BinManager &b
// Currently only works for TL/BR, which is the most common but not required.
bool orient_check = xdiff >= 0 && ydiff >= 0;
// We already have a fast path for clear in ClearRectangle.
bool state_check = !state.pixelID.clearMode && NoClampOrWrap(v0.texturecoords) && NoClampOrWrap(v1.texturecoords);
// TODO: No mipmap levels? Might be a font at level 1...
bool state_check = !state.pixelID.clearMode && !state.samplerID.hasAnyMips && NoClampOrWrap(v0.texturecoords) && NoClampOrWrap(v1.texturecoords);
if ((coord_check || !state.enableTextures) && orient_check && state_check) {
binner.AddSprite(v0, v1);
return true;

View File

@ -160,6 +160,8 @@ tests_good = [
"gpu/texfunc/decal",
"gpu/texfunc/modulate",
"gpu/texfunc/replace",
"gpu/textures/mipmap",
"gpu/textures/rotate",
"hash/hash",
"hle/check_not_used_uids",
"intr/intr",
@ -400,8 +402,6 @@ tests_next = [
"gpu/signals/jumps",
"gpu/signals/simple",
"gpu/simple/simple",
"gpu/textures/mipmap",
"gpu/textures/rotate",
"gpu/triangle/triangle",
"gpu/vertices/colors",
"gpu/vertices/texcoords",