From 2f1935d826fc6432b3ce546df0fd7d7ef40c8480 Mon Sep 17 00:00:00 2001 From: Anders Jenbo Date: Mon, 7 Jul 2025 02:29:13 +0200 Subject: [PATCH] Fix transition on software rendere --- miniwin/src/d3drm/backends/software/renderer.cpp | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/miniwin/src/d3drm/backends/software/renderer.cpp b/miniwin/src/d3drm/backends/software/renderer.cpp index 48c9c3ef..93a80a2e 100644 --- a/miniwin/src/d3drm/backends/software/renderer.cpp +++ b/miniwin/src/d3drm/backends/software/renderer.cpp @@ -800,9 +800,17 @@ void Direct3DRMSoftwareRenderer::Draw2DImage( return; } + bool isUpscaling = centeredRect.w > srcRect.w || centeredRect.h > srcRect.h; + SDL_Surface* surface = m_textures[textureId].cached; SDL_UnlockSurface(surface); - SDL_BlitSurfaceScaled(surface, &srcRect, m_renderedImage, ¢eredRect, SDL_SCALEMODE_LINEAR); + SDL_BlitSurfaceScaled( + surface, + &srcRect, + m_renderedImage, + ¢eredRect, + isUpscaling ? SDL_SCALEMODE_NEAREST : SDL_SCALEMODE_LINEAR + ); SDL_LockSurface(surface); }