From e28d57a5c2899fe6ff6d10ae1af61f86c6a0fa20 Mon Sep 17 00:00:00 2001 From: miku-666 <74728189+NessieHax@users.noreply.github.com> Date: Tue, 27 Feb 2024 19:12:45 +0100 Subject: [PATCH] SkinRenderer - Fix Slim model flag rendering being incorrect --- PCK-Studio/Rendering/SkinRenderer.cs | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/PCK-Studio/Rendering/SkinRenderer.cs b/PCK-Studio/Rendering/SkinRenderer.cs index 9b52dd80..0b0e9937 100644 --- a/PCK-Studio/Rendering/SkinRenderer.cs +++ b/PCK-Studio/Rendering/SkinRenderer.cs @@ -732,11 +732,11 @@ namespace PckStudio.Rendering leftLegOverlay.SetEnabled(0, !ANIM.GetFlag(SkinAnimFlag.LEFT_LEG_OVERLAY_DISABLED)); int slimValue = slim ? 3 : 4; - rightArm.ReplaceCube(0, new(-3, -2, -2), new(slimValue, 12, 4), new(40, 16)); - rightArmOverlay.ReplaceCube(0, new(-3, -2, -2), new(slimValue, 12, 4), new(40, 32), scale: OverlayScale); + rightArm .ReplaceCube(0, new(slim ? -2 : -3, -2, -2), new(slimValue, 12, 4), new(40, 16)); + rightArmOverlay.ReplaceCube(0, new(slim ? -2 : -3, -2, -2), new(slimValue, 12, 4), new(40, 32)); - leftArm.ReplaceCube(0, new(-1, -2, -2), new(slimValue, 12, 4), new(32, 48)); - leftArmOverlay.ReplaceCube(0, new(-1, -2, -2), new(slimValue, 12, 4), new(48, 48), scale: OverlayScale); + leftArm .ReplaceCube(0, new(-1, -2, -2), new(slimValue, 12, 4), new(32, 48)); + leftArmOverlay.ReplaceCube(0, new(-1, -2, -2), new(slimValue, 12, 4), new(48, 48)); rightLeg.ReplaceCube(0, new(-2, 0, -2), new(4, 12, 4), new(0, 16)); leftLeg.ReplaceCube(0, new(-2, 0, -2), new(4, 12, 4), new(16, 48)); @@ -918,10 +918,6 @@ namespace PckStudio.Rendering legLeftMatrix = Matrix4.CreateRotationX(MathHelper.DegreesToRadians(animationCurrentRotationAngle)); } - // TODO: only apply Translation to the base arm - bool slimModel = ANIM.GetFlag(SkinAnimFlag.SLIM_MODEL); - rightArm.Translation = rightArmOverlay.Translation = new Vector3(slimModel ? -4f : -5f, -2f, 0f); - RenderBodyPart(skinShader, Matrix4.Identity, transform, "HEAD", "HEADWEAR"); RenderBodyPart(skinShader, Matrix4.Identity, transform, "BODY", "JACKET"); RenderBodyPart(skinShader, RightArmMatrix * armRightMatrix, transform, "ARM0", "SLEEVE0");