mirror of
https://github.com/rt64/rt64.git
synced 2024-12-27 15:23:07 +00:00
Database replacement version, F3DEX2 force matrix, big texture TMEM check.
This commit is contained in:
parent
180f663938
commit
049c81dc1e
@ -44,7 +44,7 @@ namespace RT64 {
|
|||||||
struct ReplacementConfiguration {
|
struct ReplacementConfiguration {
|
||||||
ReplacementAutoPath autoPath = ReplacementAutoPath::RT64;
|
ReplacementAutoPath autoPath = ReplacementAutoPath::RT64;
|
||||||
uint32_t configurationVersion = 2;
|
uint32_t configurationVersion = 2;
|
||||||
uint32_t hashVersion = 2;
|
uint32_t hashVersion = 3;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct ReplacementHashes {
|
struct ReplacementHashes {
|
||||||
|
@ -40,8 +40,7 @@ namespace RT64 {
|
|||||||
state->rsp->setViewport((*dl)->w1);
|
state->rsp->setViewport((*dl)->w1);
|
||||||
break;
|
break;
|
||||||
case F3DEX2_G_MV_MATRIX:
|
case F3DEX2_G_MV_MATRIX:
|
||||||
assert(false && "Unimplemented move matrix");
|
state->rsp->forceMatrix((*dl)->w1);
|
||||||
*dl = *dl + 1;
|
|
||||||
break;
|
break;
|
||||||
case F3DEX2_G_MV_LIGHT: {
|
case F3DEX2_G_MV_LIGHT: {
|
||||||
uint8_t offset = (*dl)->p0(8, 8) * 8;
|
uint8_t offset = (*dl)->p0(8, 8) * 8;
|
||||||
|
@ -839,10 +839,10 @@ namespace RT64 {
|
|||||||
// FIXME: A safety check to only do this on textures that were determined to be big was added until the
|
// FIXME: A safety check to only do this on textures that were determined to be big was added until the
|
||||||
// correctness of the texcoord determination can be guaranteed to not cause issues elsewhere.
|
// correctness of the texcoord determination can be guaranteed to not cause issues elsewhere.
|
||||||
const bool bigTextureCheck = (callTile.sampleWidth > 0x1000) || (callTile.sampleHeight > 0x1000);
|
const bool bigTextureCheck = (callTile.sampleWidth > 0x1000) || (callTile.sampleHeight > 0x1000);
|
||||||
if (bigTextureCheck && !TMEMHasher::requiresRawTMEM(callTile.loadTile, maxTexcoord.x, maxTexcoord.y)) {
|
if (bigTextureCheck) {
|
||||||
callTile.sampleWidth = maxTexcoord.x;
|
callTile.sampleWidth = maxTexcoord.x;
|
||||||
callTile.sampleHeight = maxTexcoord.y;
|
callTile.sampleHeight = maxTexcoord.y;
|
||||||
callTile.rawTMEM = false;
|
callTile.rawTMEM = TMEMHasher::requiresRawTMEM(callTile.loadTile, maxTexcoord.x, maxTexcoord.y);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user