mirror of
https://github.com/vcmi/vcmi.git
synced 2025-08-10 22:31:40 +02:00
fix margin (hd texture)
This commit is contained in:
@@ -278,12 +278,6 @@ void SDLImageShared::optimizeSurface()
|
||||
margins.x += left;
|
||||
margins.y += top;
|
||||
}
|
||||
|
||||
if(preScaleFactor > 1 && preScaleFactor != GH.screenHandler().getScalingFactor())
|
||||
{
|
||||
margins.x = margins.x * GH.screenHandler().getScalingFactor() / preScaleFactor;
|
||||
margins.y = margins.y * GH.screenHandler().getScalingFactor() / preScaleFactor;
|
||||
}
|
||||
}
|
||||
|
||||
std::shared_ptr<const ISharedImage> SDLImageShared::scaleInteger(int factor, SDL_Palette * palette, EImageBlitMode mode) const
|
||||
@@ -309,15 +303,15 @@ std::shared_ptr<const ISharedImage> SDLImageShared::scaleInteger(int factor, SDL
|
||||
scaled = CSDL_Ext::scaleSurfaceIntegerFactor(surf, factor, EScalingAlgorithm::XBRZ_ALPHA);
|
||||
}
|
||||
else
|
||||
scaled = CSDL_Ext::scaleSurface(surf, (surf->w / preScaleFactor) * factor, (surf->h / preScaleFactor) * factor);
|
||||
scaled = CSDL_Ext::scaleSurface(surf, (int) round((float)surf->w * factor / preScaleFactor), (int) round((float)surf->h * factor / preScaleFactor));
|
||||
|
||||
auto ret = std::make_shared<SDLImageShared>(scaled, preScaleFactor);
|
||||
|
||||
ret->fullSize.x = fullSize.x * factor;
|
||||
ret->fullSize.y = fullSize.y * factor;
|
||||
|
||||
ret->margins.x = margins.x * factor;
|
||||
ret->margins.y = margins.y * factor;
|
||||
ret->margins.x = (int) round((float)margins.x * factor / preScaleFactor);
|
||||
ret->margins.y = (int) round((float)margins.y * factor / preScaleFactor);
|
||||
ret->optimizeSurface();
|
||||
|
||||
// erase our own reference
|
||||
|
Reference in New Issue
Block a user