Skip to content

Commit

Permalink
[runtimes] Port of fix for TransformMode.noRotationOrReflection apply…
Browse files Browse the repository at this point in the history
…ing skeleton scale twice. See #1668.
  • Loading branch information
badlogic committed May 6, 2020
1 parent c73f8c1 commit 6a317a1
Show file tree
Hide file tree
Showing 19 changed files with 23 additions and 22 deletions.
Binary file modified spine-as3/spine-as3/lib/spine-as3.swc
Binary file not shown.
14 changes: 7 additions & 7 deletions spine-as3/spine-as3/src/spine/Bone.as
Expand Up @@ -57,7 +57,7 @@ package spine {
public var worldY : Number;
internal var _sorted : Boolean;
public var active : Boolean;


/** @param parent May be null. */
public function Bone(data : BoneData, skeleton : Skeleton, parent : Bone) {
Expand All @@ -68,7 +68,7 @@ package spine {
_parent = parent;
setToSetupPose();
}

public function isActive() : Boolean {
return active;
}
Expand Down Expand Up @@ -102,8 +102,8 @@ package spine {

var parent : Bone = _parent;
if (!parent) { // Root bone.
rotationY = rotation + 90 + shearY;
var skeleton : Skeleton = _skeleton;
rotationY = rotation + 90 + shearY;
var skeleton : Skeleton = _skeleton;
this.a = MathUtils.cosDeg(rotation + shearX) * scaleX * sx;
this.b = MathUtils.cosDeg(rotationY) * scaleY * sx;
this.c = MathUtils.sinDeg(rotation + shearX) * scaleX * sy;
Expand Down Expand Up @@ -161,7 +161,7 @@ package spine {
this.b = pa * lb - pb * ld;
this.c = pc * la + pd * lc;
this.d = pc * lb + pd * ld;
break;
return;
}
case TransformMode.noScale:
case TransformMode.noScaleOrReflection: {
Expand All @@ -182,11 +182,11 @@ package spine {
la = MathUtils.cosDeg(shearX) * scaleX;
lb = MathUtils.cosDeg(90 + shearY) * scaleY;
lc = MathUtils.sinDeg(shearX) * scaleX;
ld = MathUtils.sinDeg(90 + shearY) * scaleY;
ld = MathUtils.sinDeg(90 + shearY) * scaleY;
this.a = za * la + zb * lc;
this.b = za * lb + zb * ld;
this.c = zc * la + zd * lc;
this.d = zc * lb + zd * ld;
this.d = zc * lb + zd * ld;
break;
}
}
Expand Down
2 changes: 1 addition & 1 deletion spine-c/spine-c/src/spine/Bone.c
Expand Up @@ -139,7 +139,7 @@ void spBone_updateWorldTransformWith (spBone* self, float x, float y, float rota
CONST_CAST(float, self->b) = pa * lb - pb * ld;
CONST_CAST(float, self->c) = pc * la + pd * lc;
CONST_CAST(float, self->d) = pc * lb + pd * ld;
break;
return;
}
case SP_TRANSFORMMODE_NOSCALE:
case SP_TRANSFORMMODE_NOSCALEORREFLECTION: {
Expand Down
2 changes: 1 addition & 1 deletion spine-cpp/spine-cpp/src/spine/Bone.cpp
Expand Up @@ -168,7 +168,7 @@ void Bone::updateWorldTransform(float x, float y, float rotation, float scaleX,
_b = pa * lb - pb * ld;
_c = pc * la + pd * lc;
_d = pc * lb + pd * ld;
break;
return;
}
case TransformMode_NoScale:
case TransformMode_NoScaleOrReflection: {
Expand Down
1 change: 1 addition & 0 deletions spine-lua/Bone.lua
Expand Up @@ -162,6 +162,7 @@ function Bone:updateWorldTransformWith (x, y, rotation, scaleX, scaleY, shearX,
self.b = pa * lb - pb * ld
self.c = pc * la + pd * lc
self.d = pc * lb + pd * ld
return
elseif transformMode == TransformMode.noScale or transformMode == TransformMode.noScaleOrReflection then
local cos = math_cos(math_rad(rotation))
local sin = math_sin(math_rad(rotation))
Expand Down
Binary file modified spine-starling/spine-starling/lib/spine-starling.swc
Binary file not shown.
2 changes: 1 addition & 1 deletion spine-ts/build/spine-all.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion spine-ts/build/spine-all.js.map

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion spine-ts/build/spine-canvas.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion spine-ts/build/spine-canvas.js.map

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion spine-ts/build/spine-core.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion spine-ts/build/spine-core.js.map

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion spine-ts/build/spine-player.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion spine-ts/build/spine-player.js.map

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion spine-ts/build/spine-threejs.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion spine-ts/build/spine-threejs.js.map

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion spine-ts/build/spine-webgl.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion spine-ts/build/spine-webgl.js.map

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion spine-ts/core/src/Bone.ts
Expand Up @@ -219,7 +219,7 @@ module spine {
this.b = pa * lb - pb * ld;
this.c = pc * la + pd * lc;
this.d = pc * lb + pd * ld;
break;
return;
}
case TransformMode.NoScale:
case TransformMode.NoScaleOrReflection: {
Expand Down

0 comments on commit 6a317a1

Please sign in to comment.