From 66d7d76302dea508f3f55cfc2bca878469608d35 Mon Sep 17 00:00:00 2001 From: ragnarok-clanker Date: Wed, 4 Nov 2026 10:34:53 +0000 Subject: [PATCH] Maintenance: Owner-approved acceptance of KWDev batch 10495 (identical payload). fn_45500 DeviceOwnerDX9::UpdateMipmapFiltering 0x54C Batch #10498 by ragnarok-clanker: forced by an admin (0 lower score(s), 3 changed function(s)); checked with 2 compiled unit(s). --- Source/Render/DX9/DeviceOwnerDX9.cpp | 10 +++++++++- Source/Render/DX9/RenderSystemDX9.cpp | 2 +- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/Source/Render/DX9/DeviceOwnerDX9.cpp b/Source/Render/DX9/DeviceOwnerDX9.cpp index 777767d4..0b6c37dc 100644 --- a/Source/Render/DX9/DeviceOwnerDX9.cpp +++ b/Source/Render/DX9/DeviceOwnerDX9.cpp @@ -214,7 +214,7 @@ HRESULT DeviceOwnerDX9::Initialize(HWND value, UINT selectedAdapter) { this->state.Initialize(this->device); this->state.SetInitialStates(); - this->dynamicTextures = (this->caps.Caps2 & D3DCAPS2_DYNAMICTEXTURES) != 0 && g_textureFiltering != 0; + this->UpdateMipmapFiltering(); this->ClipFullscreenCursor(); return D3D_OK; @@ -249,6 +249,14 @@ HRESULT DeviceOwnerDX9::Close() { } // OFFSET: 0x0054C020 +// FUNCTION: fn_45500 +void DeviceOwnerDX9::UpdateMipmapFiltering() { + if (!(this->caps.TextureFilterCaps & D3DPTFILTERCAPS_MIPFLINEAR)) { + this->dynamicTextures = false; + } else { + this->dynamicTextures = g_textureFiltering != 0; + } +} // OFFSET: 0x0054C070 // FUNCTION: fn_01917 diff --git a/Source/Render/DX9/RenderSystemDX9.cpp b/Source/Render/DX9/RenderSystemDX9.cpp index 89a0bb73..c6e3fe2c 100644 --- a/Source/Render/DX9/RenderSystemDX9.cpp +++ b/Source/Render/DX9/RenderSystemDX9.cpp @@ -125,7 +125,7 @@ std::shared_ptr CRenderSystemDX9::BackBufferSurface() { // OFFSET: 0x0056D740 // FUNCTION: fn_02365 void CRenderSystemDX9::UpdateOption() { - this->m_device->dynamicTextures = (this->m_device->caps.Caps2 & D3DCAPS2_DYNAMICTEXTURES) != 0 && g_textureFiltering != 0; + this->m_device->UpdateMipmapFiltering(); } // OFFSET: 0x0056D760