another mipmap/LOD try with GX_ANISO_4

This commit is contained in:
Lurs
2026-05-29 16:21:52 +02:00
parent bd8b3aafeb
commit c0429110db
+12 -8
View File
@@ -476,10 +476,12 @@ void registerHdTexturesForArc(std::vector<u8>& arcBytes,
const u32 newImgOff = 0x20 + i * 0x20;
timg->imageOffset = static_cast<s32>(newImgOff);
const u8 hdMips = static_cast<u8>(std::clamp<u32>(s.mipCount, 1u, 11u));
timg->mipmapCount = hdMips;
timg->maxLOD = static_cast<s8>((hdMips - 1) * 8);
//timg->maxAnisotropy = 16;
const u8 hdMips = static_cast<u8>(std::clamp<u32>(s.mipCount, 1u, 13u));
if (timg->mipmapEnabled) {
timg->mipmapCount = hdMips;
timg->maxLOD = static_cast<s8>((hdMips - 1) * 8);
}
timg->maxAnisotropy = GX_ANISO_4;
//timg->LODBias = -50;
registerHdSurface(*m, s,
arcBytes.data() + f.dataOffset + btiAbs + newImgOff,
@@ -512,10 +514,12 @@ void registerHdTexturesForArc(std::vector<u8>& arcBytes,
// i_img + 0x20, matching where we register below.
auto* timg = reinterpret_cast<ResTIMG*>(arcBytes.data() + f.dataOffset);
timg->imageOffset = 0x20;
const u8 hdMips = static_cast<u8>(std::clamp<u32>(s.mipCount, 1u, 11u));
timg->mipmapCount = hdMips;
timg->maxLOD = static_cast<s8>((hdMips - 1) * 8);
//timg->maxAnisotropy = 16;
const u8 hdMips = static_cast<u8>(std::clamp<u32>(s.mipCount, 1u, 13u));
if (timg->mipmapEnabled) {
timg->mipmapCount = hdMips;
timg->maxLOD = static_cast<s8>((hdMips - 1) * 8);
}
timg->maxAnisotropy = GX_ANISO_4;
//timg->LODBias = -50;
registerHdSurface(*m, s, arcBytes.data() + f.dataOffset + 0x20,
gtx->name, 0);