From 8f6725db337b4a9a15ad2a09708e0a1413d017ae Mon Sep 17 00:00:00 2001 From: badlogic Date: Wed, 19 Jul 2017 13:55:32 +0200 Subject: [PATCH] [libgdx] Fix applying flipping for noScale/noScaleOrReflection transform mode. See #951 --- .../src/com/esotericsoftware/spine/Bone.java | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/spine-libgdx/spine-libgdx/src/com/esotericsoftware/spine/Bone.java b/spine-libgdx/spine-libgdx/src/com/esotericsoftware/spine/Bone.java index d70c690f6..54d397a3c 100644 --- a/spine-libgdx/spine-libgdx/src/com/esotericsoftware/spine/Bone.java +++ b/spine-libgdx/spine-libgdx/src/com/esotericsoftware/spine/Bone.java @@ -201,15 +201,15 @@ public class Bone implements Updatable { float la = cosDeg(shearX) * scaleX; float lb = cosDeg(90 + shearY) * scaleY; float lc = sinDeg(shearX) * scaleX; - float ld = sinDeg(90 + shearY) * scaleY; + float ld = sinDeg(90 + shearY) * scaleY; + if (data.transformMode != TransformMode.noScaleOrReflection ? pa * pd - pb * pc < 0 : skeleton.flipX != skeleton.flipY) { + zb = -zb; + zd = -zd; + } a = za * la + zb * lc; b = za * lb + zb * ld; c = zc * la + zd * lc; d = zc * lb + zd * ld; - if (data.transformMode != TransformMode.noScaleOrReflection ? pa * pd - pb * pc < 0 : skeleton.flipX != skeleton.flipY) { - b = -b; - d = -d; - } return; } }