From 8b327f3d54e401755279a823c505e128e588b0bd Mon Sep 17 00:00:00 2001 From: badlogic Date: Mon, 17 Oct 2016 16:49:51 +0200 Subject: [PATCH] [as3][starling] Updated to 3.5, path constraint may still have an issue, see stretchyman --- examples/export/runtimes.sh | 4 + spine-as3/spine-as3/src/spine/Bone.as | 254 +++--- spine-as3/spine-as3/src/spine/BoneData.as | 3 +- spine-as3/spine-as3/src/spine/Constraint.as | 37 + spine-as3/spine-as3/src/spine/IkConstraint.as | 43 +- .../spine-as3/src/spine/IkConstraintData.as | 1 + .../spine-as3/src/spine/PathConstraint.as | 17 +- .../spine-as3/src/spine/PathConstraintData.as | 1 + spine-as3/spine-as3/src/spine/Skeleton.as | 202 ++--- spine-as3/spine-as3/src/spine/SkeletonData.as | 3 + spine-as3/spine-as3/src/spine/SkeletonJson.as | 10 +- .../src/spine/TransformConstraint.as | 25 +- .../src/spine/TransformConstraintData.as | 1 + .../spine-as3/src/spine/TransformMode.as | 41 + .../src/spine/attachments/VertexAttachment.as | 11 +- .../src/spine/examples/Main.as | 3 +- .../src/spine/examples/StretchymanExample.as | 94 +++ .../src/stretchyman.atlas | 41 + .../src/stretchyman.json | 773 ++++++++++++++++++ .../src/stretchyman.png | Bin 0 -> 134187 bytes 20 files changed, 1311 insertions(+), 253 deletions(-) create mode 100644 spine-as3/spine-as3/src/spine/Constraint.as create mode 100644 spine-as3/spine-as3/src/spine/TransformMode.as create mode 100644 spine-starling/spine-starling-example/src/spine/examples/StretchymanExample.as create mode 100644 spine-starling/spine-starling-example/src/stretchyman.atlas create mode 100644 spine-starling/spine-starling-example/src/stretchyman.json create mode 100644 spine-starling/spine-starling-example/src/stretchyman.png diff --git a/examples/export/runtimes.sh b/examples/export/runtimes.sh index 0db4a1051..126d3cb00 100755 --- a/examples/export/runtimes.sh +++ b/examples/export/runtimes.sh @@ -152,6 +152,10 @@ cp -f ../vine/export/vine.json ../../spine-starling/spine-starling-example/src/ cp -f ../vine/export/vine.atlas ../../spine-starling/spine-starling-example/src/ cp -f ../vine/export/vine.png ../../spine-starling/spine-starling-example/src/ +cp -f ../stretchyman/export/stretchyman.json ../../spine-starling/spine-starling-example/src/ +cp -f ../stretchyman/export/stretchyman.atlas ../../spine-starling/spine-starling-example/src/ +cp -f ../stretchyman/export/stretchyman.png ../../spine-starling/spine-starling-example/src/ + echo "spine-ts" rm -f ../../spine-ts/webgl/example/assets/* diff --git a/spine-as3/spine-as3/src/spine/Bone.as b/spine-as3/spine-as3/src/spine/Bone.as index 575c65b80..efc5dd5d8 100644 --- a/spine-as3/spine-as3/src/spine/Bone.as +++ b/spine-as3/spine-as3/src/spine/Bone.as @@ -44,7 +44,14 @@ public class Bone implements Updatable { public var scaleY:Number; public var shearX:Number; public var shearY:Number; - public var appliedRotation:Number; + public var ax:Number; + public var ay:Number; + public var arotation:Number; + public var ascaleX:Number; + public var ascaleY:Number; + public var ashearX:Number; + public var ashearY:Number; + public var appliedValid:Boolean; internal var _a:Number; internal var _b:Number; @@ -52,8 +59,6 @@ public class Bone implements Updatable { internal var _d:Number; internal var _worldX:Number; internal var _worldY:Number; - internal var _worldSignX:Number; - internal var _worldSignY:Number; internal var _sorted:Boolean; @@ -79,14 +84,26 @@ public class Bone implements Updatable { /** Computes the world SRT using the parent bone and the specified local SRT. */ public function updateWorldTransformWith (x:Number, y:Number, rotation:Number, scaleX:Number, scaleY:Number, shearX:Number, shearY:Number) : void { - appliedRotation = rotation; - - var rotationY:Number = rotation + 90 + shearY; - var la:Number = MathUtils.cosDeg(rotation + shearX) * scaleX, lb:Number = MathUtils.cosDeg(rotationY) * scaleY; - var lc:Number = MathUtils.sinDeg(rotation + shearX) * scaleX, ld:Number = MathUtils.sinDeg(rotationY) * scaleY; + ax = x; + ay = y; + arotation = rotation; + ascaleX = scaleX; + ascaleY = scaleY; + ashearX = shearX; + ashearY = shearY; + appliedValid = true; + + var rotationY:Number = 0, la:Number = 0, lb:Number = 0, lc:Number = 0, ld:Number = 0; + var sin:Number = 0, cos:Number = 0; + var s:Number = 0; var parent:Bone = _parent; if (!parent) { // Root bone. + rotationY = rotation + 90 + shearY; + la = MathUtils.cosDeg(rotation + shearX) * scaleX; + lb = MathUtils.cosDeg(rotationY) * scaleY; + lc = MathUtils.sinDeg(rotation + shearX) * scaleX; + ld = MathUtils.sinDeg(rotationY) * scaleY; var skeleton:Skeleton = _skeleton; if (skeleton.flipX) { x = -x; @@ -102,91 +119,103 @@ public class Bone implements Updatable { _b = lb; _c = lc; _d = ld; - _worldX = x; - _worldY = y; - _worldSignX = scaleX < 0 ? -1 : 1; - _worldSignY = scaleY < 0 ? -1 : 1; + _worldX = x + skeleton.x; + _worldY = y + skeleton.y; return; } var pa:Number = parent._a, pb:Number = parent._b, pc:Number = parent._c, pd:Number = parent._d; _worldX = pa * x + pb * y + parent._worldX; - _worldY = pc * x + pd * y + parent._worldY; - _worldSignX = parent._worldSignX * (scaleX < 0 ? -1 : 1); - _worldSignY = parent._worldSignY * (scaleY < 0 ? -1 : 1); + _worldY = pc * x + pd * y + parent._worldY; - if (data.inheritRotation && data.inheritScale) { + switch (_data.transformMode) { + case TransformMode.normal: { + rotationY = rotation + 90 + shearY; + la = MathUtils.cosDeg(rotation + shearX) * scaleX; + lb = MathUtils.cosDeg(rotationY) * scaleY; + lc = MathUtils.sinDeg(rotation + shearX) * scaleX; + ld = MathUtils.sinDeg(rotationY) * scaleY; _a = pa * la + pb * lc; _b = pa * lb + pb * ld; _c = pc * la + pd * lc; _d = pc * lb + pd * ld; - } else { - if (data.inheritRotation) { // No scale inheritance. - pa = 1; - pb = 0; - pc = 0; - pd = 1; - do { - var cos:Number = MathUtils.cosDeg(parent.appliedRotation), sin:Number = MathUtils.sinDeg(parent.appliedRotation); - var temp:Number = pa * cos + pb * sin; - pb = pb * cos - pa * sin; - pa = temp; - temp = pc * cos + pd * sin; - pd = pd * cos - pc * sin; - pc = temp; - - if (!parent.data.inheritRotation) break; - parent = parent.parent; - } while (parent != null); - _a = pa * la + pb * lc; - _b = pa * lb + pb * ld; - _c = pc * la + pd * lc; - _d = pc * lb + pd * ld; - } else if (data.inheritScale) { // No rotation inheritance. - pa = 1; - pb = 0; - pc = 0; - pd = 1; - do { - cos = MathUtils.cosDeg(parent.appliedRotation), sin = MathUtils.sinDeg(parent.appliedRotation); - var psx:Number = parent.scaleX, psy:Number = parent.scaleY; - var za:Number = cos * psx, zb:Number = sin * psy, zc:Number = sin * psx, zd:Number = cos * psy; - temp = pa * za + pb * zc; - pb = pb * zd - pa * zb; - pa = temp; - temp = pc * za + pd * zc; - pd = pd * zd - pc * zb; - pc = temp; - - if (psx >= 0) sin = -sin; - temp = pa * cos + pb * sin; - pb = pb * cos - pa * sin; - pa = temp; - temp = pc * cos + pd * sin; - pd = pd * cos - pc * sin; - pc = temp; - - if (!parent.data.inheritScale) break; - parent = parent.parent; - } while (parent != null); - _a = pa * la + pb * lc; - _b = pa * lb + pb * ld; - _c = pc * la + pd * lc; - _d = pc * lb + pd * ld; + return; + } + case TransformMode.onlyTranslation: { + rotationY = rotation + 90 + shearY; + _a = MathUtils.cosDeg(rotation + shearX) * scaleX; + _b = MathUtils.cosDeg(rotationY) * scaleY; + _c = MathUtils.sinDeg(rotation + shearX) * scaleX; + _d = MathUtils.sinDeg(rotationY) * scaleY; + break; + } + case TransformMode.noRotationOrReflection: { + var psx:Number = Math.sqrt(pa * pa + pc * pc); + var psy:Number = 0; + var prx:Number = 0; + if (psx > 0.0001) { + psy = Math.abs((pa * pd - pb * pc) / psx); + prx = Math.atan2(pc, pa) * MathUtils.radDeg; } else { - _a = la; - _b = lb; - _c = lc; - _d = ld; + psx = 0; + psy = Math.sqrt(pb * pb + pd * pd); + prx = 90 - Math.atan2(pd, pb) * MathUtils.radDeg; } - if (_skeleton.flipX) { - _a = -_a; + cos = MathUtils.cosDeg(prx); + sin = MathUtils.sinDeg(prx); + pa = cos * psx; + pb = -sin * psy; + pc = sin * psx; + pd = cos * psy; + var rx:Number = rotation + shearX - prx; + var ry:Number = rotation + shearY - prx + 90; + la = MathUtils.cosDeg(rx) * scaleX; + lb = MathUtils.cosDeg(ry) * scaleY; + lc = MathUtils.sinDeg(rx) * scaleX; + ld = MathUtils.sinDeg(ry) * scaleY; + _a = pa * la + pb * lc; + _b = pa * lb + pb * ld; + _c = pc * la + pd * lc; + _d = pc * lb + pd * ld; + + break; + } + case TransformMode.noScale: + case TransformMode.noScaleOrReflection: { + cos = MathUtils.cosDeg(rotation); + sin = MathUtils.sinDeg(rotation); + var za:Number = pa * cos + pb * sin; + var zc:Number = pc * cos + pd * sin; + s = Math.sqrt(za * za + zc * zc); + if (s > 0.00001) s = 1 / s; + za *= s; + zc *= s; + s = Math.sqrt(za * za + zc * zc); + var r:Number = Math.PI / 2 + Math.atan2(zc, za); + var zb:Number = Math.cos(r) * s; + var zd:Number = Math.sin(r) * s; + la = MathUtils.cosDeg(shearX) * scaleX; + lb = MathUtils.cosDeg(90 + shearY) * scaleY; + lc = MathUtils.sinDeg(shearX) * scaleX; + ld = MathUtils.sinDeg(90 + shearY) * scaleY; + _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; - } - if (_skeleton.flipY != yDown) { - _c = -_c; _d = -_d; } + return; + } + } + if (_skeleton.flipX) { + _a = -_a; + _b = -_b; + } + if (_skeleton.flipY != yDown) { + _c = -_c; + _d = -_d; } } @@ -240,14 +269,6 @@ public class Bone implements Updatable { return _worldY; } - public function get worldSignX () : Number { - return _worldSignX; - } - - public function get worldSignY () : Number { - return _worldSignY; - } - public function get worldRotationX () : Number { return Math.atan2(_c, _a) * MathUtils.radDeg; } @@ -257,23 +278,23 @@ public class Bone implements Updatable { } public function get worldScaleX () : Number { - return Math.sqrt(_a * _a + _b * _b) * _worldSignX; + return Math.sqrt(_a * _a + _c * _c); } public function get worldScaleY () : Number { - return Math.sqrt(_c * _c + _d * _d) * _worldSignY; + return Math.sqrt(_b * _b + _d * _d); } public function worldToLocalRotationX () : Number { var parent:Bone = _parent; - if (parent == null) return rotation; + if (parent == null) return arotation; var pa:Number = parent.a, pb:Number = parent.b, pc:Number = parent.c, pd:Number = parent.d, a:Number = this.a, c:Number = this.c; return Math.atan2(pa * c - pc * a, pd * a - pb * c) * MathUtils.radDeg; } public function worldToLocalRotationY () : Number { var parent:Bone = _parent; - if (parent == null) return rotation; + if (parent == null) return arotation; var pa:Number = parent.a, pb:Number = parent.b, pc:Number = parent.c, pd:Number = parent.d, b:Number = this.b, d:Number = this.d; return Math.atan2(pa * d - pc * b, pd * b - pb * d) * MathUtils.radDeg; } @@ -285,31 +306,31 @@ public class Bone implements Updatable { this._b = cos * b - sin * d; this._c = sin * a + cos * c; this._d = sin * b + cos * d; + this.appliedValid = false; } - /** Computes the local transform from the world transform. This can be useful to perform processing on the local transform - * after the world transform has been modified directly (eg, by a constraint). + /** Computes the individual applied transform values from the world transform. This can be useful to perform processing using + * the applied transform after the world transform has been modified directly (eg, by a constraint). *

- * Some redundant information is lost by the world transform, such as -1,-1 scale versus 180 rotation. The computed local - * transform values may differ from the original values but are functionally the same. */ - public function updateLocalTransform () : void { + * Some information is ambiguous in the world transform, such as -1,-1 scale versus 180 rotation. */ + public function updateAppliedTransform () : void { + appliedValid = true; var parent:Bone = this.parent; if (parent == null) { - x = worldX; - y = worldY; - rotation = Math.atan2(c, a) * MathUtils.radDeg; - scaleX = Math.sqrt(a * a + c * c); - scaleY = Math.sqrt(b * b + d * d); - var det:Number = a * d - b * c; - shearX = 0; - shearY = Math.atan2(a * b + c * d, det) * MathUtils.radDeg; + ax = worldX; + ay = worldY; + arotation = Math.atan2(c, a) * MathUtils.radDeg; + ascaleX = Math.sqrt(a * a + c * c); + ascaleY = Math.sqrt(b * b + d * d); + ashearX = 0; + ashearY = Math.atan2(a * b + c * d, a * d - b * c) * MathUtils.radDeg; return; } var pa:Number = parent.a, pb:Number = parent.b, pc:Number = parent.c, pd:Number = parent.d; var pid:Number = 1 / (pa * pd - pb * pc); var dx:Number = worldX - parent.worldX, dy:Number = worldY - parent.worldY; - x = (dx * pd * pid - dy * pb * pid); - y = (dy * pa * pid - dx * pc * pid); + ax = (dx * pd * pid - dy * pb * pid); + ay = (dy * pa * pid - dx * pc * pid); var ia:Number = pid * pd; var id:Number = pid * pa; var ib:Number = pid * pb; @@ -318,20 +339,19 @@ public class Bone implements Updatable { var rb:Number = ia * b - ib * d; var rc:Number = id * c - ic * a; var rd:Number = id * d - ic * b; - shearX = 0; - scaleX = Math.sqrt(ra * ra + rc * rc); + ashearX = 0; + ascaleX = Math.sqrt(ra * ra + rc * rc); if (scaleX > 0.0001) { - det = ra * rd - rb * rc; - scaleY = det / scaleX; - shearY = Math.atan2(ra * rb + rc * rd, det) * MathUtils.radDeg; - rotation = Math.atan2(rc, ra) * MathUtils.radDeg; + var det:Number = ra * rd - rb * rc; + ascaleY = det /ascaleX; + ashearY = Math.atan2(ra * rb + rc * rd, det) * MathUtils.radDeg; + arotation = Math.atan2(rc, ra) * MathUtils.radDeg; } else { - scaleX = 0; - scaleY = Math.sqrt(rb * rb + rd * rd); - shearY = 0; - rotation = 90 - Math.atan2(rd, rb) * MathUtils.radDeg; - } - appliedRotation = rotation; + ascaleX = 0; + ascaleY = Math.sqrt(rb * rb + rd * rd); + ashearY = 0; + arotation = 90 - Math.atan2(rd, rb) * MathUtils.radDeg; + } } public function worldToLocal (world:Vector.) : void { diff --git a/spine-as3/spine-as3/src/spine/BoneData.as b/spine-as3/spine-as3/src/spine/BoneData.as index 71bffeae7..c188fc339 100644 --- a/spine-as3/spine-as3/src/spine/BoneData.as +++ b/spine-as3/spine-as3/src/spine/BoneData.as @@ -42,8 +42,7 @@ public class BoneData { public var scaleY:Number = 1; public var shearX:Number; public var shearY:Number; - public var inheritRotation:Boolean = true; - public var inheritScale:Boolean = true; + public var transformMode:TransformMode = TransformMode.normal; /** @param parent May be null. */ public function BoneData (index:int, name:String, parent:BoneData) { diff --git a/spine-as3/spine-as3/src/spine/Constraint.as b/spine-as3/spine-as3/src/spine/Constraint.as new file mode 100644 index 000000000..14a2995af --- /dev/null +++ b/spine-as3/spine-as3/src/spine/Constraint.as @@ -0,0 +1,37 @@ +/****************************************************************************** + * Spine Runtimes Software License v2.5 + * + * Copyright (c) 2013-2016, Esoteric Software + * All rights reserved. + * + * You are granted a perpetual, non-exclusive, non-sublicensable, and + * non-transferable license to use, install, execute, and perform the Spine + * Runtimes software and derivative works solely for personal or internal + * use. Without the written permission of Esoteric Software (see Section 2 of + * the Spine Software License Agreement), you may not (a) modify, translate, + * adapt, or develop new applications using the Spine Runtimes or otherwise + * create derivative works or improvements of the Spine Runtimes or (b) remove, + * delete, alter, or obscure any trademarks or any copyright, trademark, patent, + * or other intellectual property or proprietary rights notices on or in the + * Software, including any copy thereof. Redistributions in binary or source + * form must include this license and terms. + * + * THIS SOFTWARE IS PROVIDED BY ESOTERIC SOFTWARE "AS IS" AND ANY EXPRESS OR + * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO + * EVENT SHALL ESOTERIC SOFTWARE BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES, BUSINESS INTERRUPTION, OR LOSS OF + * USE, DATA, OR PROFITS) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER + * IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + *****************************************************************************/ + +package spine { + +public interface Constraint extends Updatable { + function getOrder () : Number; +} + +} diff --git a/spine-as3/spine-as3/src/spine/IkConstraint.as b/spine-as3/spine-as3/src/spine/IkConstraint.as index cdfb52611..b5d9cdf5e 100644 --- a/spine-as3/spine-as3/src/spine/IkConstraint.as +++ b/spine-as3/spine-as3/src/spine/IkConstraint.as @@ -30,14 +30,12 @@ package spine { -public class IkConstraint implements Updatable { +public class IkConstraint implements Constraint { internal var _data:IkConstraintData; public var bones:Vector.; public var target:Bone; public var mix:Number; public var bendDirection:int; - - public var level:int; public function IkConstraint (data:IkConstraintData, skeleton:Skeleton) { if (data == null) throw new ArgumentError("data cannot be null."); @@ -66,6 +64,10 @@ public class IkConstraint implements Updatable { break; } } + + public function getOrder() : Number { + return _data.order; + } public function get data () : IkConstraintData { return _data; @@ -78,17 +80,18 @@ public class IkConstraint implements Updatable { /** Adjusts the bone rotation so the tip is as close to the target position as possible. The target is specified in the world * coordinate system. */ static public function apply1 (bone:Bone, targetX:Number, targetY:Number, alpha:Number) : void { - var pp:Bone = bone.parent; - var id:Number = 1 / (pp.a * pp.d - pp.b * pp.c); - var x:Number = targetX - pp.worldX, y:Number = targetY - pp.worldY; - var tx:Number = (x * pp.d - y * pp.b) * id - bone.x, ty:Number = (y * pp.a - x * pp.c) * id - bone.y; - var rotationIK:Number = Math.atan2(ty, tx) * MathUtils.radDeg - bone.shearX - bone.rotation; - if (bone.scaleX < 0) rotationIK += 180; + if (!bone.appliedValid) bone.updateAppliedTransform(); + var p:Bone = bone.parent; + var id:Number = 1 / (p.a * p.d - p.b * p.c); + var x:Number = targetX - p.worldX, y:Number = targetY - p.worldY; + var tx:Number = (x * p.d - y * p.b) * id - bone.ax, ty:Number = (y * p.a - x * p.c) * id - bone.ay; + var rotationIK:Number = Math.atan2(ty, tx) * MathUtils.radDeg - bone.ashearX - bone.arotation; + if (bone.ascaleX < 0) rotationIK += 180; if (rotationIK > 180) rotationIK -= 360; else if (rotationIK < -180) rotationIK += 360; - bone.updateWorldTransformWith(bone.x, bone.y, bone.rotation + rotationIK * alpha, bone.scaleX, bone.scaleY, bone.shearX, - bone.shearY); + bone.updateWorldTransformWith(bone.ax, bone.ay, bone.arotation + rotationIK * alpha, bone.ascaleX, bone.ascaleY, bone.ashearX, + bone.ashearY); } /** Adjusts the parent and child bone rotations so the tip of the child is as close to the target position as possible. The @@ -99,7 +102,9 @@ public class IkConstraint implements Updatable { child.updateWorldTransform(); return; } - var px:Number = parent.x, py:Number = parent.y, psx:Number = parent.scaleX, psy:Number = parent.scaleY, csx:Number = child.scaleX;; + if (!parent.appliedValid) parent.updateAppliedTransform(); + if (!child.appliedValid) child.updateAppliedTransform(); + var px:Number = parent.ax, py:Number = parent.ay, psx:Number = parent.ascaleX, psy:Number = parent.ascaleY, csx:Number = child.ascaleX; var os1:int, os2:int, s2:int; if (psx < 0) { psx = -psx; @@ -118,14 +123,14 @@ public class IkConstraint implements Updatable { os2 = 180; } else os2 = 0; - var cx:Number = child.x, cy:Number, cwx:Number, cwy:Number, a:Number = parent.a, b:Number = parent.b, c:Number = parent.c, d:Number = parent.d; + var cx:Number = child.ax, cy:Number, cwx:Number, cwy:Number, a:Number = parent.a, b:Number = parent.b, c:Number = parent.c, d:Number = parent.d; var u:Boolean = Math.abs(psx - psy) <= 0.0001; if (!u) { cy = 0; cwx = a * cx + parent.worldX; cwy = c * cx + parent.worldY; } else { - cy = child.y; + cy = child.ay; cwx = a * cx + b * cy + parent.worldX; cwy = c * cx + d * cy + parent.worldY; } @@ -212,18 +217,18 @@ public class IkConstraint implements Updatable { } } var os:Number = Math.atan2(cy, cx) * s2; - var rotation:Number = parent.rotation; + var rotation:Number = parent.arotation; a1 = (a1 - os) * MathUtils.radDeg + os1 - rotation; if (a1 > 180) a1 -= 360; else if (a1 < -180) a1 += 360; - parent.updateWorldTransformWith(px, py, rotation + a1 * alpha, parent.scaleX, parent.scaleY, 0, 0); - rotation = child.rotation; - a2 = ((a2 + os) * MathUtils.radDeg - child.shearX) * s2 + os2 - rotation; + parent.updateWorldTransformWith(px, py, rotation + a1 * alpha, parent.ascaleX, parent.ascaleY, 0, 0); + rotation = child.arotation; + a2 = ((a2 + os) * MathUtils.radDeg - child.ashearX) * s2 + os2 - rotation; if (a2 > 180) a2 -= 360; else if (a2 < -180) a2 += 360; - child.updateWorldTransformWith(cx, cy, rotation + a2 * alpha, child.scaleX, child.scaleY, child.shearX, child.shearY); + child.updateWorldTransformWith(cx, cy, rotation + a2 * alpha, child.ascaleX, child.ascaleY, child.ashearX, child.ashearY); } } diff --git a/spine-as3/spine-as3/src/spine/IkConstraintData.as b/spine-as3/spine-as3/src/spine/IkConstraintData.as index 92dfcdf3b..63ed31361 100644 --- a/spine-as3/spine-as3/src/spine/IkConstraintData.as +++ b/spine-as3/spine-as3/src/spine/IkConstraintData.as @@ -32,6 +32,7 @@ package spine { public class IkConstraintData { internal var _name:String; + public var order:Number; public var bones:Vector. = new Vector.(); public var target:BoneData; public var bendDirection:int = 1; diff --git a/spine-as3/spine-as3/src/spine/PathConstraint.as b/spine-as3/spine-as3/src/spine/PathConstraint.as index e68ae6e9e..566b94555 100644 --- a/spine-as3/spine-as3/src/spine/PathConstraint.as +++ b/spine-as3/spine-as3/src/spine/PathConstraint.as @@ -31,7 +31,7 @@ package spine { import spine.attachments.PathAttachment; -public class PathConstraint implements Updatable { +public class PathConstraint implements Constraint { private static const NONE:int = -1, BEFORE:int = -2, AFTER:int = -3; internal var _data:PathConstraintData; @@ -100,16 +100,14 @@ public class PathConstraint implements Updatable { } var positions:Vector. = computeWorldPositions(attachment, spacesCount, tangents, - data.positionMode == PositionMode.percent, spacingMode == SpacingMode.percent); - var skeleton:Skeleton = target.skeleton; - var skeletonX:Number = skeleton.x, skeletonY:Number = skeleton.y; + data.positionMode == PositionMode.percent, spacingMode == SpacingMode.percent); var boneX:Number = positions[0], boneY:Number = positions[1], offsetRotation:Number = data.offsetRotation; var tip:Boolean = rotateMode == RotateMode.chain && offsetRotation == 0; var p:Number; for (i = 0, p = 3; i < boneCount; i++, p += 3) { bone = bones[i]; - bone._worldX += (boneX - skeletonX - bone.worldX) * translateMix; - bone._worldY += (boneY - skeletonY - bone.worldY) * translateMix; + bone._worldX += (boneX - bone.worldX) * translateMix; + bone._worldY += (boneY - bone.worldY) * translateMix; x = positions[p]; y = positions[p + 1]; var dx:Number = x - boneX, dy:Number = y - boneY; if (scale) { length = lengths[i]; @@ -149,6 +147,7 @@ public class PathConstraint implements Updatable { bone._c = sin * a + cos * c; bone._d = sin * b + cos * d; } + bone.appliedValid = false; } } @@ -394,7 +393,7 @@ public class PathConstraint implements Updatable { private function addCurvePosition (p:Number, x1:Number, y1:Number, cx1:Number, cy1:Number, cx2:Number, cy2:Number, x2:Number, y2:Number, out:Vector., o:int, tangents:Boolean) : void { - if (p == 0) p = 0.0001; + if (p == 0 || isNaN(p)) p = 0.0001; var tt:Number = p * p, ttt:Number = tt * p, u:Number = 1 - p, uu:Number = u * u, uuu:Number = uu * u; var ut:Number = u * p, ut3:Number = ut * 3, uut3:Number = u * ut3, utt3:Number = ut3 * p; var x:Number = x1 * uuu + cx1 * uut3 + cx2 * utt3 + x2 * ttt, y:Number = y1 * uuu + cy1 * uut3 + cy2 * utt3 + y2 * ttt; @@ -410,6 +409,10 @@ public class PathConstraint implements Updatable { public function get data () : PathConstraintData { return _data; } + + public function getOrder () : Number { + return _data.order; + } public function toString () : String { return _data.name; diff --git a/spine-as3/spine-as3/src/spine/PathConstraintData.as b/spine-as3/spine-as3/src/spine/PathConstraintData.as index 5c9c0f049..a1d29cbdf 100644 --- a/spine-as3/spine-as3/src/spine/PathConstraintData.as +++ b/spine-as3/spine-as3/src/spine/PathConstraintData.as @@ -32,6 +32,7 @@ package spine { public dynamic class PathConstraintData { internal var _name:String; + public var order:Number; internal var _bones:Vector. = new Vector.(); public var target:SlotData; public var positionMode:PositionMode; diff --git a/spine-as3/spine-as3/src/spine/Skeleton.as b/spine-as3/spine-as3/src/spine/Skeleton.as index dd755a8b0..61478f883 100644 --- a/spine-as3/spine-as3/src/spine/Skeleton.as +++ b/spine-as3/spine-as3/src/spine/Skeleton.as @@ -38,10 +38,11 @@ public class Skeleton { public var bones:Vector.; public var slots:Vector.; public var drawOrder:Vector.; - public var ikConstraints:Vector., ikConstraintsSorted:Vector.; + public var ikConstraints:Vector.; public var transformConstraints:Vector.; public var pathConstraints:Vector.; private var _updateCache:Vector. = new Vector.(); + private var _updateCacheReset:Vector. = new Vector.(); private var _skin:Skin; public var r:Number = 1, g:Number = 1, b:Number = 1, a:Number = 1; public var time:Number = 0; @@ -75,8 +76,7 @@ public class Skeleton { drawOrder[drawOrder.length] = slot; } - ikConstraints = new Vector.(); - ikConstraintsSorted = new Vector.(); + ikConstraints = new Vector.(); for each (var ikConstraintData:IkConstraintData in data.ikConstraints) ikConstraints.push(new IkConstraint(ikConstraintData, this)); @@ -98,103 +98,112 @@ public class Skeleton { updateCache.length = 0; var bones:Vector. = this.bones; - for (var i:int = 0, n:int = bones.length; i < n; i++) + var i:Number = 0; + var n:Number = 0; + for (i = 0, n = bones.length; i < n; i++) bones[i]._sorted = false; // IK first, lowest hierarchy depth first. - var ikConstraints:Vector. = this.ikConstraintsSorted; - ikConstraints.length = 0; - for each (var c:IkConstraint in this.ikConstraints) - ikConstraints.push(c); - var ikCount:int = ikConstraints.length; - var level:int; - for (i = 0, n = ikCount; i < n; i++) { - var ik:IkConstraint = ikConstraints[i]; - var bone:Bone = ik.bones[0].parent; - for (level = 0; bone != null; level++) - bone = bone.parent; - ik.level = level; - } - var ii:int; - for (i = 1; i < ikCount; i++) { - ik = ikConstraints[i]; - level = ik.level; - for (ii = i - 1; ii >= 0; ii--) { - var other:IkConstraint = ikConstraints[ii]; - if (other.level < level) break; - ikConstraints[ii + 1] = other; - } - ikConstraints[ii + 1] = ik; - } - for (i = 0, n = ikConstraints.length; i < n; i++) { - var ikConstraint:IkConstraint = ikConstraints[i]; - var target:Bone = ikConstraint.target; - sortBone(target); - - var constrained:Vector. = ikConstraint.bones; - var parent:Bone = constrained[0]; - sortBone(parent); - - updateCache.push(ikConstraint); - - sortReset(parent.children); - constrained[constrained.length - 1]._sorted = true; - } - - var pathConstraints:Vector. = this.pathConstraints; - for (i = 0, n = pathConstraints.length; i < n; i++) { - var pathConstraint:PathConstraint = pathConstraints[i]; - - var slot:Slot = pathConstraint.target; - var slotIndex:int = slot.data.index; - var slotBone:Bone = slot.bone; - if (skin != null) sortPathConstraintAttachment(skin, slotIndex, slotBone); - if (_data.defaultSkin != null && _data.defaultSkin != skin) - sortPathConstraintAttachment(_data.defaultSkin, slotIndex, slotBone); - - var nn:int; - for (ii = 0, nn = _data.skins.length; ii < nn; ii++) - sortPathConstraintAttachment(_data.skins[ii], slotIndex, slotBone); - - var attachment:PathAttachment = slot.attachment as PathAttachment; - if (attachment != null) sortPathConstraintAttachment2(attachment, slotBone); - - constrained = pathConstraint.bones; - var boneCount:int = constrained.length; - for (ii = 0; ii < boneCount; ii++) - sortBone(constrained[ii]); - - updateCache.push(pathConstraint); - - for (ii = 0; ii < boneCount; ii++) - sortReset(constrained[ii].children); - for (ii = 0; ii < boneCount; ii++) - constrained[ii]._sorted = true; - } - + var ikConstraints:Vector. = this.ikConstraints; var transformConstraints:Vector. = this.transformConstraints; - for (i = 0, n = transformConstraints.length; i < n; i++) { - var transformConstraint:TransformConstraint = transformConstraints[i]; - - sortBone(transformConstraint.target); - - constrained = transformConstraint.bones; - boneCount = constrained.length; - for (ii = 0; ii < boneCount; ii++) - sortBone(constrained[ii]); - - updateCache.push(transformConstraint); - - for (ii = 0; ii < boneCount; ii++) - sortReset(constrained[ii].children); - for (ii = 0; ii < boneCount; ii++) - constrained[ii]._sorted = true; + var pathConstraints:Vector. = this.pathConstraints; + var ikCount:Number = ikConstraints.length, transformCount:Number = transformConstraints.length, pathCount:Number = pathConstraints.length; + var constraintCount:Number = ikCount + transformCount + pathCount; + + outer: + for (i = 0; i < constraintCount; i++) { + var ii:Number = 0; + for (ii = 0; ii < ikCount; ii++) { + var ikConstraint:IkConstraint = ikConstraints[ii]; + if (ikConstraint.data.order == i) { + sortIkConstraint(ikConstraint); + continue outer; + } + } + for (ii = 0; ii < transformCount; ii++) { + var transformConstraint:TransformConstraint = transformConstraints[ii]; + if (transformConstraint.data.order == i) { + sortTransformConstraint(transformConstraint); + continue outer; + } + } + for (ii = 0; ii < pathCount; ii++) { + var pathConstraint:PathConstraint = pathConstraints[ii]; + if (pathConstraint.data.order == i) { + sortPathConstraint(pathConstraint); + continue outer; + } + } } - + for (i = 0, n = bones.length; i < n; i++) sortBone(bones[i]); } + private function sortIkConstraint (constraint:IkConstraint): void { + var target:Bone = constraint.target; + sortBone(target); + + var constrained:Vector. = constraint.bones; + var parent:Bone = constrained[0]; + sortBone(parent); + + if (constrained.length > 1) { + var child:Bone = constrained[constrained.length - 1]; + if (!(_updateCache.indexOf(child) > -1)) _updateCacheReset.push(child); + } + + _updateCache.push(constraint); + + sortReset(parent.children); + constrained[constrained.length - 1]._sorted = true; + } + + private function sortPathConstraint (constraint:PathConstraint): void { + var slot:Slot = constraint.target; + var slotIndex:Number = slot.data.index; + var slotBone:Bone = slot.bone; + if (skin != null) sortPathConstraintAttachment(skin, slotIndex, slotBone); + if (data.defaultSkin != null && data.defaultSkin != skin) + sortPathConstraintAttachment(data.defaultSkin, slotIndex, slotBone); + var ii:Number = 0; + var nn:Number = 0; + for (ii = 0, nn = data.skins.length; ii < nn; ii++) + sortPathConstraintAttachment(data.skins[ii], slotIndex, slotBone); + + var attachment:Attachment = slot.attachment; + if (attachment is PathAttachment) sortPathConstraintAttachment2(attachment, slotBone); + + var constrained:Vector. = constraint.bones; + var boneCount:Number = constrained.length; + for (ii = 0; ii < boneCount; ii++) + sortBone(constrained[ii]); + + _updateCache.push(constraint); + + for (ii = 0; ii < boneCount; ii++) + sortReset(constrained[ii].children); + for (ii = 0; ii < boneCount; ii++) + constrained[ii]._sorted = true; + } + + private function sortTransformConstraint (constraint:TransformConstraint): void { + sortBone(constraint.target); + + var constrained:Vector. = constraint.bones; + var boneCount:Number = constrained.length; + var ii:Number = 0; + for (ii = 0; ii < boneCount; ii++) + sortBone(constrained[ii]); + + _updateCache.push(constraint); + + for (ii = 0; ii < boneCount; ii++) + sortReset(constrained[ii].children); + for (ii = 0; ii < boneCount; ii++) + constrained[ii]._sorted = true; + } + private function sortPathConstraintAttachment (skin:Skin, slotIndex:int, slotBone:Bone) : void { var dict:Dictionary = skin.attachments[slotIndex]; if (!dict) return; @@ -240,6 +249,17 @@ public class Skeleton { /** Updates the world transform for each bone and applies constraints. */ public function updateWorldTransform () : void { + var updateCacheReset:Vector. = this._updateCacheReset; + for each (var bone:Bone in updateCacheReset) { + bone.ax = bone.x; + bone.ay = bone.y; + bone.arotation = bone.rotation; + bone.ascaleX = bone.scaleX; + bone.ascaleY = bone.scaleY; + bone.ashearX = bone.shearX; + bone.ashearY = bone.shearY; + bone.appliedValid = true; + } for each (var updatable:Updatable in _updateCache) updatable.update(); } diff --git a/spine-as3/spine-as3/src/spine/SkeletonData.as b/spine-as3/spine-as3/src/spine/SkeletonData.as index af7e85d0f..152397393 100644 --- a/spine-as3/spine-as3/src/spine/SkeletonData.as +++ b/spine-as3/spine-as3/src/spine/SkeletonData.as @@ -46,6 +46,9 @@ public class SkeletonData { public var width:Number, height:Number; public var version:String, hash:String; + public var fps:Number; + public var imagesPath:String; + public function SkeletonData () { } diff --git a/spine-as3/spine-as3/src/spine/SkeletonJson.as b/spine-as3/spine-as3/src/spine/SkeletonJson.as index 56683ea3d..4f9c3aa5f 100644 --- a/spine-as3/spine-as3/src/spine/SkeletonJson.as +++ b/spine-as3/spine-as3/src/spine/SkeletonJson.as @@ -89,7 +89,9 @@ public class SkeletonJson { skeletonData.hash = skeletonMap["hash"]; skeletonData.version = skeletonMap["spine"]; skeletonData.width = skeletonMap["width"] || 0; - skeletonData.height = skeletonMap["height"] || 0; + skeletonData.height = skeletonMap["height"] || 0; + skeletonData.fps = skeletonMap["fps"] || 0; + skeletonData.imagesPath = skeletonMap["images"]; } // Bones. @@ -110,8 +112,7 @@ public class SkeletonJson { boneData.scaleY = boneMap.hasOwnProperty("scaleY") ? boneMap["scaleY"] : 1; boneData.shearX = Number(boneMap["shearX"] || 0); boneData.shearY = Number(boneMap["shearY"] || 0); - boneData.inheritRotation = boneMap.hasOwnProperty("inheritRotation") ? Boolean(boneMap["inheritRotation"]) : true; - boneData.inheritScale = boneMap.hasOwnProperty("inheritScale") ? Boolean(boneMap["inheritScale"]) : true; + boneData.transformMode = TransformMode[boneMap["transform"] || "normal"]; skeletonData.bones.push(boneData); } @@ -139,6 +140,7 @@ public class SkeletonJson { // IK constraints. for each (var constraintMap:Object in root["ik"]) { var ikConstraintData:IkConstraintData = new IkConstraintData(constraintMap["name"]); + ikConstraintData.order = constraintMap["order"] || 0; for each (boneName in constraintMap["bones"]) { var bone:BoneData = skeletonData.findBone(boneName); @@ -158,6 +160,7 @@ public class SkeletonJson { // Transform constraints. for each (constraintMap in root["transform"]) { var transformConstraintData:TransformConstraintData = new TransformConstraintData(constraintMap["name"]); + transformConstraintData.order = constraintMap["order"] || 0; for each (boneName in constraintMap["bones"]) { bone = skeletonData.findBone(boneName); @@ -186,6 +189,7 @@ public class SkeletonJson { // Path constraints. for each (constraintMap in root["path"]) { var pathConstraintData:PathConstraintData = new PathConstraintData(constraintMap["name"]); + pathConstraintData.order = constraintMap["order"] || 0; for each (boneName in constraintMap["bones"]) { bone = skeletonData.findBone(boneName); diff --git a/spine-as3/spine-as3/src/spine/TransformConstraint.as b/spine-as3/spine-as3/src/spine/TransformConstraint.as index 0819358af..a5e40ebba 100644 --- a/spine-as3/spine-as3/src/spine/TransformConstraint.as +++ b/spine-as3/spine-as3/src/spine/TransformConstraint.as @@ -30,7 +30,7 @@ package spine { -public class TransformConstraint implements Updatable { +public class TransformConstraint implements Constraint { internal var _data:TransformConstraintData; internal var _bones:Vector.; public var target:Bone; @@ -65,8 +65,9 @@ public class TransformConstraint implements Updatable { var bones:Vector. = this._bones; for (var i:int = 0, n:int = bones.length; i < n; i++) { var bone:Bone = bones[i]; + var modified:Boolean = false; - if (rotateMix > 0) { + if (rotateMix != 0) { var a:Number = bone.a, b:Number = bone.b, c:Number = bone.c, d:Number = bone.d; var r:Number = Math.atan2(tc, ta) - Math.atan2(c, a) + data.offsetRotation * MathUtils.degRad; if (r > Math.PI) @@ -78,27 +79,30 @@ public class TransformConstraint implements Updatable { bone._b = cos * b - sin * d; bone._c = sin * a + cos * c; bone._d = sin * b + cos * d; + modified = true; } - if (translateMix > 0) { + if (translateMix != 0) { _temp[0] = data.offsetX; _temp[1] = data.offsetY; target.localToWorld(_temp); bone._worldX += (_temp[0] - bone.worldX) * translateMix; bone._worldY += (_temp[1] - bone.worldY) * translateMix; + modified = true; } if (scaleMix > 0) { - var bs:Number = Math.sqrt(bone.a * bone.a + bone.c * bone.c); + var s:Number = Math.sqrt(bone.a * bone.a + bone.c * bone.c); var ts:Number = Math.sqrt(ta * ta + tc * tc); - var s:Number = bs > 0.00001 ? (bs + (ts - bs + data.offsetScaleX) * scaleMix) / bs : 0; + if (s > 0.00001) s = (s + (ts - s + data.offsetScaleX) * scaleMix) / s; bone._a *= s; bone._c *= s; - bs = Math.sqrt(bone.b * bone.b + bone.d * bone.d); + s = Math.sqrt(bone.b * bone.b + bone.d * bone.d); ts = Math.sqrt(tb * tb + td * td); - s = bs > 0.00001 ? (bs + (ts - bs + data.offsetScaleY) * scaleMix) / bs : 0; + if (s > 0.00001) s = (s + (ts - s + data.offsetScaleY) * scaleMix) / s; bone._b *= s; bone._d *= s; + modified = true; } if (shearMix > 0) { @@ -112,9 +116,16 @@ public class TransformConstraint implements Updatable { s = Math.sqrt(b * b + d * d); bone._b = Math.cos(r) * s; bone._d = Math.sin(r) * s; + modified = true; } + + if (modified) bone.appliedValid = false; } } + + public function getOrder () : Number { + return _data.order; + } public function get data () : TransformConstraintData { return _data; diff --git a/spine-as3/spine-as3/src/spine/TransformConstraintData.as b/spine-as3/spine-as3/src/spine/TransformConstraintData.as index a9f36fd5f..52fdb9d2b 100644 --- a/spine-as3/spine-as3/src/spine/TransformConstraintData.as +++ b/spine-as3/spine-as3/src/spine/TransformConstraintData.as @@ -32,6 +32,7 @@ package spine { public class TransformConstraintData { internal var _name:String; + public var order:Number; internal var _bones:Vector. = new Vector.(); public var target:BoneData; public var rotateMix:Number; diff --git a/spine-as3/spine-as3/src/spine/TransformMode.as b/spine-as3/spine-as3/src/spine/TransformMode.as new file mode 100644 index 000000000..55a098015 --- /dev/null +++ b/spine-as3/spine-as3/src/spine/TransformMode.as @@ -0,0 +1,41 @@ +/****************************************************************************** + * Spine Runtimes Software License v2.5 + * + * Copyright (c) 2013-2016, Esoteric Software + * All rights reserved. + * + * You are granted a perpetual, non-exclusive, non-sublicensable, and + * non-transferable license to use, install, execute, and perform the Spine + * Runtimes software and derivative works solely for personal or internal + * use. Without the written permission of Esoteric Software (see Section 2 of + * the Spine Software License Agreement), you may not (a) modify, translate, + * adapt, or develop new applications using the Spine Runtimes or otherwise + * create derivative works or improvements of the Spine Runtimes or (b) remove, + * delete, alter, or obscure any trademarks or any copyright, trademark, patent, + * or other intellectual property or proprietary rights notices on or in the + * Software, including any copy thereof. Redistributions in binary or source + * form must include this license and terms. + * + * THIS SOFTWARE IS PROVIDED BY ESOTERIC SOFTWARE "AS IS" AND ANY EXPRESS OR + * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO + * EVENT SHALL ESOTERIC SOFTWARE BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES, BUSINESS INTERRUPTION, OR LOSS OF + * USE, DATA, OR PROFITS) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER + * IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + *****************************************************************************/ + +package spine { + +public class TransformMode { + public static const normal:TransformMode = new TransformMode(); + public static const onlyTranslation:TransformMode = new TransformMode(); + public static const noRotationOrReflection:TransformMode = new TransformMode(); + public static const noScale:TransformMode = new TransformMode(); + public static const noScaleOrReflection:TransformMode = new TransformMode(); +} + +} diff --git a/spine-as3/spine-as3/src/spine/attachments/VertexAttachment.as b/spine-as3/spine-as3/src/spine/attachments/VertexAttachment.as index 01c879e4c..2193558d8 100644 --- a/spine-as3/spine-as3/src/spine/attachments/VertexAttachment.as +++ b/spine-as3/spine-as3/src/spine/attachments/VertexAttachment.as @@ -53,8 +53,7 @@ public dynamic class VertexAttachment extends Attachment { * @param offset The worldVertices index to begin writing values. */ public function computeWorldVertices2 (slot:Slot, start:int, count:int, worldVertices:Vector., offset:int): void { count += offset; - var skeleton:Skeleton = slot.skeleton; - var x:Number = skeleton.x, y:Number = skeleton.y; + var skeleton:Skeleton = slot.skeleton; var deformArray:Vector. = slot.attachmentVertices; var vertices:Vector. = this.vertices; var bones:Vector. = this.bones; @@ -68,8 +67,8 @@ public dynamic class VertexAttachment extends Attachment { if (bones == null) { if (deformArray.length > 0) vertices = deformArray; bone = slot.bone; - x += bone.worldX; - y += bone.worldY; + var x:Number = bone.worldX; + var y:Number = bone.worldY; var a:Number = bone.a, bb:Number = bone.b, c:Number = bone.c, d:Number = bone.d; for (v = start, w = offset; w < count; v += 2, w += 2) { vx = vertices[v], vy = vertices[v + 1]; @@ -87,7 +86,7 @@ public dynamic class VertexAttachment extends Attachment { var skeletonBones:Vector. = skeleton.bones; if (deformArray.length == 0) { for (w = offset, b = skip * 3; w < count; w += 2) { - wx = x, wy = y; + wx = 0, wy = 0; n = bones[v++]; n += v; for (; v < n; v++, b += 3) { @@ -102,7 +101,7 @@ public dynamic class VertexAttachment extends Attachment { } else { deform = deformArray; for (w = offset, b = skip * 3, f = skip << 1; w < count; w += 2) { - wx = x; wy = y; + wx = 0; wy = 0; n = bones[v++]; n += v; for (; v < n; v++, b += 3, f += 2) { diff --git a/spine-starling/spine-starling-example/src/spine/examples/Main.as b/spine-starling/spine-starling-example/src/spine/examples/Main.as index b285720a8..838669a84 100644 --- a/spine-starling/spine-starling-example/src/spine/examples/Main.as +++ b/spine-starling/spine-starling-example/src/spine/examples/Main.as @@ -43,8 +43,9 @@ public class Main extends Sprite { // example = SpineboyExample; // example = GoblinsExample; // example = RaptorExample; - example = TankExample; + // example = TankExample; // example = VineExample; + example = StretchymanExample; _starling = new Starling(example, stage); _starling.enableErrorChecking = true; diff --git a/spine-starling/spine-starling-example/src/spine/examples/StretchymanExample.as b/spine-starling/spine-starling-example/src/spine/examples/StretchymanExample.as new file mode 100644 index 000000000..deb312e61 --- /dev/null +++ b/spine-starling/spine-starling-example/src/spine/examples/StretchymanExample.as @@ -0,0 +1,94 @@ +/****************************************************************************** + * Spine Runtimes Software License v2.5 + * + * Copyright (c) 2013-2016, Esoteric Software + * All rights reserved. + * + * You are granted a perpetual, non-exclusive, non-sublicensable, and + * non-transferable license to use, install, execute, and perform the Spine + * Runtimes software and derivative works solely for personal or internal + * use. Without the written permission of Esoteric Software (see Section 2 of + * the Spine Software License Agreement), you may not (a) modify, translate, + * adapt, or develop new applications using the Spine Runtimes or otherwise + * create derivative works or improvements of the Spine Runtimes or (b) remove, + * delete, alter, or obscure any trademarks or any copyright, trademark, patent, + * or other intellectual property or proprietary rights notices on or in the + * Software, including any copy thereof. Redistributions in binary or source + * form must include this license and terms. + * + * THIS SOFTWARE IS PROVIDED BY ESOTERIC SOFTWARE "AS IS" AND ANY EXPRESS OR + * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO + * EVENT SHALL ESOTERIC SOFTWARE BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES, BUSINESS INTERRUPTION, OR LOSS OF + * USE, DATA, OR PROFITS) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER + * IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + *****************************************************************************/ + +package spine.examples { +import spine.animation.AnimationStateData; +import spine.*; +import spine.atlas.Atlas; +import spine.attachments.AtlasAttachmentLoader; +import spine.attachments.AttachmentLoader; +import spine.starling.SkeletonAnimation; +import spine.starling.StarlingTextureLoader; + +import starling.core.Starling; +import starling.display.Sprite; +import starling.events.Touch; +import starling.events.TouchEvent; +import starling.events.TouchPhase; + +public class StretchymanExample extends Sprite { + [Embed(source = "/stretchyman.json", mimeType = "application/octet-stream")] + static public const StretchymanJson:Class; + + [Embed(source = "/stretchyman.atlas", mimeType = "application/octet-stream")] + static public const StretchymanAtlas:Class; + + [Embed(source = "/stretchyman.png")] + static public const StretchymanAtlasTexture:Class; + + private var skeleton:SkeletonAnimation; + + public function StretchymanExample () { + var spineAtlas:Atlas = new Atlas(new StretchymanAtlas(), new StarlingTextureLoader(new StretchymanAtlasTexture())); + var attachmentLoader:AttachmentLoader = new AtlasAttachmentLoader(spineAtlas); + var json:SkeletonJson = new SkeletonJson(attachmentLoader); + json.scale = 0.4; + var skeletonData:SkeletonData = json.readSkeletonData(new StretchymanJson()); + + var stateData:AnimationStateData = new AnimationStateData(skeletonData); + + skeleton = new SkeletonAnimation(skeletonData, stateData); + skeleton.x = 100; + skeleton.y = 560; + + skeleton.state.timeScale = 0.1; + + skeleton.state.onStart.add(function (trackIndex:int) : void { + trace(trackIndex + " start: " + skeleton.state.getCurrent(trackIndex)); + }); + skeleton.state.onEnd.add(function (trackIndex:int) : void { + trace(trackIndex + " end: " + skeleton.state.getCurrent(trackIndex)); + }); + skeleton.state.onComplete.add(function (trackIndex:int, count:int) : void { + trace(trackIndex + " complete: " + skeleton.state.getCurrent(trackIndex) + ", " + count); + }); + skeleton.state.onEvent.add(function (trackIndex:int, event:Event) : void { + trace(trackIndex + " event: " + skeleton.state.getCurrent(trackIndex) + ", " + + event.data.name + ": " + event.intValue + ", " + event.floatValue + ", " + event.stringValue); + }); + + skeleton.skeleton.setToSetupPose(); + skeleton.state.setAnimationByName(0, "sneak", true); + + addChild(skeleton); + Starling.juggler.add(skeleton); + } +} +} diff --git a/spine-starling/spine-starling-example/src/stretchyman.atlas b/spine-starling/spine-starling-example/src/stretchyman.atlas new file mode 100644 index 000000000..b9072157f --- /dev/null +++ b/spine-starling/spine-starling-example/src/stretchyman.atlas @@ -0,0 +1,41 @@ + +stretchyman.png +size: 1024,256 +format: RGBA8888 +filter: Linear,Linear +repeat: none +back arm + rotate: true + xy: 679, 173 + size: 72, 202 + orig: 72, 202 + offset: 0, 0 + index: -1 +back leg + rotate: true + xy: 2, 2 + size: 100, 318 + orig: 100, 318 + offset: 0, 0 + index: -1 +body + rotate: true + xy: 2, 104 + size: 141, 452 + orig: 141, 452 + offset: 0, 0 + index: -1 +front arm + rotate: true + xy: 456, 100 + size: 145, 221 + orig: 145, 221 + offset: 0, 0 + index: -1 +head + rotate: true + xy: 322, 15 + size: 87, 102 + orig: 87, 102 + offset: 0, 0 + index: -1 diff --git a/spine-starling/spine-starling-example/src/stretchyman.json b/spine-starling/spine-starling-example/src/stretchyman.json new file mode 100644 index 000000000..1f852d0f2 --- /dev/null +++ b/spine-starling/spine-starling-example/src/stretchyman.json @@ -0,0 +1,773 @@ +{ +"skeleton": { + "hash": "+XkMq22e5sbHEXz5aRmd8uvTvH0", + "spine": "3.5.03-beta", + "width": 264.48, + "height": 570.1, + "fps": 30, + "images": "./images/" +}, +"bones": [ + { "name": "root" }, + { "name": "hip", "parent": "root", "x": 28.61, "y": 289.9 }, + { "name": "spine 1", "parent": "hip", "length": 34.66, "rotation": 86.68, "x": -4.48, "y": 12.66 }, + { "name": "spine 2", "parent": "spine 1", "length": 41.41, "rotation": 16.47, "x": 34.66 }, + { "name": "spine 3", "parent": "spine 2", "length": 34.44, "rotation": 16.17, "x": 41.41 }, + { "name": "spine 4", "parent": "spine 3", "length": 37.53, "rotation": -13.63, "x": 34.44 }, + { "name": "back arm 1", "parent": "spine 4", "length": 32.43, "rotation": -154.35, "x": 15.99, "y": -4.58, "transform": "noScale" }, + { "name": "back arm 2", "parent": "back arm 1", "length": 34.16, "rotation": 3.1, "x": 31.88, "y": 0.02 }, + { "name": "back arm 3", "parent": "back arm 2", "length": 31.26, "rotation": 9.59, "x": 34.16 }, + { "name": "back arm 4", "parent": "back arm 3", "length": 33.3, "rotation": 14.6, "x": 32.03, "y": 0.81 }, + { "name": "back arm 5", "parent": "back arm 4", "length": 37.41, "rotation": 11.3, "x": 33.81, "y": 0.02 }, + { + "name": "back foot 1", + "parent": "hip", + "length": 33.23, + "rotation": -6.55, + "x": -34, + "y": -279.68, + "transform": "onlyTranslation" + }, + { "name": "back foot 2", "parent": "back foot 1", "length": 32.28, "rotation": 4.34, "x": 33.23, "transform": "noScale" }, + { "name": "back foot 3", "parent": "back foot 2", "length": 15.87, "rotation": 10.06, "x": 32.28, "transform": "noScale" }, + { "name": "back leg 1", "parent": "hip", "length": 41, "rotation": -83.65, "x": 10.4, "y": 1.04, "color": "abe323ff" }, + { "name": "back leg 2", "parent": "back leg 1", "length": 41, "rotation": -4.07, "x": 34.56, "color": "abe323ff" }, + { "name": "back leg 3", "parent": "back leg 1", "length": 41, "rotation": -5.24, "x": 81.78, "y": -2.29, "color": "abe323ff" }, + { "name": "back leg 4", "parent": "back leg 1", "length": 41, "rotation": -16.6, "x": 121.2, "y": -11.27, "color": "abe323ff" }, + { "name": "back leg 5", "parent": "back leg 1", "length": 41, "rotation": -32.35, "x": 160.15, "y": -24.85, "color": "abe323ff" }, + { "name": "back leg 6", "parent": "back leg 1", "length": 41, "rotation": -30.76, "x": 197.04, "y": -39.98, "color": "abe323ff" }, + { "name": "back leg 7", "parent": "back leg 1", "length": 41, "rotation": -30.63, "x": 233.18, "y": -57.32, "color": "abe323ff" }, + { "name": "back leg 8", "parent": "back leg 1", "length": 41, "rotation": -33.78, "x": 267.28, "y": -77.39, "color": "abe323ff" }, + { "name": "back leg IK target", "parent": "root", "x": 46.15, "y": 8.68, "color": "ff3f00ff" }, + { "name": "back leg IK 1", "parent": "hip", "length": 140.17, "rotation": -88.1, "x": 9.62, "y": -0.38 }, + { "name": "back leg IK 2", "parent": "back leg IK 1", "length": 148.96, "rotation": -21.32, "x": 140.17 }, + { "name": "belly", "parent": "spine 1", "x": 35.94, "y": -37.69 }, + { "name": "butt", "parent": "hip", "x": -32.67, "y": -1.87 }, + { "name": "front arm 1", "parent": "spine 4", "length": 38.33, "rotation": 118.58, "x": 27.12, "y": 4.89, "transform": "noScale" }, + { "name": "front arm 2", "parent": "front arm 1", "length": 35.66, "rotation": -0.43, "x": 38.33 }, + { "name": "front arm 3", "parent": "front arm 2", "length": 32.65, "rotation": 14.45, "x": 35.66, "y": -0.01 }, + { "name": "front arm 4", "parent": "front arm 3", "length": 29.18, "rotation": 13.89, "x": 32.65 }, + { "name": "front arm 5", "parent": "front arm 4", "length": 46.32, "rotation": 16.09, "x": 29.18, "transform": "noScale" }, + { + "name": "front foot 1", + "parent": "hip", + "length": 26.29, + "rotation": -10.97, + "x": -77.04, + "y": -285.03, + "transform": "onlyTranslation" + }, + { "name": "front foot 2", "parent": "front foot 1", "length": 29.11, "rotation": 9.6, "x": 26.29 }, + { "name": "front foot 3", "parent": "front foot 2", "length": 23.48, "rotation": 8.91, "x": 29.11 }, + { "name": "front leg 1", "parent": "hip", "length": 37.2, "rotation": -88.96, "x": -23.56, "y": -1.99, "color": "abe323ff" }, + { "name": "front leg 2", "parent": "front leg 1", "length": 37.2, "rotation": 3.45, "x": 33.74, "color": "abe323ff" }, + { "name": "front leg 3", "parent": "front leg 1", "length": 37.2, "rotation": -6.11, "x": 74.4, "y": -1.07, "color": "abe323ff" }, + { + "name": "front leg 4", + "parent": "front leg 1", + "length": 37.2, + "rotation": -10.01, + "x": 111.39, + "y": -5.27, + "color": "abe323ff" + }, + { + "name": "front leg 5", + "parent": "front leg 1", + "length": 37.2, + "rotation": -28.39, + "x": 147.76, + "y": -14.98, + "color": "abe323ff" + }, + { + "name": "front leg 6", + "parent": "front leg 1", + "length": 37.2, + "rotation": -24.33, + "x": 182.41, + "y": -27.57, + "color": "abe323ff" + }, + { + "name": "front leg 7", + "parent": "front leg 1", + "length": 37.2, + "rotation": -22.99, + "x": 216.43, + "y": -42.55, + "color": "abe323ff" + }, + { "name": "front leg 8", "parent": "front leg 1", "length": 37.2, "rotation": -31.8, "x": 248.6, "y": -61.02, "color": "abe323ff" }, + { "name": "front leg IK target", "parent": "root", "x": -37.73, "y": 5.03, "color": "ff3f00ff" }, + { "name": "front leg IK 1", "parent": "hip", "length": 140.66, "rotation": -89.23, "x": -23.98, "y": 1.88 }, + { "name": "front leg IK 2", "parent": "front leg IK 1", "length": 155.95, "rotation": -21.49, "x": 140.66, "y": 0.02 }, + { "name": "neck 1", "parent": "spine 4", "length": 13.45, "rotation": -30.66, "x": 38.96, "y": -0.83 }, + { "name": "neck 2", "parent": "neck 1", "length": 14.13, "rotation": -11.41, "x": 13.45 }, + { "name": "head", "parent": "neck 2", "length": 89.05, "rotation": 6.98, "x": 15.81, "y": 0.22, "transform": "noScale" } +], +"slots": [ + { "name": "back arm", "bone": "root", "attachment": "back arm" }, + { "name": "back leg", "bone": "root", "attachment": "back leg" }, + { "name": "body", "bone": "root", "attachment": "body" }, + { "name": "head", "bone": "head", "attachment": "head" }, + { "name": "front arm", "bone": "root", "attachment": "front arm" }, + { "name": "back leg path", "bone": "hip", "attachment": "back leg path" }, + { "name": "front leg path", "bone": "hip", "attachment": "front leg path" } +], +"ik": [ + { + "name": "back leg IK", + "order": 0, + "bones": [ "back leg IK 1", "back leg IK 2" ], + "target": "back leg IK target", + "bendPositive": false + }, + { + "name": "front leg IK", + "order": 1, + "bones": [ "front leg IK 1", "front leg IK 2" ], + "target": "front leg IK target", + "bendPositive": false + } +], +"transform": [ + { + "name": "back foot position", + "order": 4, + "bones": [ "back foot 1" ], + "target": "back leg 8", + "rotation": 108.8, + "x": 41.2, + "y": -0.02, + "scaleX": 4.0E-4, + "scaleY": -3.0E-4, + "shearY": 0.1, + "rotateMix": 0, + "scaleMix": 0 + }, + { + "name": "front foot position", + "order": 5, + "bones": [ "front foot 1" ], + "target": "front leg 8", + "rotation": 101.55, + "x": 38.92, + "y": -0.02, + "scaleX": 4.0E-4, + "scaleY": -2.0E-4, + "shearY": 0.1, + "rotateMix": 0, + "scaleMix": 0 + } +], +"path": [ + { + "name": "back leg path", + "order": 2, + "bones": [ "back leg 1", "back leg 2", "back leg 3", "back leg 4", "back leg 5", "back leg 6", "back leg 7", "back leg 8" ], + "target": "back leg path", + "spacingMode": "percent", + "rotateMode": "chainScale", + "spacing": 0.125 + }, + { + "name": "front leg path", + "order": 3, + "bones": [ "front leg 1", "front leg 2", "front leg 3", "front leg 4", "front leg 5", "front leg 6", "front leg 7", "front leg 8" ], + "target": "front leg path", + "spacingMode": "percent", + "rotateMode": "chainScale", + "spacing": 0.125 + } +], +"skins": { + "default": { + "back arm": { + "back arm": { + "type": "mesh", + "uvs": [ 0.74522, 0.00989, 0.64111, 0.05762, 0.56303, 0.1559, 0.42508, 0.25885, 0.28974, 0.359, 0.22988, 0.49565, 0.21166, 0.60796, 0.21166, 0.69782, 0.16481, 0.78673, 0.14138, 0.84757, 0.02426, 0.88501, 0.05289, 0.9187, 0.37823, 0.98796, 0.60467, 0.98235, 0.6307, 0.9056, 0.73481, 0.87752, 0.6359, 0.81762, 0.55262, 0.74181, 0.38084, 0.69875, 0.37823, 0.60796, 0.39905, 0.50875, 0.51358, 0.38521, 0.66193, 0.2888, 0.85453, 0.18397, 0.97686, 0.0754, 0.9144, 0.00989 ], + "triangles": [ 11, 9, 12, 9, 8, 12, 12, 8, 18, 13, 12, 14, 12, 18, 17, 18, 8, 7, 14, 12, 17, 11, 10, 9, 14, 16, 15, 14, 17, 16, 7, 19, 18, 7, 6, 19, 6, 5, 19, 19, 5, 20, 5, 4, 20, 20, 4, 21, 4, 3, 21, 21, 3, 22, 3, 2, 22, 22, 2, 23, 2, 1, 23, 23, 1, 24, 1, 0, 24, 0, 25, 24 ], + "vertices": [ 1, 6, -7.67999, -11.47999, 1, 1, 6, 4.07999, -13.61999, 1, 1, 6, 23.47999, -9.35, 1, 1, 7, 13.43999, -9.22999, 1, 2, 7, 35.2, -9.61999, 0.50648, 8, -0.56999, -9.64999, 0.49349, 1, 8, 26.03, -6.38, 1, 1, 9, 14.14999, -6.11, 1, 2, 9, 31.53, -5.55999, 0.66491, 10, -3.32999, -5.03, 0.33507, 1, 10, 13.07999, -11.25, 1, 1, 10, 24.40999, -14.88, 1, 1, 10, 30.14999, -24.51, 1, 1, 10, 36.93, -23.53, 1, 1, 10, 54.06999, -2.32999, 1, 1, 10, 55.72999, 14.14, 1, 1, 10, 41.38999, 18.46999, 1, 1, 10, 37.27999, 26.87, 1, 1, 10, 24.64999, 21.67, 1, 1, 10, 9.17, 18.1, 1, 2, 9, 31.32999, 6.76999, 0.47879, 10, -1.11, 7.11, 0.52118, 1, 9, 13.77, 6.03999, 1, 2, 8, 24.97999, 6.17, 0.89217, 9, -5.46999, 6.96, 0.10781, 2, 7, 32.59999, 7.28, 0.59842, 8, -0.31999, 7.44, 0.40156, 1, 7, 11.06999, 8.84, 1, 1, 6, 17.88999, 11.86999, 1, 1, 6, -4.82, 9.44999, 1, 1, 6, -13.68, -0.68999, 1 ], + "hull": 26, + "edges": [ 0, 2, 2, 4, 4, 6, 6, 8, 8, 10, 10, 12, 12, 14, 14, 16, 16, 18, 18, 20, 20, 22, 22, 24, 24, 26, 26, 28, 28, 30, 30, 32, 32, 34, 34, 36, 36, 38, 38, 40, 40, 42, 42, 44, 44, 46, 46, 48, 48, 50, 0, 50, 2, 48, 4, 46, 6, 44, 8, 42, 10, 40, 12, 38, 14, 36 ], + "width": 72, + "height": 202 + } + }, + "back leg": { + "back leg": { + "type": "mesh", + "uvs": [ 0.502, 0.01179, 0.36075, 0.06379, 0.40569, 0.15045, 0.44743, 0.23916, 0.47953, 0.3299, 0.51163, 0.42268, 0.52126, 0.50629, 0.48274, 0.58888, 0.41211, 0.66025, 0.3126, 0.74182, 0.21629, 0.81625, 0.1232, 0.89272, 0.00763, 0.97428, 0.29655, 0.98958, 0.47407, 0.99221, 0.64004, 0.99467, 0.80988, 0.9896, 0.91291, 0.98652, 1, 0.95797, 0.83329, 0.94681, 0.71066, 0.9386, 0.57122, 0.9203, 0.41532, 0.89985, 0.3447, 0.89272, 0.36885, 0.87177, 0.42816, 0.82032, 0.502, 0.74793, 0.58225, 0.66942, 0.6593, 0.59092, 0.72992, 0.50527, 0.76524, 0.42166, 0.78129, 0.3248, 0.78771, 0.23406, 0.78771, 0.13924, 0.7235, 0.03728, 0.60152, 0.00567, 0.82116, 0.96897, 0.67872, 0.96396, 0.52111, 0.95739, 0.35935, 0.94213, 0.19388, 0.92921, 0.25375, 0.88158, 0.32792, 0.81839 ], + "triangles": [ 36, 20, 19, 17, 19, 18, 16, 37, 36, 17, 16, 36, 17, 36, 19, 38, 22, 21, 37, 21, 20, 38, 21, 37, 37, 20, 36, 15, 38, 37, 14, 38, 15, 15, 37, 16, 39, 23, 22, 40, 23, 39, 39, 22, 38, 13, 40, 39, 12, 40, 13, 14, 39, 38, 13, 39, 14, 9, 8, 26, 25, 42, 9, 10, 9, 42, 26, 25, 9, 24, 42, 25, 41, 10, 42, 41, 42, 24, 11, 10, 41, 23, 41, 24, 40, 11, 41, 40, 41, 23, 12, 11, 40, 26, 8, 27, 6, 5, 29, 28, 6, 29, 7, 6, 28, 27, 7, 28, 8, 7, 27, 29, 5, 30, 31, 5, 4, 30, 5, 31, 32, 4, 3, 31, 4, 32, 34, 1, 0, 34, 0, 35, 2, 1, 34, 2, 34, 33, 3, 2, 33, 32, 3, 33 ], + "vertices": [ 1, 14, -19.79, -5.65999, 1, 2, 14, -5.61, -22.28, 0.83363, 15, -41.06, -23.29999, 0.16636, 2, 14, 22.30999, -21.97999, 0.65187, 15, -13.17, -21.87999, 0.34812, 3, 14, 50.83, -22.1, 0.3172, 15, 15.32999, -20.86, 0.43086, 16, -19.67, -21.07999, 0.25192, 4, 14, 79.83999, -23.28, 0.1079, 15, 44.36999, -20.87999, 0.35416, 16, 9.3, -19.19, 0.31918, 17, -25.20999, -20.05999, 0.21871, 4, 15, 74.05, -20.97999, 0.16484, 16, 38.93, -17.34, 0.32776, 17, 4.09, -15.38, 0.29829, 18, -30.1, -17.14999, 0.20906, 3, 16, 65.52999, -17.61, 0.17521, 17, 30.6, -13.1, 0.39171, 18, -4.11, -11.42, 0.43303, 3, 17, 57.02999, -15.71, 0.19717, 18, 22.42, -10.52999, 0.52969, 19, -12.96, -9.8, 0.27311, 3, 18, 46.04, -13.46, 0.4099, 19, 10.82999, -10.17, 0.34746, 20, -24.93, -10.51, 0.2426, 3, 18, 73.37999, -18.69, 0.19431, 19, 38.58, -12.40999, 0.37176, 20, 2.89, -10.97999, 0.43389, 3, 19, 64.05999, -14.97999, 0.16663, 20, 28.47999, -11.93999, 0.56755, 21, -7.51999, -11.47999, 0.26578, 3, 20, 54.56999, -12.35999, 0.52113, 21, 18.54999, -10.93, 0.36166, 11, -3.07999, 24.95, 0.11716, 4, 20, 82.97, -14.35, 0.35144, 21, 47, -11.85999, 0.29521, 11, -13.06, -1.66999, 0.25117, 12, -46.29, 1.83, 0.10215, 1, 11, 16.36, -4.67, 1, 2, 11, 34.31, -4.36, 0.53486, 12, 0.74, -4.42999, 0.46513, 3, 11, 51.09, -4.07999, 0.14609, 12, 17.48999, -5.42, 0.54313, 13, -15.5, -2.75, 0.31075, 2, 12, 34.66999, -4.01, 0.40713, 13, 1.63999, -4.36, 0.59285, 2, 12, 45.08, -3.15, 0.25725, 13, 12.05, -5.34, 0.74273, 2, 12, 53.97999, 5.80999, 0.2531, 13, 22.37999, 1.92999, 0.74687, 2, 12, 37.18999, 9.56, 0.4029, 13, 6.5, 8.56, 0.59709, 3, 11, 57.06999, 14.15999, 0.1335, 12, 24.82999, 12.31999, 0.54644, 13, -5.17999, 13.43999, 0.32003, 4, 20, 47.09, 33.09999, 0.13131, 11, 42.63999, 19.06999, 0.26348, 12, 10.81, 18.30999, 0.49744, 13, -17.93, 21.78, 0.10773, 4, 20, 46.45, 16.09, 0.21157, 21, 9.35999, 17.2, 0.10678, 11, 26.5, 24.55999, 0.44949, 12, -4.84999, 25, 0.23209, 3, 20, 46.79999, 8.61999, 0.4011, 21, 9.98999, 9.75, 0.24542, 11, 19.23999, 26.37, 0.35346, 3, 20, 39.7, 8.6, 0.58249, 21, 2.9, 9.47, 0.3079, 11, 21.25, 33.16999, 0.10958, 3, 19, 59.15999, 5.88, 0.21953, 20, 22.27, 8.57999, 0.57946, 21, -14.51, 8.78999, 0.20099, 3, 18, 71.83, 0.46999, 0.21582, 19, 34.95999, 6.46999, 0.32262, 20, -1.91999, 7.61999, 0.46154, 3, 18, 45.79999, 3.95, 0.40553, 19, 8.69999, 7.11999, 0.386, 20, -28.15999, 6.61, 0.20844, 3, 17, 56.77999, 2.13, 0.25409, 18, 19.82999, 7.11999, 0.53004, 19, -17.45, 7.46, 0.21583, 3, 16, 66.18, 3.45, 0.22413, 17, 29.21999, 7.92, 0.34134, 18, -8.25, 9.23999, 0.4345, 4, 15, 76.59999, 4.5, 0.19362, 16, 39.77999, 8.26, 0.28885, 17, 2.48, 10.18, 0.33579, 18, -35.04999, 7.96999, 0.1817, 4, 14, 82.87999, 7.07999, 0.11658, 15, 46.16999, 9.56999, 0.35727, 16, 9.07999, 11.31999, 0.35745, 17, -28.35, 10.28999, 0.16868, 3, 14, 54.45, 12.1, 0.35356, 15, 17.56999, 13.46, 0.44494, 16, -19.70999, 13.31, 0.20148, 2, 14, 24.64999, 16.69, 0.65438, 15, -12.39, 16.85, 0.3456, 2, 14, -8.38, 15.21, 0.85329, 15, -45.34, 14.03999, 0.14668, 1, 14, -20.18, 4.55999, 1, 2, 12, 35.88, 2.52999, 0.40509, 13, 3.98, 1.86, 0.5949, 3, 11, 54.36999, 5.90999, 0.1392, 12, 21.51, 4.28999, 0.54493, 13, -9.85, 6.11, 0.31584, 2, 11, 37.77999, 7.63, 0.44938, 12, 5.09999, 7.26, 0.55061, 3, 20, 65.37999, 20.69, 0.11856, 11, 20.59, 11.34, 0.75133, 12, -11.76, 12.27, 0.13007, 3, 20, 65.41, 1.80999, 0.39678, 21, 24.29999, 0.23, 0.28257, 11, 2.05999, 14.97, 0.32062, 3, 20, 48, 0.07, 0.55395, 21, 6.92999, -0.31999, 0.33292, 11, 3.36999, 30.46999, 0.1131, 3, 19, 65.94999, -2.96, 0.19447, 20, 24.95, -1.57, 0.57381, 21, -15.98999, -0.41999, 0.2317 ], + "hull": 36, + "edges": [ 0, 2, 2, 4, 4, 6, 6, 8, 8, 10, 10, 12, 12, 14, 14, 16, 16, 18, 18, 20, 20, 22, 22, 24, 24, 26, 34, 36, 44, 46, 50, 52, 52, 54, 54, 56, 56, 58, 58, 60, 60, 62, 62, 64, 64, 66, 66, 68, 68, 70, 0, 70, 4, 66, 2, 68, 40, 42, 42, 44, 26, 28, 28, 30, 46, 48, 48, 50, 36, 38, 38, 40, 30, 32, 32, 34, 18, 52, 16, 54, 14, 56, 12, 58, 10, 60, 8, 62, 6, 64, 32, 72, 72, 38, 30, 74, 74, 40, 72, 74, 28, 76, 76, 42, 74, 76, 26, 78, 78, 44, 76, 78, 24, 80, 80, 46, 78, 80, 22, 82, 82, 48, 80, 82, 20, 84, 84, 50, 82, 84 ], + "width": 100, + "height": 318 + } + }, + "back leg path": { + "back leg path": { + "type": "path", + "lengths": [ 137.82, 291.73, 641.11 ], + "vertexCount": 9, + "vertices": [ 1, 23, -43.13999, 0.61, 1, 1, 23, -1.30999, 0.43, 1, 1, 23, 63.06999, -0.18, 1, 2, 23, 72.06999, 13.64999, 0.5, 24, -69.11, -16.06999, 0.5, 2, 23, 135.74, 0.27, 0.5, 24, -3.96, -2.01999, 0.5, 2, 23, 202.91998, -15.13, 0.5, 24, 65, 14.09, 0.5, 1, 24, 71.08999, -2.02999, 1, 1, 24, 149.06, -1.74, 1, 1, 23, 368.47, -1.80999, 1 ] + } + }, + "body": { + "body": { + "type": "mesh", + "uvs": [ 0.35966, 0.01351, 0.26863, 0.04108, 0.26204, 0.0954, 0.34119, 0.14478, 0.39791, 0.19457, 0.40451, 0.24271, 0.38076, 0.27893, 0.35969, 0.3004, 0.34119, 0.31925, 0.34988, 0.34325, 0.35834, 0.36658, 0.36551, 0.40163, 0.37233, 0.43498, 0.38396, 0.4944, 0.3956, 0.5597, 0.39883, 0.59858, 0.40141, 0.62955, 0.40215, 0.65661, 0.34609, 0.71563, 0.27077, 0.78175, 0.22009, 0.82127, 0.17617, 0.85552, 0.13115, 0.88832, 0.08238, 0.92385, 0.00341, 0.97959, 0.18836, 0.99126, 0.32172, 0.99284, 0.46265, 0.9945, 0.61643, 0.98608, 0.71617, 0.97182, 0.6185, 0.9582, 0.48967, 0.95042, 0.39458, 0.94083, 0.27771, 0.92903, 0.23407, 0.9232, 0.26691, 0.89774, 0.3068, 0.8668, 0.34202, 0.83414, 0.38369, 0.7955, 0.45642, 0.72873, 0.52707, 0.66845, 0.56032, 0.63344, 0.57541, 0.60108, 0.59357, 0.56214, 0.61643, 0.49731, 0.63513, 0.43962, 0.64344, 0.40462, 0.7708, 0.39011, 0.84584, 0.37024, 0.90982, 0.35331, 0.9674, 0.31914, 0.97301, 0.28585, 0.96448, 0.23351, 0.8952, 0.16809, 0.79345, 0.12642, 0.75178, 0.10878, 0.71799, 0.09448, 0.66816, 0.07236, 0.61342, 0.04807, 0.47867, 0.0141, 0.49845, 0.38826, 0.66315, 0.34728, 0.67333, 0.30664, 0.8188, 0.29655, 0.8097, 0.24505, 0.72828, 0.17901, 0.68147, 0.13901, 0.59191, 0.0971, 0.3904, 0.09012, 0.53695, 0.14981, 0.57562, 0.19616, 0.64483, 0.25076, 0.79855, 0.33476, 0.6175, 0.97166, 0.4773, 0.97061, 0.23795, 0.95673, 0.15271, 0.92355, 0.14158, 0.94886, 0.23861, 0.86092, 0.51732, 0.30353, 0.50695, 0.34527, 0.50634, 0.43735, 0.50334, 0.49589, 0.51085, 0.32558, 0.50355, 0.41057, 0.19542, 0.8924, 0.36492, 0.96409 ], + "triangles": [ 2, 1, 68, 68, 1, 58, 58, 1, 59, 1, 0, 59, 69, 67, 66, 3, 68, 69, 69, 68, 67, 3, 2, 68, 66, 56, 55, 66, 67, 56, 67, 57, 56, 67, 58, 57, 67, 68, 58, 5, 70, 71, 71, 70, 65, 5, 4, 70, 70, 66, 65, 4, 69, 70, 70, 69, 66, 4, 3, 69, 65, 54, 53, 65, 66, 54, 66, 55, 54, 46, 61, 47, 46, 80, 61, 80, 83, 61, 61, 62, 72, 61, 83, 62, 80, 9, 83, 9, 8, 83, 83, 79, 62, 8, 7, 83, 83, 7, 79, 71, 6, 5, 7, 6, 79, 79, 6, 62, 6, 71, 62, 47, 72, 48, 47, 61, 72, 48, 72, 49, 49, 72, 50, 72, 63, 50, 72, 62, 63, 50, 63, 51, 62, 64, 63, 63, 52, 51, 63, 64, 52, 71, 65, 64, 64, 53, 52, 64, 65, 53, 62, 71, 64, 26, 86, 27, 27, 74, 28, 27, 86, 74, 28, 73, 29, 28, 74, 73, 73, 30, 29, 74, 31, 73, 73, 31, 30, 86, 32, 74, 74, 32, 31, 25, 75, 26, 26, 75, 86, 24, 77, 25, 25, 77, 75, 24, 23, 77, 75, 33, 86, 86, 33, 32, 75, 77, 33, 77, 34, 33, 77, 76, 34, 77, 23, 76, 23, 22, 76, 76, 85, 34, 76, 22, 85, 34, 85, 35, 85, 78, 35, 22, 21, 85, 35, 78, 36, 85, 21, 78, 37, 36, 20, 21, 20, 78, 36, 78, 20, 20, 19, 37, 37, 19, 38, 19, 18, 38, 38, 18, 39, 18, 17, 39, 39, 17, 40, 41, 40, 16, 40, 17, 16, 42, 41, 15, 41, 16, 15, 43, 42, 14, 42, 15, 14, 14, 82, 43, 43, 82, 44, 14, 13, 82, 82, 81, 44, 44, 81, 45, 82, 13, 81, 13, 12, 81, 46, 45, 84, 12, 84, 81, 45, 81, 84, 12, 11, 84, 11, 60, 84, 84, 60, 46, 60, 80, 46, 11, 10, 60, 60, 10, 80, 10, 9, 80 ], + "vertices": [ 1, 5, 30.85, 2.44, 1, 2, 4, 60.41999, 12.40999, 0.24857, 5, 22.31999, 18.17, 0.75141, 2, 4, 39.47, 25.23999, 0.4433, 5, -1.05999, 25.70999, 0.55668, 3, 3, 48.02, 29.45999, 0.3743, 4, 14.53999, 26.45, 0.47619, 5, -25.56999, 21.01, 0.14949, 3, 2, 50.36, 32.58, 0.11242, 3, 24.29, 26.79, 0.6461, 4, -8.98999, 30.48999, 0.24145, 3, 35, -45.20999, -8.8, 0.1061, 2, 28.68, 30.38999, 0.49531, 3, 2.88, 30.84, 0.39855, 3, 35, -28.90999, -12.43999, 0.258, 2, 12.14999, 32.79, 0.60892, 3, -12.27999, 37.83, 0.13303, 3, 35, -18.5, -14.05, 0.28712, 2, 2.33999, 35.97, 0.51934, 26, -7.59, 18.95, 0.19349, 4, 35, -10.77999, -18.35, 0.28477, 25, -42.02999, 75.55999, 0.10294, 2, -6.36, 37.31, 0.37492, 26, -10.19999, 10.25, 0.23733, 3, 35, 0.92, -16.95, 0.34086, 2, -17.28, 35.45, 0.32139, 26, -8.19999, -0.66, 0.33772, 4, 35, 10.64, -16.30999, 0.3269, 36, -24.04999, -14.89, 0.16082, 2, -27.56999, 33.65999, 0.14431, 26, -6.36, -11.03999, 0.36794, 4, 35, 28.48999, -15.61999, 0.24235, 36, -9.53999, -15.10999, 0.27028, 37, -45.5, -19.11, 0.12131, 26, -3.64, -27.87, 0.36603, 4, 35, 41.59, -14.89, 0.2176, 36, 6.92, -15.34, 0.33285, 37, -26.85, -17.47999, 0.20376, 26, -1.29999, -43.27, 0.24577, 3, 36, 33.81999, -15.8, 0.47178, 37, 0, -15.85, 0.42625, 38, -31.79, -17.81999, 0.10193, 3, 36, 63.38, -16.47999, 0.21259, 37, 29.52, -14.21, 0.42737, 38, -2.42, -14.38, 0.36002, 3, 37, 49.77999, -15.51, 0.30177, 38, 14.85, -13.07999, 0.47126, 39, -21.13999, -15.63, 0.22694, 3, 37, 61.09, -13.39999, 0.15443, 38, 29.03, -11.64, 0.50848, 39, -3.25999, -12.44999, 0.33708, 2, 38, 41.22999, -10.78999, 0.28077, 39, 8.39999, -8.78999, 0.71921, 2, 39, 36.22999, -8.59, 0.56511, 40, -3.01999, -8.82999, 0.43487, 3, 39, 67.93, -10.06, 0.16322, 40, 28.68, -7.80999, 0.53711, 41, -8.10999, -7.69, 0.29965, 3, 40, 47.75999, -8.47, 0.402, 41, 10.97, -7.88999, 0.45129, 42, -26.34, -6.21, 0.14667, 3, 40, 64.61, -8.06, 0.25016, 41, 27.79999, -8.39999, 0.46039, 42, -12.76, -8.81, 0.28942, 4, 40, 79.12, -10.23999, 0.11857, 41, 42.33, -8.02999, 0.2698, 42, 4.53, -8.36999, 0.48104, 32, -1.54999, 35.59999, 0.13055, 2, 42, 20.84, -9.18999, 0.72798, 32, -5.36999, 19.54999, 0.272, 1, 32, -11.5, -7.28999, 1, 4, 42, 43.22999, 16.27, 0.27459, 32, 15.1, -7.51, 0.48157, 33, -12.28999, -5.53999, 0.12941, 34, -41.75999, 0.93999, 0.11439, 4, 42, 36.99, 33.93999, 0.18804, 32, 33.7, -4.57, 0.34251, 33, 6.53, -5.75, 0.18296, 34, -23.19, -2.18, 0.28646, 3, 32, 53.34999, -1.58, 0.21646, 33, 26.39999, -6.07999, 0.26515, 34, -3.60999, -5.59, 0.51836, 2, 33, 47.99, -1.75999, 0.15751, 34, 18.37, -4.65999, 0.84246, 1, 34, 33.15999, -0.10999, 1, 2, 33, 47.97, 10.84, 0.17386, 34, 20.30999, 7.78999, 0.82612, 4, 42, 9.82999, 48.43, 0.1757, 32, 53.27999, 18.69, 0.17037, 33, 29.72999, 13.92, 0.136, 34, 2.75999, 13.65999, 0.51789, 4, 42, 11.44999, 34.56999, 0.26313, 32, 39.25999, 20.54999, 0.23037, 33, 16.20999, 18.09, 0.15679, 34, -9.93999, 19.87999, 0.3497, 4, 42, 12.39999, 17.12999, 0.37055, 32, 22.1, 22.5, 0.30408, 33, -0.37, 22.87, 0.18234, 34, -25.59, 27.17, 0.14297, 3, 42, 12.34, 10.43, 0.44639, 32, 15.56, 23.90999, 0.2976, 33, -6.59, 25.36, 0.256, 5, 40, 75.94999, 9.06, 0.10561, 41, 38.15, 11.07999, 0.25494, 42, 1.64999, 10.97, 0.33577, 32, 17.97999, 34.75, 0.16322, 33, -2.38, 35.63999, 0.14041, 3, 40, 62.61, 10.93999, 0.26063, 41, 26.04, 10.61999, 0.4979, 42, -15.14, 10.14, 0.24143, 3, 40, 47.27, 9.67, 0.40347, 41, 9.52999, 10.18999, 0.4787, 42, -26.59, 11.93, 0.11781, 3, 39, 69.23, 6.96999, 0.16042, 40, 28.62999, 9.26, 0.53934, 41, -7.94, 9.38, 0.30019, 2, 39, 37.36, 8, 0.57647, 40, -3.21, 7.8, 0.4235, 2, 38, 45.47999, 7.09999, 0.29348, 39, 8.38, 9.60999, 0.70649, 3, 37, 62.84, 9, 0.15444, 38, 29.39999, 10.81999, 0.49323, 39, -8.11999, 9.48999, 0.35229, 3, 37, 52.13999, 9.27, 0.30575, 38, 12.84, 11.72999, 0.46742, 39, -26.12, 8.77, 0.22682, 3, 36, 66.66, 11.26, 0.21797, 37, 30.61, 13.68999, 0.42844, 38, -3.04999, 13.52999, 0.35357, 3, 36, 37.7, 16.76, 0.48245, 37, 1.30999, 16.92, 0.41751, 38, -32.49, 14.97, 0.10001, 4, 35, 44.34, 22.11, 0.23458, 36, 11.90999, 21.43, 0.43852, 37, -24.76, 19.55999, 0.20679, 2, -58.27999, -7.19, 0.12007, 4, 35, 28.54, 23.56999, 0.31079, 36, -3.75999, 23.82999, 0.19156, 25, -76.76, 29.21999, 0.21529, 2, -42.41999, -7.44999, 0.28229, 3, 35, 22.30999, 41.63999, 0.18196, 25, -69.83, 12.46, 0.43955, 2, -34.84, -25, 0.37847, 3, 35, 19.77, 51.41999, 0.1392, 25, -59.84, 2.51999, 0.47894, 2, -23.88999, -35.15999, 0.38183, 3, 35, 6.03, 61.52999, 0.10542, 25, -52.7, -5.88, 0.51007, 2, -17.1, -43.61, 0.38449, 2, 25, -37.15999, -13.13, 0.67426, 2, -1.22, -50.81999, 0.32572, 1, 25, -22.09, -13.05, 1, 2, 25, 1.45, -10.48999, 0.89017, 2, 37.38999, -48.18, 0.10981, 3, 25, 30.39999, 0.95999, 0.43018, 2, 66.34999, -36.72, 0.16236, 3, 19.96999, -44.2, 0.40742, 2, 3, 41.58, -34.52, 0.68164, 4, -9.43999, -33.20999, 0.31834, 2, 3, 50.68, -30.61, 0.51065, 4, 0.37999, -31.98999, 0.48932, 3, 3, 58.06, -27.44, 0.26484, 4, 8.35, -31, 0.61474, 5, -18.04, -36.27999, 0.12041, 3, 3, 69.4, -22.87999, 0.17395, 4, 20.5, -29.77, 0.5644, 5, -6.51999, -32.22, 0.26164, 2, 4, 33.86, -28.42, 0.29085, 5, 6.13, -27.76, 0.70914, 2, 4, 56.54999, -19.37, 0.1738, 5, 26.04999, -13.63, 0.82618, 5, 35, 20.79, 3.25999, 0.38866, 36, -12.72999, 4.03, 0.17697, 25, -69.83999, 50.18, 0.10104, 2, -36.22, 13.38, 0.1958, 26, 13.97, -19.23999, 0.13748, 4, 35, 2.68, 26.80999, 0.26409, 25, -50.86, 29.20999, 0.2337, 2, -16.38999, -8.72999, 0.34628, 26, 35.77999, -0.47999, 0.15591, 3, 35, -15.64999, 28.56999, 0.15678, 25, -33.52999, 28.78, 0.29159, 2, 2.01999, -9.1, 0.5516, 1, 25, -28.17, 8.36999, 1, 1, 25, -5.01, 10.98999, 1, 3, 25, 24.12, 24.17, 0.1205, 2, 60.06, -13.51, 0.21383, 3, 20.53, -20.15999, 0.66562, 2, 3, 39.63, -17.84, 0.59512, 4, -6.67, -16.64999, 0.40487, 3, 3, 60.95, -9.85999, 0.26251, 4, 16.02, -14.92, 0.55541, 5, -14.38, -18.84, 0.18206, 2, 4, 32.68, 8.3, 0.58728, 5, -3.66, 7.65, 0.41269, 2, 3, 39.52, 3.09999, 0.47135, 4, -0.94999, 3.49, 0.52863, 1, 3, 17.87999, 2.55999, 1, 2, 2, 27.01, -3.63, 0.67245, 3, -8.35999, -1.30999, 0.32754, 3, 35, -2.63, 46, 0.10031, 25, -45.40999, 10.26, 0.5261, 2, -9.64, -27.45999, 0.37354, 2, 33, 47.97999, 4.75, 0.16596, 34, 19.37, 1.76999, 0.83402, 4, 42, 19.54999, 50.47999, 0.12624, 32, 53.29999, 9.5, 0.16908, 33, 28.20999, 4.84999, 0.24845, 34, -0.12999, 4.94, 0.4562, 4, 42, 26.30999, 16.81999, 0.32785, 32, 18.95999, 9.25, 0.38306, 33, -5.67999, 10.34, 0.15879, 34, -32.77, 15.60999, 0.13026, 2, 42, 16.95999, -0.02999, 0.66864, 32, 4.23, 21.70999, 0.33134, 3, 42, 28.1, 2.84999, 0.4826, 32, 4.90999, 10.14, 0.31301, 33, -19.37999, 13.56999, 0.20437, 3, 40, 63.20999, -0.57999, 0.21067, 41, 25.95999, 0.77999, 0.49386, 42, -11.01, 1.48, 0.29543, 3, 35, -14.82999, 8.07999, 0.24447, 25, -33.34, 51.22999, 0.16324, 2, 2.58999, 13.52999, 0.59226, 4, 35, 3.36999, 4.96, 0.28615, 25, -51.81, 51.13, 0.16475, 2, -15.85999, 13.43999, 0.31891, 26, 13.85, -0.51999, 0.23014, 4, 35, 46.08, 3.57999, 0.24088, 36, 9.06, 3.08999, 0.4115, 37, -28.45999, 0.63999, 0.21862, 26, 17.5, -43.06999, 0.12895, 3, 36, 37.22, 1.25, 0.47743, 37, -0.07999, 1.25, 0.42162, 38, -36.25, -5.25, 0.10091, 4, 35, -5.23, 6.28999, 0.25593, 25, -43.09999, 51.31999, 0.15578, 2, -7.15999, 13.61999, 0.42092, 26, 14.15999, 8.17, 0.16733, 4, 35, 33.02999, 3.36999, 0.36684, 36, -3.96, 3.59999, 0.31093, 2, -45.31999, 9.81999, 0.17305, 26, 15.75, -30.13999, 0.14914, 4, 40, 77.5, -1.15999, 0.11479, 41, 40.22999, 0.94999, 0.26888, 42, 3.04999, 0.72, 0.44971, 32, 7.65999, 35.31999, 0.16659, 4, 42, 22.71999, 34.66999, 0.22089, 32, 37.18, 9.38, 0.26954, 33, 12.28999, 7.42999, 0.20635, 34, -15.46, 9.94999, 0.30316 ], + "hull": 60, + "edges": [ 0, 2, 2, 4, 4, 6, 6, 8, 8, 10, 10, 12, 24, 26, 26, 28, 32, 34, 34, 36, 36, 38, 46, 48, 48, 50, 54, 56, 56, 58, 58, 60, 60, 62, 66, 68, 76, 78, 78, 80, 80, 82, 86, 88, 88, 90, 90, 92, 92, 94, 98, 100, 100, 102, 102, 104, 104, 106, 106, 108, 116, 118, 0, 118, 92, 120, 120, 20, 28, 86, 82, 32, 34, 80, 78, 36, 76, 38, 12, 124, 102, 126, 126, 124, 126, 128, 128, 130, 130, 132, 132, 134, 112, 134, 134, 136, 136, 4, 2, 116, 6, 138, 138, 132, 8, 140, 140, 130, 10, 142, 142, 128, 128, 104, 130, 106, 132, 108, 122, 92, 100, 144, 144, 122, 126, 144, 144, 94, 112, 114, 114, 116, 108, 110, 110, 112, 16, 18, 18, 20, 20, 22, 22, 24, 12, 14, 14, 16, 122, 124, 94, 96, 96, 98, 56, 146, 146, 60, 54, 148, 148, 62, 146, 148, 50, 150, 150, 66, 46, 152, 152, 68, 154, 152, 154, 48, 42, 156, 156, 72, 14, 158, 158, 124, 18, 160, 160, 122, 160, 120, 24, 162, 162, 90, 26, 164, 164, 88, 162, 164, 16, 166, 160, 166, 166, 158, 166, 124, 162, 168, 168, 120, 168, 22, 168, 92, 38, 40, 40, 42, 72, 74, 74, 76, 40, 74, 42, 44, 44, 46, 152, 170, 170, 156, 44, 170, 68, 70, 70, 72, 170, 70, 62, 64, 64, 66, 148, 172, 172, 150, 64, 172, 50, 52, 52, 54, 172, 52, 154, 66, 150, 154, 28, 30, 30, 32, 82, 84, 84, 86, 30, 84 ], + "width": 141, + "height": 452 + } + }, + "front arm": { + "front arm": { + "type": "mesh", + "uvs": [ 0.714, 0.00566, 0.67107, 0.08129, 0.60221, 0.15433, 0.53632, 0.21682, 0.44558, 0.28704, 0.34898, 0.35134, 0.29096, 0.3894, 0.25238, 0.41472, 0.22423, 0.4427, 0.19483, 0.47193, 0.15998, 0.50657, 0.09138, 0.59567, 0.05498, 0.70865, 0.02988, 0.81366, 0.01048, 0.94262, 0.10494, 0.98984, 0.25391, 0.9742, 0.31482, 0.88906, 0.28834, 0.82868, 0.13606, 0.74572, 0.14334, 0.71487, 0.18317, 0.62253, 0.25217, 0.5422, 0.29537, 0.50981, 0.33787, 0.47794, 0.38451, 0.45012, 0.43581, 0.41953, 0.5471, 0.36549, 0.68845, 0.29831, 0.74855, 0.35527, 0.85873, 0.38229, 0.99674, 0.37644, 0.95353, 0.33244, 0.91355, 0.29171, 0.87464, 0.25208, 0.83758, 0.21434, 0.78082, 0.12598, 0.78194, 0.06829, 0.63219, 0.23719, 0.66924, 0.15783, 0.75532, 0.20966, 0.7161, 0.11136 ], + "triangles": [ 30, 29, 33, 30, 32, 31, 40, 41, 36, 39, 41, 40, 40, 36, 35, 38, 39, 40, 28, 38, 40, 34, 28, 40, 34, 40, 35, 28, 34, 33, 29, 28, 33, 30, 33, 32, 41, 1, 0, 37, 41, 0, 36, 41, 37, 39, 1, 41, 39, 2, 1, 19, 12, 20, 13, 12, 19, 18, 15, 19, 16, 18, 17, 15, 13, 19, 15, 14, 13, 15, 18, 16, 21, 10, 22, 11, 10, 21, 20, 11, 21, 12, 11, 20, 9, 8, 23, 22, 9, 23, 10, 9, 22, 26, 5, 4, 25, 5, 26, 6, 5, 25, 24, 6, 25, 7, 6, 24, 23, 7, 24, 8, 7, 23, 38, 2, 39, 3, 2, 38, 27, 3, 38, 27, 38, 28, 4, 3, 27, 26, 4, 27 ], + "vertices": [ 1, 47, 21.65999, 6.07, 1, 2, 46, 18.12999, 3.36999, 0.16552, 47, 3.91, 4.23, 0.83446, 3, 27, -6.11999, -15.22999, 0.20964, 46, -0.03999, 8.85, 0.53628, 5, 43.43999, 6.80999, 0.25404, 1, 27, 10.35999, -12.02, 1, 2, 27, 30.62, -10.09, 0.8882, 28, -7.63, -10.14999, 0.11178, 2, 27, 50.56999, -9.68999, 0.30994, 28, 12.31, -9.60999, 0.69003, 2, 28, 24.20999, -9.36999, 0.86562, 29, -13.42, -6.19999, 0.13436, 2, 28, 32.11999, -9.21, 0.73142, 29, -5.71999, -8.02, 0.26855, 2, 28, 39.34999, -7.57999, 0.54006, 29, 1.67999, -8.23999, 0.45991, 2, 28, 46.9, -5.88, 0.29036, 29, 9.40999, -8.47999, 0.70963, 2, 29, 18.57999, -8.76, 0.66539, 30, -15.75, -5.11999, 0.3346, 1, 30, 6.03, -8.57999, 1, 2, 30, 31.42, -5.96999, 0.39256, 31, 0.49, -6.36, 0.60742, 1, 31, 23.79, -9.31, 1, 1, 31, 52.36999, -11.27999, 1, 1, 31, 62.38999, 2.71, 1, 1, 31, 58.29, 24.2, 1, 1, 31, 39.22, 32.47999, 1, 1, 31, 25.98999, 28.23999, 1, 1, 31, 8.32999, 5.63, 1, 2, 30, 28.80999, 6.63999, 0.48313, 31, 1.48, 6.48, 0.51686, 1, 30, 7.61, 5.9, 1, 3, 28, 51.65999, 11.06999, 0.10767, 29, 18.26, 6.73999, 0.55899, 30, -12.34, 10, 0.33333, 2, 28, 42.18, 10.25, 0.31463, 29, 8.86999, 8.31, 0.68536, 2, 28, 32.86, 9.43999, 0.59183, 29, -0.34999, 9.85999, 0.40816, 2, 28, 23.71999, 9.68999, 0.83034, 29, -9.13, 12.38, 0.16964, 2, 27, 52.08, 9.88, 0.29919, 28, 13.67, 9.97, 0.70078, 2, 27, 32.18, 12.59, 0.84685, 28, -6.23, 12.53999, 0.15312, 1, 5, 9.42, 3.38, 1, 2, 5, -5.05, -1.59, 0.47198, 4, 29.15999, -0.34999, 0.52799, 1, 4, 16.12999, -11.35, 1, 1, 4, 7.44999, -29.43, 1, 2, 5, -8.22999, -31.55999, 0.51928, 4, 19, -28.72999, 0.48069, 1, 5, 1.99, -28.42, 1, 1, 5, 11.96, -25.36, 1, 1, 5, 21.44, -22.45, 1, 3, 46, 12.68999, -14.53999, 0.25481, 47, 2.13, -14.39999, 0.32231, 5, 42.47, -19.80999, 0.42285, 1, 47, 13.63, -8.89, 1, 1, 27, 3.54999, 0.89999, 1, 2, 46, 1.71, -0.73, 0.5001, 5, 40.06, -2.32999, 0.49988, 1, 5, 25.65999, -11.23999, 1, 3, 46, 13.39, -4.63999, 0.33234, 47, 0.86, -4.55999, 0.48164, 5, 48.11, -11.64999, 0.186 ], + "hull": 38, + "edges": [ 0, 2, 8, 10, 20, 22, 22, 24, 24, 26, 26, 28, 28, 30, 30, 32, 32, 34, 34, 36, 36, 38, 38, 40, 40, 42, 42, 44, 52, 54, 54, 56, 56, 58, 58, 60, 60, 62, 70, 72, 72, 74, 0, 74, 56, 76, 6, 8, 76, 6, 4, 6, 4, 78, 78, 80, 80, 70, 2, 82, 82, 72, 82, 78, 78, 76, 2, 4, 56, 80, 56, 66, 62, 64, 64, 66, 66, 68, 68, 70, 44, 46, 46, 48, 18, 20, 46, 18, 10, 12, 12, 14, 48, 50, 50, 52, 12, 50, 14, 16, 16, 18 ], + "width": 145, + "height": 221 + } + }, + "front leg path": { + "front leg path": { + "type": "path", + "lengths": [ 140.43, 297.34, 652.04 ], + "vertexCount": 9, + "vertices": [ 1, 44, -40.7, -0.40999, 1, 1, 44, 1.48, -0.27, 1, 1, 44, 75.41999, 0.33, 1, 2, 44, 82.91999, 8.48999, 0.5, 45, -58.75, -8.52999, 0.5, 2, 44, 141.34, 0.51999, 0.5, 45, 0.44999, 0.70999, 0.5, 2, 44, 208.26, -14.82999, 0.5, 45, 68.83, 18.53, 0.5, 1, 45, 73.80999, 1.40999, 1, 1, 45, 156.57, 0.98, 1, 1, 44, 380.59, 0.75999, 1 ] + } + }, + "head": { + "head": { + "type": "mesh", + "uvs": [ 0.49583, 0.01984, 0.3073, 0.05802, 0.14319, 0.17024, 0.0279, 0.36227, 0.04553, 0.57745, 0.16625, 0.73247, 0.18795, 0.84353, 0.30324, 0.96963, 0.42124, 0.91063, 0.58535, 0.94649, 0.76303, 0.93261, 0.8694, 0.78599, 0.96783, 0.65033, 0.93351, 0.55575, 0.91494, 0.50457, 0.93281, 0.4436, 0.96241, 0.34261, 0.84983, 0.16792, 0.70199, 0.06496, 0.71827, 0.40045, 0.55822, 0.46524, 0.67191, 0.56924, 0.61248, 0.74982, 0.29238, 0.552, 0.68707, 0.30096, 0.49719, 0.316, 0.38868, 0.29286, 0.30595, 0.24312, 0.32494, 0.40508, 0.4036, 0.55663, 0.63282, 0.6862, 0.75489, 0.67579, 0.72156, 0.43445, 0.60178, 0.47123, 0.67975, 0.53995, 0.86841, 0.4929 ], + "triangles": [ 7, 6, 8, 10, 9, 22, 9, 8, 22, 10, 22, 11, 22, 8, 23, 23, 8, 5, 8, 6, 5, 11, 22, 31, 22, 30, 31, 11, 31, 12, 23, 29, 22, 22, 29, 30, 5, 4, 23, 29, 20, 30, 30, 21, 31, 30, 20, 21, 31, 13, 12, 31, 14, 13, 31, 21, 14, 4, 3, 23, 21, 35, 14, 21, 34, 35, 20, 33, 21, 21, 33, 34, 23, 28, 29, 20, 29, 28, 20, 28, 25, 25, 28, 26, 23, 3, 28, 27, 3, 2, 3, 27, 28, 34, 32, 35, 34, 33, 32, 14, 35, 15, 15, 35, 19, 32, 33, 19, 33, 20, 19, 20, 24, 19, 20, 25, 24, 16, 15, 19, 19, 35, 32, 28, 27, 26, 19, 24, 16, 24, 17, 16, 18, 24, 25, 25, 26, 0, 24, 18, 17, 18, 25, 0, 27, 1, 26, 26, 1, 0, 27, 2, 1 ], + "vertices": [ 1, 48, 90.83, 8.14, 1, 1, 48, 81.69999, 22.32999, 1, 1, 48, 66.16, 32, 1, 1, 48, 44.34, 34.97, 1, 1, 48, 24.13999, 26.23999, 1, 1, 48, 12.71, 11.09, 1, 1, 47, 17.77, 6.05999, 1, 1, 47, 10.69999, -8.61999, 1, 1, 48, 2.94, -15.85, 1, 1, 48, 4.23, -30.53, 1, 1, 48, 10.69999, -44.63999, 1, 1, 48, 27.88999, -48.40999, 1, 1, 48, 43.79, -51.9, 1, 1, 48, 51.90999, -45.88999, 1, 1, 48, 56.29, -42.63, 1, 1, 48, 62.68, -42.04, 1, 1, 48, 73.26, -41.04999, 1, 1, 48, 86.80999, -25.90999, 1, 1, 48, 92.44999, -10.28999, 1, 1, 48, 60.63, -22.96999, 1, 1, 48, 49.77, -12.02999, 1, 1, 48, 43.04, -24.87, 1, 1, 48, 23.94, -26.1, 1, 1, 48, 33.72999, 6.84, 1, 1, 48, 69.3, -17.04999, 1, 1, 48, 62.36, -1.97, 1, 1, 48, 61.45, 7.69999, 1, 1, 48, 63.84999, 16.18, 1, 1, 48, 48.81, 9.14, 1, 1, 48, 36.5, -2.43, 1, 1, 48, 30.65999, -25.62, 1, 1, 48, 35.18999, -35.29, 1, 1, 48, 57.45, -24.38999, 1, 1, 48, 50.45, -15.81, 1, 1, 48, 46.09, -24.53, 1, 1, 48, 56.06999, -38.41999, 1 ], + "hull": 19, + "edges": [ 0, 2, 2, 4, 4, 6, 6, 8, 8, 10, 10, 12, 12, 14, 14, 16, 16, 18, 18, 20, 32, 34, 34, 36, 0, 36, 28, 30, 30, 32, 30, 38, 38, 40, 40, 42, 42, 28, 20, 22, 22, 24, 22, 44, 44, 46, 32, 48, 48, 50, 50, 52, 52, 54, 54, 56, 56, 58, 58, 60, 60, 62, 24, 26, 26, 28, 62, 26, 64, 66, 66, 40, 66, 68, 68, 70, 70, 64 ], + "width": 87, + "height": 102 + } + } + } +}, +"animations": { + "sneak": { + "bones": { + "hip": { + "rotate": [ + { "time": 0, "angle": 30.27, "curve": "stepped" }, + { "time": 0.1666, "angle": 30.27 }, + { "time": 0.3333, "angle": -31.29 }, + { "time": 0.5333, "angle": -44.75 }, + { "time": 0.7333, "angle": -25.49 }, + { "time": 0.8999, "angle": -9.45 }, + { "time": 1.0666, "angle": 30.27 }, + { "time": 1.2333, "angle": -10.1 }, + { "time": 1.6333, "angle": -41.47 }, + { "time": 1.7999, "angle": 30.27 } + ], + "translate": [ + { "time": 0, "x": -57.43, "y": -40.92 }, + { + "time": 0.1666, + "x": -16.15, + "y": -96.56, + "curve": [ 0.245, 0, 0.637, 0.55 ] + }, + { + "time": 0.2666, + "x": 85.99, + "y": -143.07, + "curve": [ 0.381, 0.54, 0.742, 1 ] + }, + { "time": 0.3333, "x": 145.44, "y": -159.27 }, + { "time": 0.4333, "x": 344.29, "y": -134.94 }, + { "time": 0.5333, "x": 543.13, "y": -81.1 }, + { "time": 0.7333, "x": 569.68, "y": -62.13 }, + { "time": 0.8999, "x": 591.8, "y": -46.32 }, + { + "time": 1.0666, + "x": 653.14, + "y": -96.6, + "curve": [ 0.381, 0.54, 0.742, 1 ] + }, + { "time": 1.1333, "x": 710.16, "y": -143.1 }, + { "time": 1.2333, "x": 795.7, "y": -159.3 }, + { "time": 1.3333, "x": 986.94, "y": -153.35 }, + { "time": 1.4333, "x": 1178.19, "y": -111.88 }, + { "time": 1.6333, "x": 1195.1, "y": -62.1 }, + { "time": 1.7999, "x": 1246.53, "y": -40.92 } + ] + }, + "front leg IK target": { + "translate": [ + { "time": 0, "x": -50.42, "y": 44.61 }, + { "time": 0.1666, "x": -50.42, "y": 46.55 }, + { "time": 0.3333, "x": -50.42, "y": 47 }, + { + "time": 0.5333, + "x": -26.42, + "y": 50.21, + "curve": [ 0.532, 0, 0.75, 1 ] + }, + { "time": 0.7333, "x": 566.43, "y": 107.27 }, + { "time": 0.8999, "x": 1215.89, "y": 68.21 }, + { "time": 1.0666, "x": 1235.47, "y": 15.8 }, + { "time": 1.2333, "x": 1235.47, "y": 0.97 }, + { "time": 1.5666, "x": 1230.15, "y": 3.76 }, + { "time": 1.7, "x": 1244, "y": 26.76 }, + { "time": 1.7999, "x": 1253.53, "y": 44.61 } + ] + }, + "front foot 1": { + "rotate": [ + { "time": 0, "angle": -48.38, "curve": "stepped" }, + { "time": 0.3333, "angle": -48.38 }, + { "time": 0.6999, "angle": -121.34 }, + { "time": 0.8, "angle": -80.19 }, + { "time": 0.8999, "angle": 45.59 }, + { "time": 1.0666, "angle": 2.1 }, + { "time": 1.2333, "angle": 4.65 }, + { "time": 1.5666, "angle": 5.66 }, + { "time": 1.7999, "angle": -48.38 } + ], + "scale": [ + { "time": 0, "x": 1, "y": 1, "curve": "stepped" }, + { "time": 0.6, "x": 1, "y": 1 }, + { "time": 0.6333, "x": 0.954, "y": 1 }, + { "time": 0.7666, "x": 0.82, "y": 1 }, + { "time": 0.8999, "x": 1, "y": 1 }, + { "time": 1.0666, "x": 0.851, "y": 1 }, + { "time": 1.3666, "x": 1, "y": 1 } + ] + }, + "front foot 3": { + "rotate": [ + { "time": 0, "angle": 36.32 }, + { "time": 0.3333, "angle": 28.46 }, + { "time": 0.5, "angle": 34.84 }, + { "time": 0.5333, "angle": 30.32 }, + { "time": 0.5666, "angle": 61.67 }, + { "time": 0.6999, "angle": -19.47 }, + { "time": 0.8999, "angle": -0.12 }, + { "time": 1.0666, "angle": -7.21 }, + { "time": 1.2333, "angle": -11.34 }, + { "time": 1.5666, "angle": -11.23 }, + { "time": 1.7999, "angle": 36.32 } + ] + }, + "back leg IK target": { + "translate": [ + { "time": 0, "x": 516.79, "y": 86.68 }, + { "time": 0.1666, "x": 523.71, "y": 16.63 }, + { "time": 0.3333, "x": 523.03, "y": -5, "curve": "stepped" }, + { "time": 0.6999, "x": 523.03, "y": -5 }, + { "time": 0.8999, "x": 551.31, "y": 41.86 }, + { "time": 1.0666, "x": 554.24, "y": 44.45 }, + { "time": 1.1333, "x": 555.44, "y": 44.74 }, + { "time": 1.2, "x": 556.6, "y": 46.19, "curve": "stepped" }, + { "time": 1.4333, "x": 556.6, "y": 46.19 }, + { "time": 1.5, "x": 746.96, "y": 74.82 }, + { "time": 1.6333, "x": 1127.68, "y": 103.61 }, + { "time": 1.7999, "x": 1820.75, "y": 86.68 } + ] + }, + "back foot 1": { + "rotate": [ + { "time": 0, "angle": 74.17 }, + { "time": 0.1666, "angle": -17.01 }, + { "time": 0.3333, "angle": 5.05 }, + { "time": 0.6999, "angle": 3.74 }, + { "time": 0.8999, "angle": -65.56 }, + { "time": 1.6333, "angle": -92.52 }, + { "time": 1.7999, "angle": 74.17 } + ], + "scale": [ + { "time": 0, "x": 0.824, "y": 1 }, + { "time": 0.1666, "x": 0.754, "y": 1 }, + { "time": 0.3333, "x": 0.589, "y": 1 }, + { "time": 0.5666, "x": 0.909, "y": 1 }, + { "time": 0.8999, "x": 1, "y": 1, "curve": "stepped" }, + { "time": 1.3999, "x": 1, "y": 1 }, + { "time": 1.5, "x": 0.844, "y": 1 }, + { "time": 1.7999, "x": 0.824, "y": 1 } + ] + }, + "back foot 2": { + "rotate": [ + { "time": 0, "angle": 8.13 }, + { "time": 0.1666, "angle": -3.21 }, + { "time": 0.6999, "angle": -1.14 }, + { "time": 0.8999, "angle": 34.12 }, + { "time": 1.4333, "angle": 46.68 }, + { "time": 1.5333, "angle": -15.6 }, + { "time": 1.6333, "angle": -11.91 }, + { "time": 1.7999, "angle": 8.13 } + ], + "scale": [ + { "time": 0, "x": 1, "y": 1 }, + { "time": 0.1666, "x": 0.835, "y": 1 }, + { "time": 0.3333, "x": 1, "y": 1 } + ] + }, + "front arm 1": { + "rotate": [ + { "time": 0, "angle": -39.71 }, + { "time": 0.1666, "angle": -37.29 }, + { "time": 0.3333, "angle": 30.66 }, + { + "time": 0.8999, + "angle": -53.28, + "curve": [ 0.708, 0.01, 0.75, 1 ] + }, + { "time": 1.2333, "angle": 36 }, + { "time": 1.7999, "angle": -39.71 } + ] + }, + "neck 1": { + "rotate": [ + { "time": 0, "angle": 21.95, "curve": "stepped" }, + { "time": 0.1666, "angle": 21.95 }, + { "time": 0.2666, "angle": 30.6 }, + { "time": 0.3333, "angle": 36.37 }, + { "time": 0.7333, "angle": 33.6 }, + { "time": 1.1666, "angle": 23.95 }, + { "time": 1.2333, "angle": 36.37 }, + { "time": 1.6333, "angle": 41.16 }, + { "time": 1.7999, "angle": 21.95 } + ] + }, + "neck 2": { + "rotate": [ + { "time": 0, "angle": -22.93 }, + { "time": 0.1666, "angle": -23.95 }, + { "time": 0.2666, "angle": 8.84 }, + { "time": 0.3333, "angle": 30.71 }, + { "time": 0.7333, "angle": -3.36 }, + { "time": 0.8999, "angle": -17.57 }, + { "time": 1.1666, "angle": 2.19 }, + { "time": 1.2333, "angle": 15.25 }, + { "time": 1.6333, "angle": 4.41 }, + { "time": 1.7999, "angle": -22.93 } + ] + }, + "head": { + "rotate": [ + { "time": 0, "angle": -22.93 }, + { "time": 0.1666, "angle": -13.03 }, + { "time": 0.2666, "angle": 2.64 }, + { "time": 0.3333, "angle": 13.1 }, + { "time": 0.5, "angle": 13.1 }, + { "time": 0.7333, "angle": -18.9 }, + { "time": 0.8999, "angle": -41.77 }, + { "time": 1.1666, "angle": -4 }, + { "time": 1.2333, "angle": -2.35 }, + { "time": 1.6333, "angle": -22.89 }, + { "time": 1.7999, "angle": -22.93 } + ] + }, + "back arm 1": { + "rotate": [ + { "time": 0, "angle": -17.23 }, + { "time": 0.1666, "angle": -18.65 }, + { "time": 0.3333, "angle": 324.98 }, + { "time": 0.5666, "angle": -6.41 }, + { "time": 0.8999, "angle": -14.83 }, + { "time": 1.0666, "angle": -16.9 }, + { "time": 1.2333, "angle": 1.49 }, + { "time": 1.3999, "angle": 2.56 }, + { "time": 1.7999, "angle": -17.23 } + ], + "translate": [ + { "time": 0, "x": -14.25, "y": -6.6 } + ] + }, + "back leg IK 1": { + "scale": [ + { "time": 0, "x": 2.186, "y": 1 }, + { "time": 0.1666, "x": 2.228, "y": 1 }, + { "time": 0.3333, "x": 1.532, "y": 1 }, + { "time": 0.4333, "x": 0.946, "y": 1 }, + { "time": 0.5333, "x": 1, "y": 1, "curve": "stepped" }, + { "time": 1.0666, "x": 1, "y": 1 }, + { "time": 1.1333, "x": 0.892, "y": 1 }, + { "time": 1.2333, "x": 0.956, "y": 1 }, + { "time": 1.4333, "x": 2.315, "y": 1 }, + { "time": 1.6333, "x": 0.774, "y": 1 }, + { "time": 1.7999, "x": 2.186, "y": 1 } + ] + }, + "front leg 1": { + "scale": [ + { "time": 0, "x": 1, "y": 1.117 } + ] + }, + "back leg 1": { + "scale": [ + { "time": 0, "x": 1, "y": 1.038 } + ] + }, + "front leg IK 1": { + "scale": [ + { "time": 0, "x": 1, "y": 1 }, + { "time": 0.2666, "x": 0.858, "y": 1 }, + { "time": 0.3333, "x": 0.972, "y": 1 }, + { + "time": 0.5333, + "x": 2.356, + "y": 1, + "curve": [ 0.532, 0, 0.75, 1 ] + }, + { "time": 0.6999, "x": 1, "y": 1 }, + { "time": 0.8999, "x": 2.248, "y": 1 }, + { "time": 1.0666, "x": 2.002, "y": 1 }, + { "time": 1.2333, "x": 1.495, "y": 1 }, + { + "time": 1.2999, + "x": 1.047, + "y": 1, + "curve": [ 0.339, 0.58, 0.764, 1 ] + }, + { "time": 1.4333, "x": 0.779, "y": 0.762 }, + { "time": 1.7999, "x": 1, "y": 1 } + ] + }, + "front leg IK 2": { + "scale": [ + { "time": 0, "x": 1, "y": 1 } + ] + }, + "front arm 3": { + "rotate": [ + { "time": 0, "angle": 0 }, + { "time": 0.1666, "angle": 17.37 }, + { "time": 0.3333, "angle": 31.94 }, + { + "time": 0.8999, + "angle": 4.76, + "curve": [ 0.708, 0.01, 0.75, 1 ] + }, + { "time": 1.2333, "angle": 39.96 }, + { "time": 1.7999, "angle": 0 } + ] + }, + "spine 2": { + "rotate": [ + { "time": 0, "angle": -3.49 }, + { "time": 0.2666, "angle": -11.57 }, + { "time": 0.3333, "angle": -9.02 }, + { "time": 0.5, "angle": -2.65 }, + { "time": 0.7333, "angle": -5.78 }, + { "time": 1.1666, "angle": -11.57 }, + { "time": 1.2333, "angle": -6.69 }, + { "time": 1.6333, "angle": -2.5 }, + { "time": 1.7999, "angle": -3.49 } + ] + }, + "spine 3": { + "rotate": [ + { "time": 0, "angle": -20.41 }, + { "time": 0.2666, "angle": -11.57 }, + { "time": 0.3333, "angle": -9.02 }, + { "time": 0.5, "angle": -2.65 }, + { "time": 0.7333, "angle": -10.53 }, + { "time": 0.8999, "angle": -16.16 }, + { "time": 1.1666, "angle": -11.57 }, + { "time": 1.2333, "angle": -9.02 }, + { "time": 1.6333, "angle": -7.26 }, + { "time": 1.7999, "angle": -20.41 } + ] + }, + "back arm 3": { + "rotate": [ + { "time": 0, "angle": 26.23 }, + { "time": 0.1666, "angle": 53.14 }, + { "time": 0.3333, "angle": 116.25 }, + { "time": 0.5666, "angle": 35.72 }, + { "time": 0.8999, "angle": 39.32 }, + { "time": 1.0666, "angle": 41.19 }, + { "time": 1.2333, "angle": 78.09 }, + { "time": 1.3999, "angle": 36.16 }, + { "time": 1.7999, "angle": 26.23 } + ] + }, + "back foot 3": { + "rotate": [ + { "time": 0, "angle": 11.35 }, + { "time": 0.6999, "angle": -4.24 }, + { "time": 0.8999, "angle": 25.48, "curve": "stepped" }, + { "time": 1.4333, "angle": 25.48 }, + { "time": 1.5333, "angle": -30.51 }, + { "time": 1.6333, "angle": -20.54 }, + { "time": 1.7999, "angle": 11.35 } + ], + "scale": [ + { "time": 0, "x": 1, "y": 1 }, + { "time": 0.1666, "x": 0.835, "y": 1 }, + { "time": 0.3333, "x": 1, "y": 1 } + ] + }, + "spine 1": { + "rotate": [ + { "time": 0, "angle": 10.81 }, + { "time": 0.2666, "angle": -28.69 }, + { "time": 0.3333, "angle": -24.32 }, + { "time": 0.5, "angle": -13.37 }, + { "time": 0.7333, "angle": 21.61 }, + { "time": 0.8999, "angle": 46.61 }, + { "time": 1.1666, "angle": -28.69 }, + { "time": 1.2333, "angle": -43.33 }, + { "time": 1.6333, "angle": 24.89 }, + { "time": 1.7999, "angle": 10.81 } + ] + }, + "spine 4": { + "rotate": [ + { "time": 0, "angle": 0 }, + { "time": 0.2666, "angle": -2.8 }, + { "time": 0.3333, "angle": -0.82 }, + { "time": 0.5, "angle": 4.13 }, + { "time": 0.7333, "angle": -3.74 }, + { "time": 0.8999, "angle": -9.37 }, + { "time": 1.1666, "angle": -9.02 }, + { "time": 1.2333, "angle": -0.82 }, + { "time": 1.6333, "angle": 3.81 }, + { "time": 1.7999, "angle": 0 } + ] + }, + "front foot 2": { + "rotate": [ + { "time": 0, "angle": 0 }, + { "time": 0.2666, "angle": -1.24 }, + { "time": 0.3333, "angle": -0.2 }, + { "time": 0.5, "angle": 22.72 }, + { "time": 0.5333, "angle": 26.87 }, + { "time": 0.6999, "angle": -39.25 }, + { "time": 0.8999, "angle": 11.26 }, + { "time": 1.0666, "angle": -18.17 }, + { "time": 1.2333, "angle": -2.64 }, + { "time": 1.5666, "angle": -5.84 }, + { "time": 1.7999, "angle": 0 } + ] + }, + "belly": { + "translate": [ + { "time": 0, "x": 3.65, "y": -3.77 }, + { "time": 0.2666, "x": 13.82, "y": -3.82 }, + { "time": 0.6333, "x": -4.11, "y": -3.89 }, + { "time": 0.7666, "x": 10.21, "y": -2.91 }, + { "time": 0.8666, "x": 10.3, "y": -7.38 }, + { "time": 1.1, "x": -0.44, "y": -1.45 }, + { "time": 1.2333, "x": 12.37, "y": 2.32 }, + { "time": 1.3666, "x": 11.51, "y": 5.52 }, + { "time": 1.7999, "x": 0, "y": 0 } + ] + }, + "butt": { + "translate": [ + { "time": 0, "x": 0, "y": 0 }, + { "time": 0.7666, "x": 9.88, "y": -25.41 }, + { "time": 0.8333, "x": 15.89, "y": -41.88 }, + { "time": 1.2333, "x": -12.49, "y": -32.99 }, + { "time": 1.7999, "x": 0, "y": 0 } + ] + } + }, + "deform": { + "default": { + "back leg": { + "back leg": [ + { "time": 0.3 }, + { + "time": 0.3333, + "offset": 68, + "vertices": [ -1.72897, 2.75445, -1.52529, 2.94189, 0.0625, 3.6552, 0.01776, 3.65397, 0, 0, 0, 0, 0, 0, 0.0625, 3.6552, 0.01776, 3.65397, 0.90136, 3.54112, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.98724, -1.57397, -0.03338, -2.08873, -0.0108, -2.08799, -0.51434, -2.02362, 0.98724, -1.57397, 0.87167, -1.68002, -0.03338, -2.08873, -0.0108, -2.08799 ] + }, + { "time": 0.4666, "curve": "stepped" }, + { "time": 1.3333 }, + { + "time": 1.4333, + "offset": 110, + "vertices": [ 2.52801, 0.00428, -0.03569, -4.90118, -3.71691, -3.19396, -4.88018, -0.43807, 5.17279, -0.0625, 5.1499, -0.47689, -0.07238, -10.06842, -7.6351, -6.56072, 6.64205, -0.09958, 6.61151, -0.62642, -0.09275, -12.93914, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -0.01242, -1.65533, -1.25543, -1.0787, 0.86096, 0.02682, -0.01242, -1.65533, -1.25543, -1.0787 ] + }, + { "time": 1.5 } + ] + }, + "back leg path": { + "back leg path": [ + { "time": 1.4333 }, + { + "time": 1.5, + "vertices": [ 4.67718, -35.44354, 0, 0, -11.37145, 49.53738, -20.9989, -109.72335, 65.45837, -90.53627, -9.56652, -24.74755, 11.45202, -23.93551, -19.07189, 47.32281, -47.53955, 18.58409, 34.69244, -51.5341, 0, 0, 13.30163, -100.17205 ] + }, + { + "time": 1.5666, + "vertices": [ -0.9635, -22.43963, 0, 0, -13.80389, 27.61459, -41.00646, -55.15969, 7.62652, -96.25755, -24.12603, -24.11285, 7.19531, -37.8742, -31.47302, 7.7796, -12.34545, -3.32328, 26.55981, -38.73887, 0, 0, -13.62084, -280.84912 ] + }, + { "time": 1.6666 } + ] + }, + "body": { + "body": [ + { "time": 0 }, + { + "time": 0.3333, + "offset": 164, + "vertices": [ -0.01179, 0.02892, 0.00916, 0.0298, 0, 0, 1.17781, 0.89835, 1.48062, -0.04942, -6.68858, -1.30628, 4.38937, 4.03925, 4.59583, 3.27733, 5.6365, -0.11034, -4.92264, -0.8036, 4.54262, 1.06504, 3.29334, 0.58413, 2.94213, -1.40271, -4.28854, -0.56444, 5.07102, -0.21189, 2.9589, -0.75665, 1.83513, -2.22983, -4.31061, 0.62609, 6.11537, -0.87568, 3.79229, -1.67126, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.17403, 0.22007, 0.27403, 0.06015 ] + }, + { + "time": 0.5333, + "offset": 164, + "vertices": [ -0.01886, 0.04627, 0.01467, 0.04768, 0, 0, 1.88449, 1.43737, 2.369, -0.07907, 1.46056, -1.33222, -0.75053, -3.73339, -2.82319, -2.55492, -3.80252, -0.19385, 2.81923, -1.5031, -0.33162, -6.7565, -4.28408, -5.23484, -6.6292, -1.34549, 3.83378, -1.12044, 0.51381, -8.79961, -4.81917, -7.38011, -8.40039, -2.66888, 3.83378, -1.12044, 0.51381, -8.79961, -4.81917, -7.38011, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.27845, 0.35211, 0.43846, 0.09625 ] + }, + { + "time": 0.6333, + "offset": 170, + "vertices": [ -2.09907, 0.0496, -1.943, 1.46153, 1.74966, 0.25744, 0.37649, -3.44555, -2.34342, -2.73068, -3.66285, -0.53692, 0, 0, 0, 0, 0, 0, 0, 0, 1.91689, -0.56022, 0.2569, -4.3998, -2.40958, -3.69005, -4.2002, -1.33444, 1.91689, -0.56022, 0.2569, -4.3998, -2.40958, -3.69005, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -0.66468, 1.2535, 0.05176, 1.41789 ] + }, + { "time": 0.7333 }, + { + "time": 0.7666, + "offset": 264, + "vertices": [ -2.27499, -1.60417, -2.23925, -1.6137, -2.2196, -1.74293, -1.80918, 2.86346, -1.11117, 2.36199, -1.14221, 2.359, 2.63101, 1.41101, 2.63215, 1.41741, -0.81469, 8.46568, 9.4562, 1.07873, 9.45622, 1.08001, -1.00012, 6.23983, 6.96737, 1.29986, 6.9674, 1.30218, -0.68823, 4.24005, 4.7344, 0.89532, 4.73448, 0.89593, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.05484, 2.78092, 0.01666, 2.78222, 3.10775, -0.05572, 3.10798, -0.05426, -1.17971, 2.87597, -0.99005, 3.55937, 3.97198, 1.27319, 3.97207, 1.27423, -2.74237, 3.14401 ] + }, + { "time": 0.8333, "curve": "stepped" }, + { "time": 1.0666 }, + { + "time": 1.3333, + "offset": 142, + "vertices": [ 4.0227, -1.7984, 0.00683, -4.47886, -0.46118, -4.45536, -0.27441, -4.47041, 4.0227, -1.7984, 0.00683, -4.47886, -0.46118, -4.45536, -0.27441, -4.47041, 0.00683, -4.47886, -0.46118, -4.45536, -0.27441, -4.47041, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4.0227, -1.7984, 0.00683, -4.47886, -0.46118, -4.45536, -0.27441, -4.47041, 4.0227, -1.7984, 0.00683, -4.47886, -0.46118, -4.45536, -0.27441, -4.47041, 4.0227, -1.7984, 0.00683, -4.47886, -0.46118, -4.45536, -0.27441, -4.47041, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4.0227, -1.7984, 0.00683, -4.47886, -0.46118, -4.45536, -0.27441, -4.47041, 4.0227, -1.7984, 0.00683, -4.47886, -0.46118, -4.45536, -0.27441, -4.47041, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4.0227, -1.7984, 0.00683, -4.47886, -0.46118, -4.45536, -0.27441, -4.47041 ] + }, + { "time": 1.4333 } + ] + }, + "front leg path": { + "front leg path": [ + { "time": 0.5666 }, + { + "time": 0.6333, + "vertices": [ 0.16365, -9.90768, 0, 0, -1.90419, 16.99049, 16.55858, -93.67209, 21.4361, -76.03694, -0.72391, -31.37989, 8.21379, -30.29725, -24.90732, 16.177, -28.83566, 5.62575, 82.90021, -63.82897, 0, 0, -39.50021, -13.99932 ] + }, + { + "time": 0.6999, + "vertices": [ 0.20397, -12.34891, 0, 0, -2.37338, 21.17691, 20.63858, -116.75268, 26.71791, -94.77227, -0.90228, -39.11182, 10.23765, -37.76242, -31.04443, 20.16297, -35.9407, 7.01193, 22.68159, 24.72714, 0, 0, -292.39255, -342.79443 ] + }, + { "time": 0.8 } + ] + } + } + } + } +} +} \ No newline at end of file diff --git a/spine-starling/spine-starling-example/src/stretchyman.png b/spine-starling/spine-starling-example/src/stretchyman.png new file mode 100644 index 0000000000000000000000000000000000000000..106a42a6785820bc494fa37f281cd401634402b2 GIT binary patch literal 134187 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 {yQy@zOBPO5fZ| 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 JRmzxz{4Yy5xR(F` literal 0 HcmV?d00001