From 74342513fc89de204734186e871078ad50cb3e54 Mon Sep 17 00:00:00 2001 From: Major Cooke Date: Tue, 7 Dec 2021 15:40:31 -0600 Subject: [PATCH] Merged https://github.com/coelckers/gzdoom/pull/1520 (Trim Sprite Borders) --- src/common/textures/gametexture.cpp | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/src/common/textures/gametexture.cpp b/src/common/textures/gametexture.cpp index c5979a7a9..345f87c88 100644 --- a/src/common/textures/gametexture.cpp +++ b/src/common/textures/gametexture.cpp @@ -325,6 +325,16 @@ void FGameTexture::SetupSpriteData() // //=========================================================================== +CUSTOM_CVAR(Bool, r_trimspriteborders, false, CVAR_ARCHIVE | CVAR_GLOBALCONFIG) +{ + for (int i = 0; i < TexMan.NumTextures(); i++) + { + auto tex = TexMan.GetGameTexture(FSetTextureID(i)); + if (tex->GetUseType() == ETextureType::Sprite) + tex->SetupSpriteData(); + } +} + void FGameTexture::SetSpriteRect() { @@ -362,7 +372,7 @@ void FGameTexture::SetSpriteRect() spi.mSpriteRect.width = (float)spi.spriteWidth / fxScale; spi.mSpriteRect.height = (float)spi.spriteHeight / fyScale; - if (spi.mTrimResult > 0) + if (spi.mTrimResult > 0 && r_trimspriteborders) { spi.mSpriteRect.left += (float)spi.trim[0] / fxScale; spi.mSpriteRect.top += (float)spi.trim[1] / fyScale;