mirror of
https://github.com/EsotericSoftware/spine-runtimes.git
synced 2026-03-05 02:06:53 +08:00
[csharp] Port of commit d7203ee. Improved fix for TransformMode.noRotationOrReflection with skeleton scale. See #1668.
This commit is contained in:
parent
f3a9c0a535
commit
0357dd5ffa
@ -189,6 +189,8 @@ namespace Spine {
|
|||||||
float s = pa * pa + pc * pc, prx;
|
float s = pa * pa + pc * pc, prx;
|
||||||
if (s > 0.0001f) {
|
if (s > 0.0001f) {
|
||||||
s = Math.Abs(pa * pd - pb * pc) / s;
|
s = Math.Abs(pa * pd - pb * pc) / s;
|
||||||
|
pa /= skeleton.ScaleX;
|
||||||
|
pc /= skeleton.ScaleY;
|
||||||
pb = pc * s;
|
pb = pc * s;
|
||||||
pd = pa * s;
|
pd = pa * s;
|
||||||
prx = MathUtils.Atan2(pc, pa) * MathUtils.RadDeg;
|
prx = MathUtils.Atan2(pc, pa) * MathUtils.RadDeg;
|
||||||
@ -207,7 +209,7 @@ namespace Spine {
|
|||||||
b = pa * lb - pb * ld;
|
b = pa * lb - pb * ld;
|
||||||
c = pc * la + pd * lc;
|
c = pc * la + pd * lc;
|
||||||
d = pc * lb + pd * ld;
|
d = pc * lb + pd * ld;
|
||||||
return;
|
break;
|
||||||
}
|
}
|
||||||
case TransformMode.NoScale:
|
case TransformMode.NoScale:
|
||||||
case TransformMode.NoScaleOrReflection: {
|
case TransformMode.NoScaleOrReflection: {
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user