Ver código fonte

[runtimes] Fixed and updated example exports with 4.1.04-beta

- Fixed SkeletonBinary.ts
- Updated dragon example to use sequences
badlogic 3 anos atrás
pai
commit
a0f1ed1b9b
100 arquivos alterados com 1907 adições e 1915 exclusões
  1. 10 10
      examples/alien/export/alien-ess.json
  2. BIN
      examples/alien/export/alien-ess.skel
  3. BIN
      examples/alien/export/alien-pma.png
  4. 69 67
      examples/alien/export/alien-pro.json
  5. BIN
      examples/alien/export/alien-pro.skel
  6. BIN
      examples/alien/export/alien.png
  7. 2 2
      examples/coin/export/coin-pro.json
  8. BIN
      examples/coin/export/coin-pro.skel
  9. BIN
      examples/dragon/dragon-ess.spine
  10. 49 69
      examples/dragon/export/dragon-ess.json
  11. BIN
      examples/dragon/export/dragon-ess.skel
  12. 77 60
      examples/dragon/export/dragon-pma.atlas
  13. BIN
      examples/dragon/export/dragon-pma.png
  14. BIN
      examples/dragon/export/dragon-pma_2.png
  15. BIN
      examples/dragon/export/dragon-pma_3.png
  16. BIN
      examples/dragon/export/dragon-pma_4.png
  17. BIN
      examples/dragon/export/dragon-pma_5.png
  18. BIN
      examples/dragon/export/dragon-pma_6.png
  19. 73 60
      examples/dragon/export/dragon.atlas
  20. BIN
      examples/dragon/export/dragon.png
  21. BIN
      examples/dragon/export/dragon_2.png
  22. BIN
      examples/dragon/export/dragon_3.png
  23. BIN
      examples/dragon/export/dragon_4.png
  24. BIN
      examples/dragon/export/dragon_5.png
  25. BIN
      examples/dragon/export/dragon_6.png
  26. BIN
      examples/dragon/images/left-wing01.png
  27. BIN
      examples/dragon/images/left-wing02.png
  28. BIN
      examples/dragon/images/left-wing03.png
  29. BIN
      examples/dragon/images/left-wing04.png
  30. BIN
      examples/dragon/images/left-wing05.png
  31. BIN
      examples/dragon/images/left-wing06.png
  32. BIN
      examples/dragon/images/left-wing07.png
  33. BIN
      examples/dragon/images/left-wing08.png
  34. BIN
      examples/dragon/images/left-wing09.png
  35. BIN
      examples/dragon/images/right-wing01.png
  36. BIN
      examples/dragon/images/right-wing02.png
  37. BIN
      examples/dragon/images/right-wing03.png
  38. BIN
      examples/dragon/images/right-wing04.png
  39. BIN
      examples/dragon/images/right-wing05.png
  40. BIN
      examples/dragon/images/right-wing06.png
  41. BIN
      examples/dragon/images/right-wing07.png
  42. BIN
      examples/dragon/images/right-wing08.png
  43. BIN
      examples/dragon/images/right-wing09.png
  44. 6 143
      examples/export/runtimes.sh
  45. 3 3
      examples/goblins/export/goblins-ess.json
  46. BIN
      examples/goblins/export/goblins-ess.skel
  47. 304 282
      examples/goblins/export/goblins-pro.json
  48. BIN
      examples/goblins/export/goblins-pro.skel
  49. 2 2
      examples/hero/export/hero-ess.json
  50. BIN
      examples/hero/export/hero-ess.skel
  51. 548 498
      examples/hero/export/hero-pro.json
  52. BIN
      examples/hero/export/hero-pro.skel
  53. BIN
      examples/mix-and-match/export/mix-and-match-pma.png
  54. 20 20
      examples/mix-and-match/export/mix-and-match-pro.json
  55. BIN
      examples/mix-and-match/export/mix-and-match-pro.skel
  56. BIN
      examples/mix-and-match/export/mix-and-match.png
  57. BIN
      examples/owl/export/owl-pma.png
  58. 8 11
      examples/owl/export/owl-pro.json
  59. BIN
      examples/owl/export/owl-pro.skel
  60. BIN
      examples/owl/export/owl.png
  61. 2 2
      examples/powerup/export/powerup-ess.json
  62. BIN
      examples/powerup/export/powerup-ess.skel
  63. 51 49
      examples/powerup/export/powerup-pro.json
  64. BIN
      examples/powerup/export/powerup-pro.skel
  65. BIN
      examples/raptor/export/raptor-pma.png
  66. 4 4
      examples/raptor/export/raptor-pro.json
  67. BIN
      examples/raptor/export/raptor-pro.skel
  68. BIN
      examples/raptor/export/raptor.png
  69. 2 2
      examples/speedy/export/speedy-ess.json
  70. BIN
      examples/speedy/export/speedy-ess.skel
  71. 3 3
      examples/spineboy/export/spineboy-ess.json
  72. BIN
      examples/spineboy/export/spineboy-ess.skel
  73. BIN
      examples/spineboy/export/spineboy-pma.png
  74. 78 70
      examples/spineboy/export/spineboy-pro.json
  75. BIN
      examples/spineboy/export/spineboy-pro.skel
  76. BIN
      examples/spineboy/export/spineboy.png
  77. 2 2
      examples/spinosaurus/export/spinosaurus-ess.json
  78. BIN
      examples/spinosaurus/export/spinosaurus-ess.skel
  79. 140 136
      examples/stretchyman/export/stretchyman-pro.json
  80. BIN
      examples/stretchyman/export/stretchyman-pro.skel
  81. BIN
      examples/tank/export/tank-pma.png
  82. 64 60
      examples/tank/export/tank-pro.json
  83. BIN
      examples/tank/export/tank-pro.skel
  84. BIN
      examples/tank/export/tank.png
  85. 2 2
      examples/vine/export/vine-pro.json
  86. BIN
      examples/vine/export/vine-pro.skel
  87. 2 2
      examples/windmill/export/windmill-ess.json
  88. BIN
      examples/windmill/export/windmill-ess.skel
  89. BIN
      examples/windmill/export/windmill-pma.png
  90. BIN
      examples/windmill/export/windmill.png
  91. BIN
      spine-cocos2dx/example-v4/Resources/common/coin-pro.skel
  92. 304 282
      spine-cocos2dx/example-v4/Resources/common/goblins-pro.json
  93. BIN
      spine-cocos2dx/example-v4/Resources/common/mix-and-match-pro.skel
  94. BIN
      spine-cocos2dx/example-v4/Resources/common/mix-and-match.png
  95. 4 4
      spine-cocos2dx/example-v4/Resources/common/raptor-pro.json
  96. BIN
      spine-cocos2dx/example-v4/Resources/common/raptor.png
  97. 78 70
      spine-cocos2dx/example-v4/Resources/common/spineboy-pro.json
  98. BIN
      spine-cocos2dx/example-v4/Resources/common/spineboy.png
  99. BIN
      spine-cocos2dx/example-v4/Resources/common/tank-pro.skel
  100. BIN
      spine-cocos2dx/example-v4/Resources/common/tank.png

+ 10 - 10
examples/alien/export/alien-ess.json

@@ -1,7 +1,7 @@
 {
 "skeleton": {
-	"hash": "zgiHK9o7sFk",
-	"spine": "4.0.31",
+	"hash": "F735snjE3r4",
+	"spine": "4.1.04-beta",
 	"x": -191.3,
 	"y": -4.51,
 	"width": 365.79,
@@ -245,24 +245,24 @@
 			},
 			"eye": {
 				"attachment": [
-					{ "time": 1.3667, "name": null }
+					{ "time": 1.3667 }
 				]
 			},
 			"eye-highlight": {
 				"attachment": [
-					{ "time": 1.3667, "name": null }
+					{ "time": 1.3667 }
 				]
 			},
 			"eye-pupil": {
 				"attachment": [
-					{ "time": 1.3667, "name": null }
+					{ "time": 1.3667 }
 				]
 			},
 			"head": {
 				"attachment": [
 					{ "time": 0.2333, "name": "burst01" },
 					{ "time": 0.4667, "name": "burst02" },
-					{ "time": 1.3667, "name": null }
+					{ "time": 1.3667 }
 				]
 			},
 			"splat01": {
@@ -279,7 +279,7 @@
 					{ "time": 1.3667, "name": "splat01" },
 					{ "time": 1.5667, "name": "splat02" },
 					{ "time": 1.7333, "name": "splat03" },
-					{ "time": 1.8667, "name": null }
+					{ "time": 1.8667 }
 				]
 			}
 		},
@@ -739,7 +739,7 @@
 		"slots": {
 			"eye-highlight": {
 				"attachment": [
-					{ "name": null }
+					{}
 				]
 			}
 		},
@@ -853,7 +853,7 @@
 		"slots": {
 			"eye-highlight": {
 				"attachment": [
-					{ "name": null }
+					{}
 				]
 			}
 		},
@@ -1037,7 +1037,7 @@
 		"slots": {
 			"eye-highlight": {
 				"attachment": [
-					{ "name": null }
+					{}
 				]
 			}
 		},

BIN
examples/alien/export/alien-ess.skel


BIN
examples/alien/export/alien-pma.png


Diferenças do arquivo suprimidas por serem muito extensas
+ 69 - 67
examples/alien/export/alien-pro.json


BIN
examples/alien/export/alien-pro.skel


BIN
examples/alien/export/alien.png


+ 2 - 2
examples/coin/export/coin-pro.json

@@ -1,7 +1,7 @@
 {
 "skeleton": {
-	"hash": "svidebPqqeg",
-	"spine": "4.0.31",
+	"hash": "5q2VQysgSd0",
+	"spine": "4.1.04-beta",
 	"x": -152.5,
 	"y": -151,
 	"width": 305,

BIN
examples/coin/export/coin-pro.skel


BIN
examples/dragon/dragon-ess.spine


+ 49 - 69
examples/dragon/export/dragon-ess.json

@@ -1,13 +1,13 @@
 {
 "skeleton": {
-	"hash": "UIFpNNbbcQI",
-	"spine": "4.0.31",
+	"hash": "aPoA1GjXkVI",
+	"spine": "4.1.04-beta",
 	"x": -366.31,
-	"y": -286.62,
+	"y": -327.81,
 	"width": 660.39,
-	"height": 604.09,
+	"height": 643,
 	"images": "./images/",
-	"audio": ""
+	"audio": "././"
 },
 "bones": [
 	{ "name": "root", "y": -176.12 },
@@ -297,7 +297,7 @@
 "slots": [
 	{ "name": "left-rear-leg", "bone": "left-rear-leg", "attachment": "left-rear-leg" },
 	{ "name": "left-rear-thigh", "bone": "left-rear-thigh", "attachment": "left-rear-thigh" },
-	{ "name": "left-wing", "bone": "left-wing", "attachment": "left-wing01" },
+	{ "name": "left-wing", "bone": "left-wing", "attachment": "left-wing" },
 	{ "name": "tail6", "bone": "tail6", "attachment": "tail06" },
 	{ "name": "tail5", "bone": "tail5", "attachment": "tail05" },
 	{ "name": "tail4", "bone": "tail4", "attachment": "tail04" },
@@ -323,7 +323,7 @@
 	{ "name": "right-front-toe2", "bone": "right-front-toe2", "attachment": "front-toe-b" },
 	{ "name": "right-front-toe3", "bone": "right-front-toe3", "attachment": "front-toe-b" },
 	{ "name": "chin", "bone": "chin", "attachment": "chin" },
-	{ "name": "right-wing", "bone": "right-wing", "attachment": "right-wing01" },
+	{ "name": "right-wing", "bone": "right-wing", "attachment": "right-wing" },
 	{ "name": "head", "bone": "head", "attachment": "head" },
 	{ "name": "thiagobrayner", "bone": "root", "attachment": "thiagobrayner" }
 ],
@@ -376,15 +376,14 @@
 				"left-rear-thigh": { "x": 56.03, "y": 27.39, "rotation": 74.94, "width": 91, "height": 149 }
 			},
 			"left-wing": {
-				"left-wing01": { "x": 129.21, "y": -45.49, "rotation": -83.7, "width": 191, "height": 256 },
-				"left-wing02": { "x": 126.38, "y": -31.69, "rotation": -86.19, "width": 179, "height": 269 },
-				"left-wing03": { "x": 110.27, "y": -90.89, "rotation": -86.19, "width": 186, "height": 207 },
-				"left-wing04": { "x": -61.62, "y": -83.27, "rotation": -86.19, "width": 188, "height": 135 },
-				"left-wing05": { "x": -90.02, "y": -78.14, "rotation": -86.19, "width": 218, "height": 213 },
-				"left-wing06": { "x": -143.77, "y": -83.72, "rotation": -86.19, "width": 192, "height": 331 },
-				"left-wing07": { "x": -133.05, "y": -33.9, "rotation": -86.19, "width": 159, "height": 255 },
-				"left-wing08": { "x": 50.15, "y": -15.71, "rotation": -86.19, "width": 164, "height": 181 },
-				"left-wing09": { "x": 85.94, "y": -11.33, "rotation": -86.19, "width": 204, "height": 167 }
+				"left-wing": {
+					"x": -36.32,
+					"y": -44.53,
+					"rotation": -83.7,
+					"width": 264,
+					"height": 589,
+					"sequence": { "count": 9, "digits": 2 }
+				}
 			},
 			"right-front-leg": {
 				"right-front-leg": { "x": 17.8, "y": 4.23, "rotation": 37.63, "width": 101, "height": 89 }
@@ -417,15 +416,14 @@
 				"right-rear-toe": { "x": 47.46, "y": -7.64, "rotation": 134.34, "width": 109, "height": 77 }
 			},
 			"right-wing": {
-				"right-wing01": { "x": 170.08, "y": -23.68, "rotation": -130.34, "width": 219, "height": 310 },
-				"right-wing02": { "x": 171.15, "y": -19.33, "rotation": -130.34, "width": 203, "height": 305 },
-				"right-wing03": { "x": 166.46, "y": 29.24, "rotation": -130.34, "width": 272, "height": 247 },
-				"right-wing04": { "x": 42.94, "y": 134.06, "rotation": -130.34, "width": 279, "height": 144 },
-				"right-wing05": { "x": -8.84, "y": 142.59, "rotation": -130.34, "width": 251, "height": 229 },
-				"right-wing06": { "x": -123.33, "y": 111.22, "rotation": -130.34, "width": 200, "height": 366 },
-				"right-wing07": { "x": -40.17, "y": 118.03, "rotation": -130.34, "width": 200, "height": 263 },
-				"right-wing08": { "x": 48.02, "y": 28.76, "rotation": -130.34, "width": 234, "height": 254 },
-				"right-wing09": { "x": 128.1, "y": 21.13, "rotation": -130.34, "width": 248, "height": 204 }
+				"right-wing": {
+					"x": 35.09,
+					"y": 78.11,
+					"rotation": -130.34,
+					"width": 365,
+					"height": 643,
+					"sequence": { "count": 9, "digits": 2 }
+				}
 			},
 			"tail1": {
 				"tail01": { "x": 22.6, "y": -4.5, "rotation": 163.85, "width": 120, "height": 153 }
@@ -453,50 +451,6 @@
 ],
 "animations": {
 	"flying": {
-		"slots": {
-			"left-wing": {
-				"attachment": [
-					{ "time": 0.0667, "name": "left-wing02" },
-					{ "time": 0.1333, "name": "left-wing03" },
-					{ "time": 0.2, "name": "left-wing04" },
-					{ "time": 0.2667, "name": "left-wing05" },
-					{ "time": 0.3333, "name": "left-wing06" },
-					{ "time": 0.4, "name": "left-wing07" },
-					{ "time": 0.4667, "name": "left-wing08" },
-					{ "time": 0.5333, "name": "left-wing09" },
-					{ "time": 0.6, "name": "left-wing01" },
-					{ "time": 0.7333, "name": "left-wing02" },
-					{ "time": 0.8, "name": "left-wing03" },
-					{ "time": 0.8333, "name": "left-wing04" },
-					{ "time": 0.8667, "name": "left-wing05" },
-					{ "time": 0.9, "name": "left-wing06" },
-					{ "time": 0.9333, "name": "left-wing07" },
-					{ "time": 0.9667, "name": "left-wing08" },
-					{ "time": 1, "name": "left-wing01" }
-				]
-			},
-			"right-wing": {
-				"attachment": [
-					{ "time": 0.0667, "name": "right-wing02" },
-					{ "time": 0.1333, "name": "right-wing03" },
-					{ "time": 0.2, "name": "right-wing04" },
-					{ "time": 0.2667, "name": "right-wing05" },
-					{ "time": 0.3333, "name": "right-wing06" },
-					{ "time": 0.4, "name": "right-wing07" },
-					{ "time": 0.4667, "name": "right-wing08" },
-					{ "time": 0.5333, "name": "right-wing09" },
-					{ "time": 0.6, "name": "right-wing01" },
-					{ "time": 0.7333, "name": "right-wing02" },
-					{ "time": 0.8, "name": "right-wing03" },
-					{ "time": 0.8333, "name": "right-wing04" },
-					{ "time": 0.8667, "name": "right-wing05" },
-					{ "time": 0.9, "name": "right-wing06" },
-					{ "time": 0.9333, "name": "right-wing07" },
-					{ "time": 0.9667, "name": "right-wing08" },
-					{ "time": 1, "name": "right-wing01" }
-				]
-			}
-		},
 		"bones": {
 			"back": {
 				"rotate": [
@@ -1093,6 +1047,32 @@
 					{ "time": 1 }
 				]
 			}
+		},
+		"attachments": {
+			"default": {
+				"left-wing": {
+					"left-wing": {
+						"sequence": [
+							{ "mode": "loop", "delay": 0.0667 },
+							{ "time": 0.6 },
+							{ "time": 0.7333, "mode": "loop", "index": 1 },
+							{ "time": 0.8, "mode": "loop", "index": 2, "delay": 0.0333 },
+							{ "time": 0.9667, "index": 7 }
+						]
+					}
+				},
+				"right-wing": {
+					"right-wing": {
+						"sequence": [
+							{ "mode": "loop", "delay": 0.0667 },
+							{ "time": 0.6 },
+							{ "time": 0.7333, "mode": "loop", "index": 1 },
+							{ "time": 0.8, "mode": "loop", "index": 2, "delay": 0.0333 },
+							{ "time": 0.9667, "index": 7 }
+						]
+					}
+				}
+			}
 		}
 	}
 }

BIN
examples/dragon/export/dragon-ess.skel


+ 77 - 60
examples/dragon/export/dragon-pma.atlas

@@ -3,110 +3,127 @@ dragon-pma.png
 	filter: Linear, Linear
 	pma: true
 back
-	bounds: 2, 334, 190, 185
+	bounds: 564, 534, 190, 185
 chest
-	bounds: 2, 697, 136, 122
+	bounds: 2, 645, 136, 122
 chin
-	bounds: 611, 613, 214, 146
+	bounds: 140, 619, 214, 146
 front-toe-a
-	bounds: 2, 914, 29, 50
+	bounds: 2, 862, 29, 50
 	rotate: 90
 front-toe-b
-	bounds: 467, 887, 56, 57
+	bounds: 467, 835, 56, 57
+	rotate: 90
+head
+	bounds: 756, 398, 296, 260
 	rotate: 90
 left-front-leg
-	bounds: 599, 886, 84, 57
+	bounds: 599, 834, 84, 57
 left-front-thigh
-	bounds: 782, 871, 84, 72
+	bounds: 782, 819, 84, 72
 left-rear-leg
-	bounds: 465, 434, 206, 177
+	bounds: 356, 558, 206, 177
 left-rear-thigh
-	bounds: 216, 819, 91, 149
+	bounds: 216, 767, 91, 149
 	rotate: 90
 left-wing01
-	bounds: 403, 241, 191, 256
+	bounds: 2, 268, 264, 589
 	rotate: 90
 left-wing02
-	bounds: 673, 401, 179, 269
-	rotate: 90
-left-wing03
-	bounds: 194, 286, 186, 207
-	rotate: 90
-left-wing04
-	bounds: 140, 682, 188, 135
-left-wing06
-	bounds: 661, 207, 192, 331
+	bounds: 2, 2, 264, 589
 	rotate: 90
-left-wing07
-	bounds: 2, 521, 159, 255
-	rotate: 90
-left-wing08
-	bounds: 827, 582, 164, 181
-	rotate: 90
-left-wing09
-	bounds: 259, 474, 204, 167
 right-front-leg
-	bounds: 113, 821, 101, 89
+	bounds: 113, 769, 101, 89
 right-front-thigh
-	bounds: 758, 761, 108, 108
+	bounds: 758, 709, 108, 108
 right-rear-leg
-	bounds: 640, 773, 116, 100
+	bounds: 640, 721, 116, 100
 right-rear-thigh
-	bounds: 367, 794, 91, 149
+	bounds: 367, 742, 91, 149
 	rotate: 90
 right-rear-toe
-	bounds: 2, 833, 109, 77
-right-wing02
-	bounds: 635, 2, 203, 305
-	rotate: 90
-right-wing04
-	bounds: 330, 643, 279, 144
-right-wing06
-	bounds: 2, 84, 200, 366
-	rotate: 90
-right-wing07
-	bounds: 370, 39, 200, 263
-	rotate: 90
+	bounds: 2, 781, 109, 77
 tail01
-	bounds: 868, 748, 120, 153
+	bounds: 868, 696, 120, 153
 	rotate: 90
 tail02
-	bounds: 518, 789, 95, 120
+	bounds: 518, 737, 95, 120
 	rotate: 90
 tail03
-	bounds: 868, 870, 73, 92
+	bounds: 868, 818, 73, 92
 	rotate: 90
 tail04
-	bounds: 526, 887, 56, 71
+	bounds: 526, 835, 56, 71
 	rotate: 90
 tail05
-	bounds: 406, 891, 52, 59
+	bounds: 406, 839, 52, 59
 	rotate: 90
 tail06
-	bounds: 685, 875, 95, 68
+	bounds: 685, 823, 95, 68
 thiagobrayner
-	bounds: 54, 912, 350, 31
+	bounds: 54, 860, 350, 31
 
 dragon-pma_2.png
-	size: 1024, 512
+	size: 1024, 1024
 	filter: Linear, Linear
 	pma: true
-head
-	bounds: 2, 214, 296, 260
+left-wing03
+	bounds: 2, 534, 264, 589
+	rotate: 90
+left-wing04
+	bounds: 2, 268, 264, 589
 	rotate: 90
 left-wing05
-	bounds: 741, 39, 218, 213
+	bounds: 593, 209, 264, 589
+left-wing06
+	bounds: 2, 2, 264, 589
+	rotate: 90
+
+dragon-pma_3.png
+	size: 1024, 1024
+	filter: Linear, Linear
+	pma: true
+left-wing07
+	bounds: 2, 694, 264, 589
+	rotate: 90
+left-wing08
+	bounds: 2, 428, 264, 589
 	rotate: 90
+left-wing09
+	bounds: 593, 369, 264, 589
 right-wing01
-	bounds: 264, 200, 219, 310
+	bounds: 2, 2, 365, 643
+	rotate: 90
+
+dragon-pma_4.png
+	size: 1024, 1024
+	filter: Linear, Linear
+	pma: true
+right-wing02
+	bounds: 2, 369, 365, 643
 right-wing03
-	bounds: 485, 238, 272, 247
+	bounds: 369, 369, 365, 643
+right-wing04
+	bounds: 2, 2, 365, 643
 	rotate: 90
+
+dragon-pma_5.png
+	size: 1024, 1024
+	filter: Linear, Linear
+	pma: true
 right-wing05
-	bounds: 734, 259, 251, 229
+	bounds: 2, 369, 365, 643
+right-wing06
+	bounds: 369, 369, 365, 643
+right-wing07
+	bounds: 2, 2, 365, 643
 	rotate: 90
+
+dragon-pma_6.png
+	size: 1024, 1024
+	filter: Linear, Linear
+	pma: true
 right-wing08
-	bounds: 485, 2, 234, 254
-	rotate: 90
+	bounds: 2, 2, 365, 643
 right-wing09
-	bounds: 2, 8, 248, 204
+	bounds: 369, 2, 365, 643

BIN
examples/dragon/export/dragon-pma.png


BIN
examples/dragon/export/dragon-pma_2.png


BIN
examples/dragon/export/dragon-pma_3.png


BIN
examples/dragon/export/dragon-pma_4.png


BIN
examples/dragon/export/dragon-pma_5.png


BIN
examples/dragon/export/dragon-pma_6.png


+ 73 - 60
examples/dragon/export/dragon.atlas

@@ -2,109 +2,122 @@ dragon.png
 	size: 1024, 1024
 	filter: Linear, Linear
 back
-	bounds: 2, 334, 190, 185
+	bounds: 564, 534, 190, 185
 chest
-	bounds: 2, 697, 136, 122
+	bounds: 2, 645, 136, 122
 chin
-	bounds: 611, 613, 214, 146
+	bounds: 140, 619, 214, 146
 front-toe-a
-	bounds: 2, 914, 29, 50
+	bounds: 2, 862, 29, 50
 	rotate: 90
 front-toe-b
-	bounds: 467, 887, 56, 57
+	bounds: 467, 835, 56, 57
+	rotate: 90
+head
+	bounds: 756, 398, 296, 260
 	rotate: 90
 left-front-leg
-	bounds: 599, 886, 84, 57
+	bounds: 599, 834, 84, 57
 left-front-thigh
-	bounds: 782, 871, 84, 72
+	bounds: 782, 819, 84, 72
 left-rear-leg
-	bounds: 465, 434, 206, 177
+	bounds: 356, 558, 206, 177
 left-rear-thigh
-	bounds: 216, 819, 91, 149
+	bounds: 216, 767, 91, 149
 	rotate: 90
 left-wing01
-	bounds: 403, 241, 191, 256
+	bounds: 2, 268, 264, 589
 	rotate: 90
 left-wing02
-	bounds: 673, 401, 179, 269
-	rotate: 90
-left-wing03
-	bounds: 194, 286, 186, 207
-	rotate: 90
-left-wing04
-	bounds: 140, 682, 188, 135
-left-wing06
-	bounds: 661, 207, 192, 331
-	rotate: 90
-left-wing07
-	bounds: 2, 521, 159, 255
+	bounds: 2, 2, 264, 589
 	rotate: 90
-left-wing08
-	bounds: 827, 582, 164, 181
-	rotate: 90
-left-wing09
-	bounds: 259, 474, 204, 167
 right-front-leg
-	bounds: 113, 821, 101, 89
+	bounds: 113, 769, 101, 89
 right-front-thigh
-	bounds: 758, 761, 108, 108
+	bounds: 758, 709, 108, 108
 right-rear-leg
-	bounds: 640, 773, 116, 100
+	bounds: 640, 721, 116, 100
 right-rear-thigh
-	bounds: 367, 794, 91, 149
+	bounds: 367, 742, 91, 149
 	rotate: 90
 right-rear-toe
-	bounds: 2, 833, 109, 77
-right-wing02
-	bounds: 635, 2, 203, 305
-	rotate: 90
-right-wing04
-	bounds: 330, 643, 279, 144
-right-wing06
-	bounds: 2, 84, 200, 366
-	rotate: 90
-right-wing07
-	bounds: 370, 39, 200, 263
-	rotate: 90
+	bounds: 2, 781, 109, 77
 tail01
-	bounds: 868, 748, 120, 153
+	bounds: 868, 696, 120, 153
 	rotate: 90
 tail02
-	bounds: 518, 789, 95, 120
+	bounds: 518, 737, 95, 120
 	rotate: 90
 tail03
-	bounds: 868, 870, 73, 92
+	bounds: 868, 818, 73, 92
 	rotate: 90
 tail04
-	bounds: 526, 887, 56, 71
+	bounds: 526, 835, 56, 71
 	rotate: 90
 tail05
-	bounds: 406, 891, 52, 59
+	bounds: 406, 839, 52, 59
 	rotate: 90
 tail06
-	bounds: 685, 875, 95, 68
+	bounds: 685, 823, 95, 68
 thiagobrayner
-	bounds: 54, 912, 350, 31
+	bounds: 54, 860, 350, 31
 
 dragon_2.png
-	size: 1024, 512
+	size: 1024, 1024
 	filter: Linear, Linear
-head
-	bounds: 2, 214, 296, 260
+left-wing03
+	bounds: 2, 534, 264, 589
+	rotate: 90
+left-wing04
+	bounds: 2, 268, 264, 589
 	rotate: 90
 left-wing05
-	bounds: 741, 39, 218, 213
+	bounds: 593, 209, 264, 589
+left-wing06
+	bounds: 2, 2, 264, 589
+	rotate: 90
+
+dragon_3.png
+	size: 1024, 1024
+	filter: Linear, Linear
+left-wing07
+	bounds: 2, 694, 264, 589
 	rotate: 90
+left-wing08
+	bounds: 2, 428, 264, 589
+	rotate: 90
+left-wing09
+	bounds: 593, 369, 264, 589
 right-wing01
-	bounds: 264, 200, 219, 310
+	bounds: 2, 2, 365, 643
+	rotate: 90
+
+dragon_4.png
+	size: 1024, 1024
+	filter: Linear, Linear
+right-wing02
+	bounds: 2, 369, 365, 643
 right-wing03
-	bounds: 485, 238, 272, 247
+	bounds: 369, 369, 365, 643
+right-wing04
+	bounds: 2, 2, 365, 643
 	rotate: 90
+
+dragon_5.png
+	size: 1024, 1024
+	filter: Linear, Linear
 right-wing05
-	bounds: 734, 259, 251, 229
+	bounds: 2, 369, 365, 643
+right-wing06
+	bounds: 369, 369, 365, 643
+right-wing07
+	bounds: 2, 2, 365, 643
 	rotate: 90
+
+dragon_6.png
+	size: 1024, 1024
+	filter: Linear, Linear
 right-wing08
-	bounds: 485, 2, 234, 254
-	rotate: 90
+	bounds: 2, 2, 365, 643
 right-wing09
-	bounds: 2, 8, 248, 204
+	bounds: 369, 2, 365, 643

BIN
examples/dragon/export/dragon.png


BIN
examples/dragon/export/dragon_2.png


BIN
examples/dragon/export/dragon_3.png


BIN
examples/dragon/export/dragon_4.png


BIN
examples/dragon/export/dragon_5.png


BIN
examples/dragon/export/dragon_6.png


BIN
examples/dragon/images/left-wing01.png


BIN
examples/dragon/images/left-wing02.png


BIN
examples/dragon/images/left-wing03.png


BIN
examples/dragon/images/left-wing04.png


BIN
examples/dragon/images/left-wing05.png


BIN
examples/dragon/images/left-wing06.png


BIN
examples/dragon/images/left-wing07.png


BIN
examples/dragon/images/left-wing08.png


BIN
examples/dragon/images/left-wing09.png


BIN
examples/dragon/images/right-wing01.png


BIN
examples/dragon/images/right-wing02.png


BIN
examples/dragon/images/right-wing03.png


BIN
examples/dragon/images/right-wing04.png


BIN
examples/dragon/images/right-wing05.png


BIN
examples/dragon/images/right-wing06.png


BIN
examples/dragon/images/right-wing07.png


BIN
examples/dragon/images/right-wing08.png


BIN
examples/dragon/images/right-wing09.png


+ 6 - 143
examples/export/runtimes.sh

@@ -35,37 +35,8 @@ cp -f ../mix-and-match/export/*.json "$ROOT/spine-libgdx/spine-libgdx-tests/asse
 cp -f ../mix-and-match/export/*.skel "$ROOT/spine-libgdx/spine-libgdx-tests/assets/mix-and-match/"
 cp -f ../mix-and-match/export/*-pma.* "$ROOT/spine-libgdx/spine-libgdx-tests/assets/mix-and-match/"
 
-echo "spine-as3"
-rm "$ROOT/spine-as3/spine-as3-example/src/spineboy".*
-cp -f ../spineboy/export/spineboy-ess.json "$ROOT/spine-as3/spine-as3-example/src/"
-cp -f ../spineboy/export/spineboy.atlas "$ROOT/spine-as3/spine-as3-example/src/"
-cp -f ../spineboy/export/spineboy.png "$ROOT/spine-as3/spine-as3-example/src/"
-
-echo "spine-cocos2d-objc"
-rm "$ROOT/spine-cocos2d-objc/Resources/"*
-
-cp -f ../coin/export/coin-pro.json "$ROOT/spine-cocos2d-objc/Resources/"
-cp -f ../coin/export/coin.atlas "$ROOT/spine-cocos2d-objc/Resources/"
-cp -f ../coin/export/coin.png "$ROOT/spine-cocos2d-objc/Resources/"
-
-cp -f ../goblins/export/goblins-pro.json "$ROOT/spine-cocos2d-objc/Resources/"
-cp -f ../goblins/export/goblins.atlas "$ROOT/spine-cocos2d-objc/Resources/"
-cp -f ../goblins/export/goblins.png "$ROOT/spine-cocos2d-objc/Resources/"
-
-cp -f ../raptor/export/raptor-pro.json "$ROOT/spine-cocos2d-objc/Resources/"
-cp -f ../raptor/export/raptor.atlas "$ROOT/spine-cocos2d-objc/Resources/"
-cp -f ../raptor/export/raptor.png "$ROOT/spine-cocos2d-objc/Resources/"
-
-cp -f ../spineboy/export/spineboy-pro.json "$ROOT/spine-cocos2d-objc/Resources/"
-cp -f ../spineboy/export/spineboy.atlas "$ROOT/spine-cocos2d-objc/Resources/"
-cp -f ../spineboy/export/spineboy.png "$ROOT/spine-cocos2d-objc/Resources/"
-
-cp -f ../tank/export/tank-pro.json "$ROOT/spine-cocos2d-objc/Resources/"
-cp -f ../tank/export/tank.atlas "$ROOT/spine-cocos2d-objc/Resources/"
-cp -f ../tank/export/tank.png "$ROOT/spine-cocos2d-objc/Resources/"
-
 echo "spine-cocos2dx"
-rm "$ROOT/spine-cocos2dx/example/Resources/common/"*
+rm -rf "$ROOT/spine-cocos2dx/example/Resources/common/"*
 
 cp -f ../coin/export/coin-pro.skel "$ROOT/spine-cocos2dx/example/Resources/common/"
 cp -f ../coin/export/coin.atlas "$ROOT/spine-cocos2dx/example/Resources/common/"
@@ -117,79 +88,6 @@ cp -f ../mix-and-match/export/mix-and-match-pro.skel "$ROOT/spine-cocos2dx/examp
 cp -f ../mix-and-match/export/mix-and-match.atlas "$ROOT/spine-cocos2dx/example-v4/Resources/common/"
 cp -f ../mix-and-match/export/mix-and-match.png "$ROOT/spine-cocos2dx/example-v4/Resources/common/"
 
-
-echo "spine-solar2d"
-rm "$ROOT/spine-solar2d/data/"*
-cp -f ../coin/export/coin-pro.json "$ROOT/spine-solar2d/data"
-cp -f ../coin/export/coin.atlas "$ROOT/spine-solar2d/data"
-cp -f ../coin/export/coin.png "$ROOT/spine-solar2d/data"
-
-cp -f ../goblins/export/goblins-pro.json "$ROOT/spine-solar2d/data"
-cp -f ../goblins/export/goblins.atlas "$ROOT/spine-solar2d/data"
-cp -f ../goblins/export/goblins.png "$ROOT/spine-solar2d/data"
-
-cp -f ../raptor/export/raptor-pro.json "$ROOT/spine-solar2d/data"
-cp -f ../raptor/export/raptor.atlas "$ROOT/spine-solar2d/data"
-cp -f ../raptor/export/raptor.png "$ROOT/spine-solar2d/data"
-
-cp -f ../spineboy/export/spineboy-pro.json "$ROOT/spine-solar2d/data"
-cp -f ../spineboy/export/spineboy.atlas "$ROOT/spine-solar2d/data"
-cp -f ../spineboy/export/spineboy.png "$ROOT/spine-solar2d/data"
-
-cp -f ../tank/export/tank-pro.json "$ROOT/spine-solar2d/data"
-cp -f ../tank/export/tank.atlas "$ROOT/spine-solar2d/data"
-cp -f ../tank/export/tank.png "$ROOT/spine-solar2d/data"
-
-cp -f ../vine/export/vine-pro.json "$ROOT/spine-solar2d/data"
-cp -f ../vine/export/vine.atlas "$ROOT/spine-solar2d/data"
-cp -f ../vine/export/vine.png "$ROOT/spine-solar2d/data"
-
-cp -f ../stretchyman/export/stretchyman-pro.json "$ROOT/spine-solar2d/data"
-cp -f ../stretchyman/export/stretchyman.atlas "$ROOT/spine-solar2d/data"
-cp -f ../stretchyman/export/stretchyman.png "$ROOT/spine-solar2d/data"
-
-cp -f ../owl/export/owl-pro.json "$ROOT/spine-solar2d/data"
-cp -f ../owl/export/owl.atlas "$ROOT/spine-solar2d/data"
-cp -f ../owl/export/owl.png "$ROOT/spine-solar2d/data"
-
-cp -f ../mix-and-match/export/mix-and-match-pro.json "$ROOT/spine-solar2d/data"
-cp -f ../mix-and-match/export/mix-and-match.atlas "$ROOT/spine-solar2d/data"
-cp -f ../mix-and-match/export/mix-and-match.png "$ROOT/spine-solar2d/data"
-
-echo "spine-love"
-rm "$ROOT/spine-love/data/"*
-cp -f ../coin/export/coin-pro.json "$ROOT/spine-love/data"
-cp -f ../coin/export/coin.atlas "$ROOT/spine-love/data"
-cp -f ../coin/export/coin.png "$ROOT/spine-love/data"
-
-cp -f ../goblins/export/goblins-pro.json "$ROOT/spine-love/data"
-cp -f ../goblins/export/goblins.atlas "$ROOT/spine-love/data"
-cp -f ../goblins/export/goblins.png "$ROOT/spine-love/data"
-
-cp -f ../raptor/export/raptor-pro.json "$ROOT/spine-love/data"
-cp -f ../raptor/export/raptor.atlas "$ROOT/spine-love/data"
-cp -f ../raptor/export/raptor.png "$ROOT/spine-love/data"
-
-cp -f ../spineboy/export/spineboy-pro.json "$ROOT/spine-love/data"
-cp -f ../spineboy/export/spineboy.atlas "$ROOT/spine-love/data"
-cp -f ../spineboy/export/spineboy.png "$ROOT/spine-love/data"
-
-cp -f ../tank/export/tank-pro.json "$ROOT/spine-love/data"
-cp -f ../tank/export/tank.atlas "$ROOT/spine-love/data"
-cp -f ../tank/export/tank.png "$ROOT/spine-love/data"
-
-cp -f ../vine/export/vine-pro.json "$ROOT/spine-love/data"
-cp -f ../vine/export/vine.atlas "$ROOT/spine-love/data"
-cp -f ../vine/export/vine.png "$ROOT/spine-love/data"
-
-cp -f ../stretchyman/export/stretchyman-pro.json "$ROOT/spine-love/data"
-cp -f ../stretchyman/export/stretchyman.atlas "$ROOT/spine-love/data"
-cp -f ../stretchyman/export/stretchyman.png "$ROOT/spine-love/data"
-
-cp -f ../mix-and-match/export/mix-and-match-pro.json "$ROOT/spine-love/data"
-cp -f ../mix-and-match/export/mix-and-match.atlas "$ROOT/spine-love/data"
-cp -f ../mix-and-match/export/mix-and-match.png "$ROOT/spine-love/data"
-
 echo "spine-sfml-c"
 rm "$ROOT/spine-sfml/c/data/"*
 cp -f ../coin/export/coin-pro.json "$ROOT/spine-sfml/c/data/"
@@ -284,46 +182,6 @@ cp -f ../mix-and-match/export/mix-and-match-pro.skel "$ROOT/spine-sfml/cpp/data/
 cp -f ../mix-and-match/export/mix-and-match-pma.atlas "$ROOT/spine-sfml/cpp/data/"
 cp -f ../mix-and-match/export/mix-and-match-pma.png "$ROOT/spine-sfml/cpp/data/"
 
-echo "spine-starling"
-
-# Do not delete everything in src, especially goblins-mesh-starling.png/.xml
-cp -f ../coin/export/coin-pro.json "$ROOT/spine-starling/spine-starling-example/src/"
-cp -f ../coin/export/coin.atlas "$ROOT/spine-starling/spine-starling-example/src/"
-cp -f ../coin/export/coin.png "$ROOT/spine-starling/spine-starling-example/src/"
-
-cp -f ../goblins/export/goblins-pro.json "$ROOT/spine-starling/spine-starling-example/src/"
-cp -f ../goblins/export/goblins.atlas "$ROOT/spine-starling/spine-starling-example/src/"
-cp -f ../goblins/export/goblins.png "$ROOT/spine-starling/spine-starling-example/src/"
-
-cp -f ../raptor/export/raptor-pro.json "$ROOT/spine-starling/spine-starling-example/src/"
-cp -f ../raptor/export/raptor.atlas "$ROOT/spine-starling/spine-starling-example/src/"
-cp -f ../raptor/export/raptor.png "$ROOT/spine-starling/spine-starling-example/src/"
-
-cp -f ../spineboy/export/spineboy-pro.json "$ROOT/spine-starling/spine-starling-example/src/"
-cp -f ../spineboy/export/spineboy.atlas "$ROOT/spine-starling/spine-starling-example/src/"
-cp -f ../spineboy/export/spineboy.png "$ROOT/spine-starling/spine-starling-example/src/"
-
-cp -f ../tank/export/tank-pro.json "$ROOT/spine-starling/spine-starling-example/src/"
-cp -f ../tank/export/tank.atlas "$ROOT/spine-starling/spine-starling-example/src/"
-cp -f ../tank/export/tank.png "$ROOT/spine-starling/spine-starling-example/src/"
-
-cp -f ../vine/export/vine-pro.json "$ROOT/spine-starling/spine-starling-example/src/"
-cp -f ../vine/export/vine.atlas "$ROOT/spine-starling/spine-starling-example/src/"
-cp -f ../vine/export/vine.png "$ROOT/spine-starling/spine-starling-example/src/"
-
-cp -f ../stretchyman/export/stretchyman-pro.json "$ROOT/spine-starling/spine-starling-example/src/"
-cp -f ../stretchyman/export/stretchyman.atlas "$ROOT/spine-starling/spine-starling-example/src/"
-cp -f ../stretchyman/export/stretchyman.png "$ROOT/spine-starling/spine-starling-example/src/"
-
-cp -f ../owl/export/owl-pro.json "$ROOT/spine-starling/spine-starling-example/src/"
-cp -f ../owl/export/owl.atlas "$ROOT/spine-starling/spine-starling-example/src/"
-cp -f ../owl/export/owl.png "$ROOT/spine-starling/spine-starling-example/src/"
-
-cp -f ../mix-and-match/export/mix-and-match-pro.json "$ROOT/spine-starling/spine-starling-example/src/"
-cp -f ../mix-and-match/export/mix-and-match-pro.skel "$ROOT/spine-starling/spine-starling-example/src/"
-cp -f ../mix-and-match/export/mix-and-match.atlas "$ROOT/spine-starling/spine-starling-example/src/"
-cp -f ../mix-and-match/export/mix-and-match.png "$ROOT/spine-starling/spine-starling-example/src/"
-
 echo "spine-ts"
 rm "$ROOT/spine-ts/spine-webgl/example/assets/"*
 cp -f ../coin/export/coin-pro.json "$ROOT/spine-ts/spine-webgl/example/assets/"
@@ -336,6 +194,11 @@ cp -f ../goblins/export/goblins-pro.skel "$ROOT/spine-ts/spine-webgl/example/ass
 cp -f ../goblins/export/goblins-pma.atlas "$ROOT/spine-ts/spine-webgl/example/assets/"
 cp -f ../goblins/export/goblins-pma.png "$ROOT/spine-ts/spine-webgl/example/assets/"
 
+cp -f ../dragon/export/dragon-ess.json "$ROOT/spine-ts/spine-webgl/example/assets/"
+cp -f ../dragon/export/dragon-ess.skel "$ROOT/spine-ts/spine-webgl/example/assets/"
+cp -f ../dragon/export/dragon-pma.atlas "$ROOT/spine-ts/spine-webgl/example/assets/"
+cp -f ../dragon/export/dragon-pma.png "$ROOT/spine-ts/spine-webgl/example/assets/"
+
 cp -f ../raptor/export/raptor-pro.json "$ROOT/spine-ts/spine-webgl/example/assets/"
 cp -f ../raptor/export/raptor-pro.skel "$ROOT/spine-ts/spine-webgl/example/assets/"
 cp -f ../raptor/export/raptor-pma.atlas "$ROOT/spine-ts/spine-webgl/example/assets/"

+ 3 - 3
examples/goblins/export/goblins-ess.json

@@ -1,7 +1,7 @@
 {
 "skeleton": {
-	"hash": "vsus27NzL88",
-	"spine": "4.0.31",
+	"hash": "djttFmlR6Co",
+	"spine": "4.1.04-beta",
 	"x": -92.53,
 	"y": -5.3,
 	"width": 234.03,
@@ -347,7 +347,7 @@
 			"eyes": {
 				"attachment": [
 					{ "time": 0.7, "name": "eyes-closed" },
-					{ "time": 0.8, "name": null }
+					{ "time": 0.8 }
 				]
 			}
 		},

BIN
examples/goblins/export/goblins-ess.skel


+ 304 - 282
examples/goblins/export/goblins-pro.json

@@ -1,7 +1,7 @@
 {
 "skeleton": {
-	"hash": "PtTAK+zF95I",
-	"spine": "4.0.31",
+	"hash": "5+0u5UUVwqA",
+	"spine": "4.1.04-beta",
 	"x": -134.12,
 	"y": -3.28,
 	"width": 266.94,
@@ -571,7 +571,7 @@
 			"eyes": {
 				"attachment": [
 					{ "time": 0.7, "name": "eyes-closed" },
-					{ "time": 0.8, "name": null }
+					{ "time": 0.8 }
 				]
 			}
 		},
@@ -899,309 +899,331 @@
 				]
 			}
 		},
-		"deform": {
+		"attachments": {
 			"default": {
 				"right-hand-item": {
-					"dagger": [
-						{
-							"offset": 26,
-							"vertices": [ 2.34755, 0.1447 ],
-							"curve": [ 0.125, 0, 0.375, 1 ]
-						},
-						{
-							"time": 0.5,
-							"offset": 8,
-							"vertices": [ -1.19415, 4.31532, 0.07279, 6.41351, 1.66048, 6.18883, 1.75233, 3.59555 ],
-							"curve": [ 0.625, 0, 0.875, 1 ]
-						},
-						{
-							"time": 1,
-							"offset": 26,
-							"vertices": [ 2.34755, 0.1447 ]
-						}
-					]
+					"dagger": {
+						"deform": [
+							{
+								"offset": 26,
+								"vertices": [ 2.34755, 0.1447 ],
+								"curve": [ 0.125, 0, 0.375, 1 ]
+							},
+							{
+								"time": 0.5,
+								"offset": 8,
+								"vertices": [ -1.19415, 4.31532, 0.07279, 6.41351, 1.66048, 6.18883, 1.75233, 3.59555 ],
+								"curve": [ 0.625, 0, 0.875, 1 ]
+							},
+							{
+								"time": 1,
+								"offset": 26,
+								"vertices": [ 2.34755, 0.1447 ]
+							}
+						]
+					}
 				}
 			},
 			"goblin": {
 				"head": {
-					"head": [
-						{
-							"curve": [ 0.127, 0, 0.15, 1 ]
-						},
-						{
-							"time": 0.2,
-							"vertices": [ -10.97827, -6.68962, -4.68015, -2.46175, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1.08534, 0.08392, -1.08534, 0.08392, -1.08534, 0.08392, 0, 0, -2.22325, 2.66465, -4.83295, 2.70085, -5.70553, -0.51941, -3.15962, -1.61502, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -6.64742, 0.81612, -11.82286, -1.34955, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1.08534, 0.08392 ],
-							"curve": [ 0.242, 0, 0.325, 1 ]
-						},
-						{
-							"time": 0.3667,
-							"vertices": [ 10.69276, 4.05949, 3.66373, 1.85427, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1.47305, 0.09018, 1.47305, 0.09018, 1.47305, 0.09018, 0, 0, 2.69653, -0.22738, 3.77135, 0.11418, 3.6893, 1.55352, 2.49595, 1.65501, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4.45881, -3.9113, 9.19594, -1.66854, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1.47305, 0.09018 ],
-							"curve": [ 0.574, 0, 0.617, 1 ]
-						},
-						{
-							"time": 0.7,
-							"vertices": [ -10.97827, -6.68962, -4.68015, -2.46175, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1.17551, -0.17183, -1.17551, -0.17183, -1.17551, -0.17183, 0, 0, -2.22325, 2.66465, -4.83295, 2.70085, -5.70553, -0.51941, -3.15962, -1.61502, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -6.64742, 0.81612, -11.82286, -1.34955, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1.17551, -0.17183 ],
-							"curve": [ 0.742, 0, 0.825, 1 ]
-						},
-						{
-							"time": 0.8667,
-							"vertices": [ 10.69276, 4.05949, 3.66373, 1.85427, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.38687, 0.08446, 0.38687, 0.08446, 0.38687, 0.08446, 0, 0, 2.69653, -0.22738, 3.77135, 0.11418, 3.6893, 1.55352, 2.49595, 1.65501, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4.45881, -3.9113, 9.19594, -1.66854, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.38687, 0.08446 ],
-							"curve": [ 0.9, 0, 0.967, 1 ]
-						},
-						{ "time": 1 }
-					]
+					"head": {
+						"deform": [
+							{
+								"curve": [ 0.127, 0, 0.15, 1 ]
+							},
+							{
+								"time": 0.2,
+								"vertices": [ -10.97827, -6.68962, -4.68015, -2.46175, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1.08534, 0.08392, -1.08534, 0.08392, -1.08534, 0.08392, 0, 0, -2.22325, 2.66465, -4.83295, 2.70085, -5.70553, -0.51941, -3.15962, -1.61502, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -6.64742, 0.81612, -11.82286, -1.34955, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1.08534, 0.08392 ],
+								"curve": [ 0.242, 0, 0.325, 1 ]
+							},
+							{
+								"time": 0.3667,
+								"vertices": [ 10.69276, 4.05949, 3.66373, 1.85427, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1.47305, 0.09018, 1.47305, 0.09018, 1.47305, 0.09018, 0, 0, 2.69653, -0.22738, 3.77135, 0.11418, 3.6893, 1.55352, 2.49595, 1.65501, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4.45881, -3.9113, 9.19594, -1.66854, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1.47305, 0.09018 ],
+								"curve": [ 0.574, 0, 0.617, 1 ]
+							},
+							{
+								"time": 0.7,
+								"vertices": [ -10.97827, -6.68962, -4.68015, -2.46175, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1.17551, -0.17183, -1.17551, -0.17183, -1.17551, -0.17183, 0, 0, -2.22325, 2.66465, -4.83295, 2.70085, -5.70553, -0.51941, -3.15962, -1.61502, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -6.64742, 0.81612, -11.82286, -1.34955, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1.17551, -0.17183 ],
+								"curve": [ 0.742, 0, 0.825, 1 ]
+							},
+							{
+								"time": 0.8667,
+								"vertices": [ 10.69276, 4.05949, 3.66373, 1.85427, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.38687, 0.08446, 0.38687, 0.08446, 0.38687, 0.08446, 0, 0, 2.69653, -0.22738, 3.77135, 0.11418, 3.6893, 1.55352, 2.49595, 1.65501, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4.45881, -3.9113, 9.19594, -1.66854, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.38687, 0.08446 ],
+								"curve": [ 0.9, 0, 0.967, 1 ]
+							},
+							{ "time": 1 }
+						]
+					}
 				},
 				"left-foot": {
-					"left-foot": [
-						{
-							"offset": 8,
-							"vertices": [ 3.69298, 2.37573, -7.16969, 18.79733, -12.78162, 14.7778, -12.75776, 6.50514, -3.13476, 1.98906, -0.44402, 0.36629, 0, 0, -3.80085, 2.98474 ]
-						},
-						{ "time": 0.1333 },
-						{
-							"time": 0.2333,
-							"offset": 8,
-							"vertices": [ -3.96073, -2.34594, -5.80446, -12.47629, -2.2313, -12.99038, 2.02942, -9.1036, 0, 0, 0, 0, 0, 0, -1.35254, -5.2883 ]
-						},
-						{
-							"time": 0.3667,
-							"offset": 8,
-							"vertices": [ 0.66505, 0.33548, 0.33902, 2.69014, -0.48171, 2.54524, -1.13593, 1.38562, 0, 0, 0, 0, 0, 0, -0.11908, 0.79273 ]
-						},
-						{ "time": 0.5, "curve": "stepped" },
-						{ "time": 0.6333 },
-						{
-							"time": 0.7333,
-							"offset": 8,
-							"vertices": [ -2.97738, 9.40254, -6.91661, 19.92794, -10.55287, 18.41085, -12.37161, 12.38473, -4.72607, 6.30799, 0, 0, -1.48902, 4.88944, -7.06773, 10.70102 ]
-						},
-						{
-							"time": 0.8333,
-							"offset": 6,
-							"vertices": [ 1.05319, 1.56362, -2.52723, 7.9974, -5.52031, 17.14137, -8.93317, 15.79635, -10.73748, 10.22056, -4.23801, 5.36992, 0, 0, 0, 0, -5.83148, 8.55532 ]
-						},
-						{
-							"time": 1,
-							"offset": 8,
-							"vertices": [ 3.69298, 2.37573, -7.16969, 18.79733, -12.78162, 14.7778, -12.75776, 6.50514, -3.13476, 1.98906, -0.44402, 0.36629, 0, 0, -3.80085, 2.98474 ]
-						}
-					]
+					"left-foot": {
+						"deform": [
+							{
+								"offset": 8,
+								"vertices": [ 3.69298, 2.37573, -7.16969, 18.79733, -12.78162, 14.7778, -12.75776, 6.50514, -3.13476, 1.98906, -0.44402, 0.36629, 0, 0, -3.80085, 2.98474 ]
+							},
+							{ "time": 0.1333 },
+							{
+								"time": 0.2333,
+								"offset": 8,
+								"vertices": [ -3.96073, -2.34594, -5.80446, -12.47629, -2.2313, -12.99038, 2.02942, -9.1036, 0, 0, 0, 0, 0, 0, -1.35254, -5.2883 ]
+							},
+							{
+								"time": 0.3667,
+								"offset": 8,
+								"vertices": [ 0.66505, 0.33548, 0.33902, 2.69014, -0.48171, 2.54524, -1.13593, 1.38562, 0, 0, 0, 0, 0, 0, -0.11908, 0.79273 ]
+							},
+							{ "time": 0.5, "curve": "stepped" },
+							{ "time": 0.6333 },
+							{
+								"time": 0.7333,
+								"offset": 8,
+								"vertices": [ -2.97738, 9.40254, -6.91661, 19.92794, -10.55287, 18.41085, -12.37161, 12.38473, -4.72607, 6.30799, 0, 0, -1.48902, 4.88944, -7.06773, 10.70102 ]
+							},
+							{
+								"time": 0.8333,
+								"offset": 6,
+								"vertices": [ 1.05319, 1.56362, -2.52723, 7.9974, -5.52031, 17.14137, -8.93317, 15.79635, -10.73748, 10.22056, -4.23801, 5.36992, 0, 0, 0, 0, -5.83148, 8.55532 ]
+							},
+							{
+								"time": 1,
+								"offset": 8,
+								"vertices": [ 3.69298, 2.37573, -7.16969, 18.79733, -12.78162, 14.7778, -12.75776, 6.50514, -3.13476, 1.98906, -0.44402, 0.36629, 0, 0, -3.80085, 2.98474 ]
+							}
+						]
+					}
 				},
 				"pelvis": {
-					"pelvis": [
-						{},
-						{
-							"time": 0.1333,
-							"offset": 6,
-							"vertices": [ -0.6899, -4.13284 ]
-						},
-						{
-							"time": 0.3333,
-							"offset": 6,
-							"vertices": [ -1.04945, -3.10477 ]
-						},
-						{
-							"time": 0.7,
-							"offset": 6,
-							"vertices": [ -1.4245, -6.30617 ]
-						},
-						{
-							"time": 0.8667,
-							"offset": 6,
-							"vertices": [ -1.13542, -1.79036 ]
-						},
-						{ "time": 1 }
-					]
+					"pelvis": {
+						"deform": [
+							{},
+							{
+								"time": 0.1333,
+								"offset": 6,
+								"vertices": [ -0.6899, -4.13284 ]
+							},
+							{
+								"time": 0.3333,
+								"offset": 6,
+								"vertices": [ -1.04945, -3.10477 ]
+							},
+							{
+								"time": 0.7,
+								"offset": 6,
+								"vertices": [ -1.4245, -6.30617 ]
+							},
+							{
+								"time": 0.8667,
+								"offset": 6,
+								"vertices": [ -1.13542, -1.79036 ]
+							},
+							{ "time": 1 }
+						]
+					}
 				},
 				"right-foot": {
-					"right-foot": [
-						{},
-						{
-							"time": 0.1333,
-							"offset": 2,
-							"vertices": [ -2.81259, 2.63115, -2.35238, 3.89441, -1.99921, 4.8639, -0.93273, 5.57982, -0.48886, 5.09855, -0.34813, 3.42912, -0.17446, 1.36899, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1.31305, 1.91372, -1.32986, 3.65703 ]
-						},
-						{
-							"time": 0.2333,
-							"offset": 2,
-							"vertices": [ -6.39088, 6.41246, -7.74575, 8.27192, -7.02471, 11.35894, -4.03471, 13.93454, -2.50399, 12.62963, -1.46125, 7.58915, -0.17446, 1.36899, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -3.84766, 2.61216, -4.53956, 7.92358 ]
-						},
-						{
-							"time": 0.3,
-							"offset": 2,
-							"vertices": [ -8.27185, 6.68822, -9.29764, 10.13797, -8.62231, 14.7134, -4.5863, 18.81939, -2.20304, 17.10709, -0.07795, 9.9046, 2.54452, 1.01642, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -2.94625, 2.38008, -4.59399, 10.01888 ]
-						},
-						{
-							"time": 0.3667,
-							"offset": 2,
-							"vertices": [ -10.47684, 9.44176, -13.36883, 12.40983, -14.32569, 16.94392, -9.24463, 23.55674, -5.51712, 21.51378, -1.19582, 11.53193, 2.54452, 1.01642, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -4.14848, 2.29389, -6.63419, 11.37127 ]
-						},
-						{
-							"time": 0.5,
-							"offset": 2,
-							"vertices": [ -5.42474, 4.36854, -10.59004, 7.04468, -11.64251, 11.55845, -6.19665, 20.12806, -1.45498, 18.05411, 4.8662, 6.41679, 2.81463, 0.27601, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -2.96412, 4.9483 ]
-						},
-						{ "time": 0.6333 },
-						{
-							"time": 0.7333,
-							"offset": 4,
-							"vertices": [ 1.31462, -6.84099, -0.87905, -12.54479, -5.9851, -14.08368, -7.15892, -11.63194, -5.6792, -4.83545, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -2.06164, -6.93844 ]
-						},
-						{
-							"time": 0.8,
-							"offset": 4,
-							"vertices": [ 0.65731, -3.4205, -0.43953, -6.2724, -2.99255, -7.04184, -3.57946, -5.81597, -2.8396, -2.41772, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2.79688, -1.28021, 0, 0, 0, 0, -1.03082, -3.46922 ]
-						},
-						{ "time": 0.8667 }
-					]
+					"right-foot": {
+						"deform": [
+							{},
+							{
+								"time": 0.1333,
+								"offset": 2,
+								"vertices": [ -2.81259, 2.63115, -2.35238, 3.89441, -1.99921, 4.8639, -0.93273, 5.57982, -0.48886, 5.09855, -0.34813, 3.42912, -0.17446, 1.36899, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1.31305, 1.91372, -1.32986, 3.65703 ]
+							},
+							{
+								"time": 0.2333,
+								"offset": 2,
+								"vertices": [ -6.39088, 6.41246, -7.74575, 8.27192, -7.02471, 11.35894, -4.03471, 13.93454, -2.50399, 12.62963, -1.46125, 7.58915, -0.17446, 1.36899, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -3.84766, 2.61216, -4.53956, 7.92358 ]
+							},
+							{
+								"time": 0.3,
+								"offset": 2,
+								"vertices": [ -8.27185, 6.68822, -9.29764, 10.13797, -8.62231, 14.7134, -4.5863, 18.81939, -2.20304, 17.10709, -0.07795, 9.9046, 2.54452, 1.01642, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -2.94625, 2.38008, -4.59399, 10.01888 ]
+							},
+							{
+								"time": 0.3667,
+								"offset": 2,
+								"vertices": [ -10.47684, 9.44176, -13.36883, 12.40983, -14.32569, 16.94392, -9.24463, 23.55674, -5.51712, 21.51378, -1.19582, 11.53193, 2.54452, 1.01642, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -4.14848, 2.29389, -6.63419, 11.37127 ]
+							},
+							{
+								"time": 0.5,
+								"offset": 2,
+								"vertices": [ -5.42474, 4.36854, -10.59004, 7.04468, -11.64251, 11.55845, -6.19665, 20.12806, -1.45498, 18.05411, 4.8662, 6.41679, 2.81463, 0.27601, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -2.96412, 4.9483 ]
+							},
+							{ "time": 0.6333 },
+							{
+								"time": 0.7333,
+								"offset": 4,
+								"vertices": [ 1.31462, -6.84099, -0.87905, -12.54479, -5.9851, -14.08368, -7.15892, -11.63194, -5.6792, -4.83545, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -2.06164, -6.93844 ]
+							},
+							{
+								"time": 0.8,
+								"offset": 4,
+								"vertices": [ 0.65731, -3.4205, -0.43953, -6.2724, -2.99255, -7.04184, -3.57946, -5.81597, -2.8396, -2.41772, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2.79688, -1.28021, 0, 0, 0, 0, -1.03082, -3.46922 ]
+							},
+							{ "time": 0.8667 }
+						]
+					}
 				},
 				"right-hand": {
-					"right-hand": [
-						{
-							"offset": 4,
-							"vertices": [ -1.48417, 0.34736, 0, 0, 1.31152, 0.08085, 1.60296, 0.09882, 0.13673, 0.15471, 0, 0, 0, 0, -0.72862, -0.0449 ]
-						},
-						{ "time": 0.5 },
-						{
-							"time": 1,
-							"offset": 4,
-							"vertices": [ -1.48417, 0.34736, 0, 0, 1.31152, 0.08085, 1.60296, 0.09882, 0.13673, 0.15471, 0, 0, 0, 0, -0.72862, -0.0449 ]
-						}
-					]
+					"right-hand": {
+						"deform": [
+							{
+								"offset": 4,
+								"vertices": [ -1.48417, 0.34736, 0, 0, 1.31152, 0.08085, 1.60296, 0.09882, 0.13673, 0.15471, 0, 0, 0, 0, -0.72862, -0.0449 ]
+							},
+							{ "time": 0.5 },
+							{
+								"time": 1,
+								"offset": 4,
+								"vertices": [ -1.48417, 0.34736, 0, 0, 1.31152, 0.08085, 1.60296, 0.09882, 0.13673, 0.15471, 0, 0, 0, 0, -0.72862, -0.0449 ]
+							}
+						]
+					}
 				},
 				"right-lower-leg": {
-					"right-lower-leg": [
-						{},
-						{
-							"time": 0.6,
-							"offset": 6,
-							"vertices": [ 1.80396, -1.56553 ]
-						},
-						{ "time": 1 }
-					]
+					"right-lower-leg": {
+						"deform": [
+							{},
+							{
+								"time": 0.6,
+								"offset": 6,
+								"vertices": [ 1.80396, -1.56553 ]
+							},
+							{ "time": 1 }
+						]
+					}
 				},
 				"right-upper-leg": {
-					"right-upper-leg": [
-						{
-							"vertices": [ -6.03857, -1.46325, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -0.34685, -1.93102, -1.86047, -5.05266, -2.5014, -3.09985 ]
-						},
-						{ "time": 0.3333 },
-						{
-							"time": 0.8667,
-							"offset": 14,
-							"vertices": [ 0.13425, -2.35378, -1.33318, -5.99573, -1.35862, -4.43324 ]
-						},
-						{
-							"time": 1,
-							"vertices": [ -6.03857, -1.46325, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -0.34685, -1.93102, -1.86047, -5.05266, -2.5014, -3.09985 ]
-						}
-					]
+					"right-upper-leg": {
+						"deform": [
+							{
+								"vertices": [ -6.03857, -1.46325, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -0.34685, -1.93102, -1.86047, -5.05266, -2.5014, -3.09985 ]
+							},
+							{ "time": 0.3333 },
+							{
+								"time": 0.8667,
+								"offset": 14,
+								"vertices": [ 0.13425, -2.35378, -1.33318, -5.99573, -1.35862, -4.43324 ]
+							},
+							{
+								"time": 1,
+								"vertices": [ -6.03857, -1.46325, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -0.34685, -1.93102, -1.86047, -5.05266, -2.5014, -3.09985 ]
+							}
+						]
+					}
 				},
 				"torso": {
-					"torso": [
-						{
-							"offset": 2,
-							"vertices": [ 0.24821, 2.86673, 0.24821, 2.86673, 0.24821, 2.86673, 0.24821, 2.86673, 0.24821, 2.86673, 0.24821, 2.86673, -1.24131, 2.62652, -2.47492, 0.71183, -0.26363, -0.5308, 0.24821, 2.86673, 0.24821, 2.86673, 0, 0, 0, 0, 0, 0, 0, 0, 1.34461, 0.25215, 0.24821, 2.86673, 0.82507, 1.61798, 0.24821, 2.86673, 0, 0, -1.86431, -0.4326, 0.24821, 2.86673 ]
-						},
-						{
-							"time": 0.1333,
-							"offset": 2,
-							"vertices": [ 0.35589, 4.10914, 0.35589, 4.10914, 0.35589, 4.10914, 0.35589, 4.10914, 0.35589, 4.10914, 0.35589, 4.10914, 1.66908, 3.51187, -0.62355, 2.47979, 1.1045, 3.49684, -1.09009, 6.08429, 0.35589, 4.10914, 0, 0, 0, 0, 0, 0, 0, 0, 3.01291, 0.15693, 0.35589, 4.10914, -1.11398, 3.7954, 0.35589, 4.10914, 0, 0, -2.96167, 0.55563, -2.20741, 4.40587 ]
-						},
-						{
-							"time": 0.3,
-							"offset": 2,
-							"vertices": [ 0.2884, 3.32948, 0.2884, 3.32948, 0.2884, 3.32948, 0.2884, 3.32948, 0.2884, 3.32948, 0.2884, 3.32948, 6.32601, 0.19387, 7.84315, 1.94837, 7.08587, 3.64119, 4.52343, 4.46961, 0.2884, 3.32948, 0, 0, 0, 0, 0, 0, 0, 0, 4.36416, -1.83876, 0.2884, 3.32948, 4.2925, 3.60194, 0.2884, 3.32948, 0, 0, 3.72601, -0.19338, 0.2884, 3.32948 ]
-						},
-						{
-							"time": 0.5,
-							"offset": 2,
-							"vertices": [ 0.3133, 3.61659, 0.3133, 3.61659, 0.3133, 3.61659, 0.3133, 3.61659, 0.3133, 3.61659, 0.3133, 3.61659, 2.57273, 2.74457, 2.88831, 3.04797, 3.48442, 3.04655, 1.80035, 4.609, 0.3133, 3.61659, 0, 0, 0, 0, 0, 0, 0, 0, 3.53782, -0.82203, 0.3133, 3.61659, 1.80022, 3.63246, 0.3133, 3.61659, 0, 0, 0.62718, 0.33564, -1.22467, 3.79463 ]
-						},
-						{
-							"time": 0.6333,
-							"offset": 2,
-							"vertices": [ 0.44398, 5.125, 0.44398, 5.125, 0.44398, 5.125, 0.44398, 5.125, 0.44398, 5.125, 0.44398, 5.125, 1.19401, 3.60798, -0.53546, 3.49565, 1.1926, 4.5127, -1.002, 7.10015, 0.44398, 5.125, 0, 0, 0, 0, 0, 0, 0, 0, 3.101, 1.17278, 0.44398, 5.125, -1.02589, 4.81126, 0.44398, 5.125, 0, 0, -2.87358, 1.57149, -2.11931, 5.42173 ]
-						},
-						{
-							"time": 0.8667,
-							"offset": 2,
-							"vertices": [ 0.30385, 3.50647, 0.30385, 3.50647, 0.30385, 3.50647, 0.30385, 3.50647, 0.30385, 3.50647, 0.30385, 3.50647, 0.92587, 2.24385, 0.68874, 1.29945, 3.55433, 3.00604, 2.71494, 5.89962, 0.30385, 3.50647, 0, 0, 0, 0, 0, 0, 0, 0, 1.96775, 0.40548, 0.30385, 3.50647, 2.6104, 2.3545, 0.30385, 3.50647, 0, 0, 0.22709, -0.12851, -0.62826, 3.61437 ]
-						},
-						{
-							"time": 1,
-							"offset": 2,
-							"vertices": [ 0.32802, 3.78826, 0.32802, 3.78826, 0.32802, 3.78826, 0.32802, 3.78826, 0.32802, 3.78826, 0.32802, 3.78826, -1.1615, 3.54805, -2.39511, 1.63336, -0.18382, 0.39073, 0.32802, 3.78826, 0.32802, 3.78826, 0, 0, 0, 0, 0, 0, 0, 0, 1.42442, 1.17368, 0.32802, 3.78826, 0.90488, 2.53951, 0.32802, 3.78826, 0, 0, -1.7845, 0.48894, 0.32802, 3.78826 ]
-						}
-					]
+					"torso": {
+						"deform": [
+							{
+								"offset": 2,
+								"vertices": [ 0.24821, 2.86673, 0.24821, 2.86673, 0.24821, 2.86673, 0.24821, 2.86673, 0.24821, 2.86673, 0.24821, 2.86673, -1.24131, 2.62652, -2.47492, 0.71183, -0.26363, -0.5308, 0.24821, 2.86673, 0.24821, 2.86673, 0, 0, 0, 0, 0, 0, 0, 0, 1.34461, 0.25215, 0.24821, 2.86673, 0.82507, 1.61798, 0.24821, 2.86673, 0, 0, -1.86431, -0.4326, 0.24821, 2.86673 ]
+							},
+							{
+								"time": 0.1333,
+								"offset": 2,
+								"vertices": [ 0.35589, 4.10914, 0.35589, 4.10914, 0.35589, 4.10914, 0.35589, 4.10914, 0.35589, 4.10914, 0.35589, 4.10914, 1.66908, 3.51187, -0.62355, 2.47979, 1.1045, 3.49684, -1.09009, 6.08429, 0.35589, 4.10914, 0, 0, 0, 0, 0, 0, 0, 0, 3.01291, 0.15693, 0.35589, 4.10914, -1.11398, 3.7954, 0.35589, 4.10914, 0, 0, -2.96167, 0.55563, -2.20741, 4.40587 ]
+							},
+							{
+								"time": 0.3,
+								"offset": 2,
+								"vertices": [ 0.2884, 3.32948, 0.2884, 3.32948, 0.2884, 3.32948, 0.2884, 3.32948, 0.2884, 3.32948, 0.2884, 3.32948, 6.32601, 0.19387, 7.84315, 1.94837, 7.08587, 3.64119, 4.52343, 4.46961, 0.2884, 3.32948, 0, 0, 0, 0, 0, 0, 0, 0, 4.36416, -1.83876, 0.2884, 3.32948, 4.2925, 3.60194, 0.2884, 3.32948, 0, 0, 3.72601, -0.19338, 0.2884, 3.32948 ]
+							},
+							{
+								"time": 0.5,
+								"offset": 2,
+								"vertices": [ 0.3133, 3.61659, 0.3133, 3.61659, 0.3133, 3.61659, 0.3133, 3.61659, 0.3133, 3.61659, 0.3133, 3.61659, 2.57273, 2.74457, 2.88831, 3.04797, 3.48442, 3.04655, 1.80035, 4.609, 0.3133, 3.61659, 0, 0, 0, 0, 0, 0, 0, 0, 3.53782, -0.82203, 0.3133, 3.61659, 1.80022, 3.63246, 0.3133, 3.61659, 0, 0, 0.62718, 0.33564, -1.22467, 3.79463 ]
+							},
+							{
+								"time": 0.6333,
+								"offset": 2,
+								"vertices": [ 0.44398, 5.125, 0.44398, 5.125, 0.44398, 5.125, 0.44398, 5.125, 0.44398, 5.125, 0.44398, 5.125, 1.19401, 3.60798, -0.53546, 3.49565, 1.1926, 4.5127, -1.002, 7.10015, 0.44398, 5.125, 0, 0, 0, 0, 0, 0, 0, 0, 3.101, 1.17278, 0.44398, 5.125, -1.02589, 4.81126, 0.44398, 5.125, 0, 0, -2.87358, 1.57149, -2.11931, 5.42173 ]
+							},
+							{
+								"time": 0.8667,
+								"offset": 2,
+								"vertices": [ 0.30385, 3.50647, 0.30385, 3.50647, 0.30385, 3.50647, 0.30385, 3.50647, 0.30385, 3.50647, 0.30385, 3.50647, 0.92587, 2.24385, 0.68874, 1.29945, 3.55433, 3.00604, 2.71494, 5.89962, 0.30385, 3.50647, 0, 0, 0, 0, 0, 0, 0, 0, 1.96775, 0.40548, 0.30385, 3.50647, 2.6104, 2.3545, 0.30385, 3.50647, 0, 0, 0.22709, -0.12851, -0.62826, 3.61437 ]
+							},
+							{
+								"time": 1,
+								"offset": 2,
+								"vertices": [ 0.32802, 3.78826, 0.32802, 3.78826, 0.32802, 3.78826, 0.32802, 3.78826, 0.32802, 3.78826, 0.32802, 3.78826, -1.1615, 3.54805, -2.39511, 1.63336, -0.18382, 0.39073, 0.32802, 3.78826, 0.32802, 3.78826, 0, 0, 0, 0, 0, 0, 0, 0, 1.42442, 1.17368, 0.32802, 3.78826, 0.90488, 2.53951, 0.32802, 3.78826, 0, 0, -1.7845, 0.48894, 0.32802, 3.78826 ]
+							}
+						]
+					}
 				},
 				"undie-straps": {
-					"undie-straps": [
-						{
-							"offset": 2,
-							"vertices": [ -1.77697, 0.5476, -0.96145, -1.03793, -0.39148, -0.24072, -1.77697, 0.5476 ]
-						},
-						{
-							"time": 0.1333,
-							"offset": 2,
-							"vertices": [ -2.25684, -1.03177, -1.49719, -4.23862, -0.7447, -2.84907, -1.90072, 0.54478 ]
-						},
-						{
-							"time": 0.3333,
-							"offset": 2,
-							"vertices": [ -2.37974, -0.05432, -0.49433, 0.19437, -0.90861, 1.16519, -1.60956, 2.70799, 0.96186, 0.80615 ]
-						},
-						{
-							"time": 0.7,
-							"offset": 2,
-							"vertices": [ -0.91715, -2.76567, -0.62215, -3.63489, -0.84941, -2.26772, -2.56077, 0.52971 ]
-						},
-						{
-							"time": 0.8667,
-							"offset": 2,
-							"vertices": [ -2.56077, 0.52971, -1.58065, 0.32031, -1.3847, 0.32476, -2.56077, 0.52971 ]
-						},
-						{
-							"time": 1,
-							"offset": 2,
-							"vertices": [ -1.77697, 0.5476, -0.80128, 0.53413, -0.80128, 0.53413, -1.77697, 0.5476 ]
-						}
-					]
+					"undie-straps": {
+						"deform": [
+							{
+								"offset": 2,
+								"vertices": [ -1.77697, 0.5476, -0.96145, -1.03793, -0.39148, -0.24072, -1.77697, 0.5476 ]
+							},
+							{
+								"time": 0.1333,
+								"offset": 2,
+								"vertices": [ -2.25684, -1.03177, -1.49719, -4.23862, -0.7447, -2.84907, -1.90072, 0.54478 ]
+							},
+							{
+								"time": 0.3333,
+								"offset": 2,
+								"vertices": [ -2.37974, -0.05432, -0.49433, 0.19437, -0.90861, 1.16519, -1.60956, 2.70799, 0.96186, 0.80615 ]
+							},
+							{
+								"time": 0.7,
+								"offset": 2,
+								"vertices": [ -0.91715, -2.76567, -0.62215, -3.63489, -0.84941, -2.26772, -2.56077, 0.52971 ]
+							},
+							{
+								"time": 0.8667,
+								"offset": 2,
+								"vertices": [ -2.56077, 0.52971, -1.58065, 0.32031, -1.3847, 0.32476, -2.56077, 0.52971 ]
+							},
+							{
+								"time": 1,
+								"offset": 2,
+								"vertices": [ -1.77697, 0.5476, -0.80128, 0.53413, -0.80128, 0.53413, -1.77697, 0.5476 ]
+							}
+						]
+					}
 				},
 				"undies": {
-					"undies": [
-						{
-							"vertices": [ 0.43099, 0.722, 10.60295, -0.117, 2.29599, 0, 2.29599, 0, 2.29599, 0, 0.58799, 0.244, -2.40018, -0.65335, -2.2782, -0.77534, 2.29599, 0, 0.58799, -0.488, 4.98698, -0.117, 6.50797, -0.23399 ]
-						},
-						{
-							"time": 0.1333,
-							"vertices": [ 0.72659, 0.4332, 7.20417, -0.1638, 1.37759, 0, 1.37759, 0, 1.37759, 0, 1.25279, 0.0464, -0.99862, -2.95085, -1.37543, -3.07404, 1.37759, 0, 0.35279, -0.2928, 2.99219, -0.0702, 3.90478, -0.1404 ]
-						},
-						{
-							"time": 0.3333,
-							"vertices": [ 1.16999, 0, 2.10599, -0.23401, 0, 0, 0, 0, 0, 0, 2.24999, -0.24999, -0.4344, 0.60551, -1.55939, 0.48051 ]
-						},
-						{
-							"time": 0.5333,
-							"vertices": [ 1.16999, 0, -0.234, -0.936, -2.92499, 0.351, 0, 0, 0, 0, 0.5, -0.24999, -0.64079, -2.07915, -0.64079, -2.07915 ]
-						},
-						{
-							"time": 0.7,
-							"vertices": [ 1.86271, -0.11514, 4.66327, -0.091, -1.76428, 0.21171, 0, 0, -0.56833, 0.32833, -1.13833, -1.15111, -2.19996, -3.47068, -1.29719, -3.47068, 0, 0, 0, 0, 1.58785, -0.04643, 2.65942, 0.16715 ]
-						},
-						{
-							"time": 0.8333,
-							"vertices": [ 2.41688, -0.20726, 8.58108, 0.585, -0.83571, 0.10029, 0, 0, -1.02299, 0.59099, -2.449, -1.872, -1.625, 0, 0, 0, 0, 0, 0, 0, 2.85813, -0.08357, 4.78695, 0.30086 ]
-						},
-						{
-							"time": 0.8667,
-							"vertices": [ 2.0197, -0.02141, 8.98546, 0.4446, -0.20937, 0.08023, 0.4592, 0, -0.3592, 0.47279, -1.8416, -1.4488, -0.79153, 1.26421, 0.53286, 1.23981, 0.4592, 0, 0.1176, -0.0976, 3.2839, -0.09025, 5.13116, 0.19389 ]
-						},
-						{
-							"time": 1,
-							"vertices": [ 0.43099, 0.722, 10.60295, -0.117, 2.29599, 0, 2.29599, 0, 2.29599, 0, 0.58799, 0.244, -2.40018, -0.65335, -2.2782, -0.77534, 2.29599, 0, 0.58799, -0.488, 4.98698, -0.117, 6.50797, -0.23399 ]
-						}
-					]
+					"undies": {
+						"deform": [
+							{
+								"vertices": [ 0.43099, 0.722, 10.60295, -0.117, 2.29599, 0, 2.29599, 0, 2.29599, 0, 0.58799, 0.244, -2.40018, -0.65335, -2.2782, -0.77534, 2.29599, 0, 0.58799, -0.488, 4.98698, -0.117, 6.50797, -0.23399 ]
+							},
+							{
+								"time": 0.1333,
+								"vertices": [ 0.72659, 0.4332, 7.20417, -0.1638, 1.37759, 0, 1.37759, 0, 1.37759, 0, 1.25279, 0.0464, -0.99862, -2.95085, -1.37543, -3.07404, 1.37759, 0, 0.35279, -0.2928, 2.99219, -0.0702, 3.90478, -0.1404 ]
+							},
+							{
+								"time": 0.3333,
+								"vertices": [ 1.16999, 0, 2.10599, -0.23401, 0, 0, 0, 0, 0, 0, 2.24999, -0.24999, -0.4344, 0.60551, -1.55939, 0.48051 ]
+							},
+							{
+								"time": 0.5333,
+								"vertices": [ 1.16999, 0, -0.234, -0.936, -2.92499, 0.351, 0, 0, 0, 0, 0.5, -0.24999, -0.64079, -2.07915, -0.64079, -2.07915 ]
+							},
+							{
+								"time": 0.7,
+								"vertices": [ 1.86271, -0.11514, 4.66327, -0.091, -1.76428, 0.21171, 0, 0, -0.56833, 0.32833, -1.13833, -1.15111, -2.19996, -3.47068, -1.29719, -3.47068, 0, 0, 0, 0, 1.58785, -0.04643, 2.65942, 0.16715 ]
+							},
+							{
+								"time": 0.8333,
+								"vertices": [ 2.41688, -0.20726, 8.58108, 0.585, -0.83571, 0.10029, 0, 0, -1.02299, 0.59099, -2.449, -1.872, -1.625, 0, 0, 0, 0, 0, 0, 0, 2.85813, -0.08357, 4.78695, 0.30086 ]
+							},
+							{
+								"time": 0.8667,
+								"vertices": [ 2.0197, -0.02141, 8.98546, 0.4446, -0.20937, 0.08023, 0.4592, 0, -0.3592, 0.47279, -1.8416, -1.4488, -0.79153, 1.26421, 0.53286, 1.23981, 0.4592, 0, 0.1176, -0.0976, 3.2839, -0.09025, 5.13116, 0.19389 ]
+							},
+							{
+								"time": 1,
+								"vertices": [ 0.43099, 0.722, 10.60295, -0.117, 2.29599, 0, 2.29599, 0, 2.29599, 0, 0.58799, 0.244, -2.40018, -0.65335, -2.2782, -0.77534, 2.29599, 0, 0.58799, -0.488, 4.98698, -0.117, 6.50797, -0.23399 ]
+							}
+						]
+					}
 				}
 			}
 		}

BIN
examples/goblins/export/goblins-pro.skel


+ 2 - 2
examples/hero/export/hero-ess.json

@@ -1,7 +1,7 @@
 {
 "skeleton": {
-	"hash": "cJR8Fbsu8Hg",
-	"spine": "4.0.31",
+	"hash": "oG+kkp8qkDs",
+	"spine": "4.1.04-beta",
 	"x": -87.83,
 	"y": 0.01,
 	"width": 319.3,

BIN
examples/hero/export/hero-ess.skel


Diferenças do arquivo suprimidas por serem muito extensas
+ 548 - 498
examples/hero/export/hero-pro.json


BIN
examples/hero/export/hero-pro.skel


BIN
examples/mix-and-match/export/mix-and-match-pma.png


+ 20 - 20
examples/mix-and-match/export/mix-and-match-pro.json

@@ -1,7 +1,7 @@
 {
 "skeleton": {
-	"hash": "bR3EmyUwO+g",
-	"spine": "4.0.31",
+	"hash": "mFaJu+5zxGE",
+	"spine": "4.1.04-beta",
 	"x": -240.58,
 	"y": -3.38,
 	"width": 410.36,
@@ -5263,37 +5263,37 @@
 		"slots": {
 			"eye-back-iris": {
 				"attachment": [
-					{ "time": 0.0333, "name": null },
+					{ "time": 0.0333 },
 					{ "time": 0.0732, "name": "eye-back-iris" }
 				]
 			},
 			"eye-back-pupil": {
 				"attachment": [
-					{ "time": 0.0333, "name": null },
+					{ "time": 0.0333 },
 					{ "time": 0.0732, "name": "eye-back-pupil" }
 				]
 			},
 			"eye-back-white": {
 				"attachment": [
-					{ "time": 0.0333, "name": null },
+					{ "time": 0.0333 },
 					{ "time": 0.0732, "name": "eye-back-white" }
 				]
 			},
 			"eye-front-iris": {
 				"attachment": [
-					{ "time": 0.0333, "name": null },
+					{ "time": 0.0333 },
 					{ "time": 0.0732, "name": "eye-front-iris" }
 				]
 			},
 			"eye-front-pupil": {
 				"attachment": [
-					{ "time": 0.0333, "name": null },
+					{ "time": 0.0333 },
 					{ "time": 0.0732, "name": "eye-front-pupil" }
 				]
 			},
 			"eye-front-white": {
 				"attachment": [
-					{ "time": 0.0333, "name": null },
+					{ "time": 0.0333 },
 					{ "time": 0.0732, "name": "eye-front-white" }
 				]
 			}
@@ -6028,49 +6028,49 @@
 		"slots": {
 			"eye-back-iris": {
 				"attachment": [
-					{ "time": 0.1333, "name": null },
+					{ "time": 0.1333 },
 					{ "time": 0.1732, "name": "eye-back-iris" },
-					{ "time": 2.2667, "name": null },
+					{ "time": 2.2667 },
 					{ "time": 2.3, "name": "eye-back-iris" }
 				]
 			},
 			"eye-back-pupil": {
 				"attachment": [
-					{ "time": 0.1333, "name": null },
+					{ "time": 0.1333 },
 					{ "time": 0.1732, "name": "eye-back-pupil" },
-					{ "time": 2.2667, "name": null },
+					{ "time": 2.2667 },
 					{ "time": 2.3, "name": "eye-back-pupil" }
 				]
 			},
 			"eye-back-white": {
 				"attachment": [
-					{ "time": 0.1333, "name": null },
+					{ "time": 0.1333 },
 					{ "time": 0.1732, "name": "eye-back-white" },
-					{ "time": 2.2667, "name": null },
+					{ "time": 2.2667 },
 					{ "time": 2.3, "name": "eye-back-white" }
 				]
 			},
 			"eye-front-iris": {
 				"attachment": [
-					{ "time": 0.1333, "name": null },
+					{ "time": 0.1333 },
 					{ "time": 0.1732, "name": "eye-front-iris" },
-					{ "time": 2.2667, "name": null },
+					{ "time": 2.2667 },
 					{ "time": 2.3, "name": "eye-front-iris" }
 				]
 			},
 			"eye-front-pupil": {
 				"attachment": [
-					{ "time": 0.1333, "name": null },
+					{ "time": 0.1333 },
 					{ "time": 0.1732, "name": "eye-front-pupil" },
-					{ "time": 2.2667, "name": null },
+					{ "time": 2.2667 },
 					{ "time": 2.3, "name": "eye-front-pupil" }
 				]
 			},
 			"eye-front-white": {
 				"attachment": [
-					{ "time": 0.1333, "name": null },
+					{ "time": 0.1333 },
 					{ "time": 0.1732, "name": "eye-front-white" },
-					{ "time": 2.2667, "name": null },
+					{ "time": 2.2667 },
 					{ "time": 2.3, "name": "eye-front-white" }
 				]
 			}

BIN
examples/mix-and-match/export/mix-and-match-pro.skel


BIN
examples/mix-and-match/export/mix-and-match.png


BIN
examples/owl/export/owl-pma.png


Diferenças do arquivo suprimidas por serem muito extensas
+ 8 - 11
examples/owl/export/owl-pro.json


BIN
examples/owl/export/owl-pro.skel


BIN
examples/owl/export/owl.png


+ 2 - 2
examples/powerup/export/powerup-ess.json

@@ -1,7 +1,7 @@
 {
 "skeleton": {
-	"hash": "oNeCFa8SiWU",
-	"spine": "4.0.31",
+	"hash": "g51gqFUAXaM",
+	"spine": "4.1.04-beta",
 	"x": -207.3,
 	"y": 119.41,
 	"width": 413.19,

BIN
examples/powerup/export/powerup-ess.skel


+ 51 - 49
examples/powerup/export/powerup-pro.json

@@ -1,7 +1,7 @@
 {
 "skeleton": {
-	"hash": "1WHGXJIHCvk",
-	"spine": "4.0.31",
+	"hash": "BtMW31RrxLs",
+	"spine": "4.1.04-beta",
 	"x": -208.76,
 	"y": 119.41,
 	"width": 414.65,
@@ -661,55 +661,57 @@
 				]
 			}
 		},
-		"deform": {
+		"attachments": {
 			"default": {
 				"token": {
-					"token": [
-						{
-							"offset": 24,
-							"vertices": [ 1.14323, 6.73443, 1.14323, 6.73443, 0, 0, 0, 0, 0, 0, 0, 0, 1.14323, 6.73443, 1.14323, 6.73443, 1.14323, 6.73443, 0, 0, 1.15849, 4.43445, 1.15849, 4.43445, 1.15849, 4.43445, 0.73607, 5.7173, 0.73607, 5.7173, 0.73607, 5.7173, 0.73607, 5.7173, 0.73607, 5.7173, 1.02358, 4.49763, 1.15849, 4.43445, 1.14323, 6.73443, 1.14323, 6.73443, 1.14323, 6.73443, 1.14323, 6.73443, 1.14323, 6.73443 ]
-						},
-						{
-							"time": 0.1333,
-							"offset": 24,
-							"vertices": [ 0.93183, 20.41183, 0.93183, 20.41183, 0, 0, 0, 0, 0, 0, 0, 0, 0.93183, 20.41183, 0.93183, 20.41183, 0.93183, 20.41183, 0, 0, 0.94709, 18.11185, 0.94709, 18.11185, 1.40152, 12.2491, 1.23232, 5.895, 1.23232, 5.895, 1.23232, 5.895, 1.23232, 5.895, 1.23232, 5.895, 1.40152, 12.2491, 1.40152, 12.2491, 1.38626, 14.54909, 1.38626, 14.54909, 1.38626, 14.54909, 1.38626, 14.54909, 1.38626, 14.54909 ]
-						},
-						{
-							"time": 0.3333,
-							"offset": 24,
-							"vertices": [ 0.95955, 23.54837, 0.95955, 23.54837, 0, 0, 0, 0, 0, 0, 0, 0, 0.95955, 23.54837, 0.95955, 23.54837, 0.95955, 23.54837, 0, 0, 0.97481, 21.24838, 0.97481, 21.24838, 1.30775, 14.49709, 1.13855, 8.14299, 1.13855, 8.14299, 1.13855, 8.14299, 1.13855, 8.14299, 1.13855, 8.14299, 1.28003, 11.36055, 1.30775, 14.49709, 1.29249, 16.79707, 1.29249, 16.79707, 1.29249, 16.79707, 1.29249, 16.79707, 1.29249, 16.79707 ]
-						},
-						{
-							"time": 0.5333,
-							"offset": 24,
-							"vertices": [ 1.40748, -10.36231, 1.40748, -10.36231, 0, 0, 0, 0, 0, 0, 0, 0, 1.40748, -10.36231, 1.40748, -10.36231, 1.40748, -10.36231, 0, 0, 1.42274, -12.6623, 1.42274, -12.6623, 1.42274, -12.6623, 0.6838, -1.83327, 0.6838, -1.83327, 0.6838, -1.83327, 0.6838, -1.83327, 0.6838, -1.83327, 1.11919, -12.52014, 1.42274, -12.6623, 1.40748, -10.36231, 1.40748, -10.36231, 1.40748, -10.36231, 1.40748, -10.36231, 1.40748, -10.36231 ]
-						},
-						{
-							"time": 0.7,
-							"offset": 24,
-							"vertices": [ 1.14323, 6.73443, 1.14323, 6.73443, 0, 0, 0, 0, 0, 0, 0, 0, 1.14323, 6.73443, 1.14323, 6.73443, 1.14323, 6.73443, 0, 0, 1.15849, 4.43445, 1.15849, 4.43445, 1.15849, 4.43445, 0.73607, 5.7173, 0.73607, 5.7173, 0.73607, 5.7173, 0.73607, 5.7173, 0.73607, 5.7173, 1.02358, 4.49763, 1.15849, 4.43445, 1.14323, 6.73443, 1.14323, 6.73443, 1.14323, 6.73443, 1.14323, 6.73443, 1.14323, 6.73443 ]
-						},
-						{
-							"time": 0.8333,
-							"offset": 24,
-							"vertices": [ 0.93183, 20.41183, 0.93183, 20.41183, 0, 0, 0, 0, 0, 0, 0, 0, 0.93183, 20.41183, 0.93183, 20.41183, 0.93183, 20.41183, 0, 0, 0.94709, 18.11185, 0.94709, 18.11185, 2.16758, 9.46033, 1.99838, 3.10623, 1.99838, 3.10623, 1.99838, 3.10623, 1.99838, 3.10623, 1.99838, 3.10623, 2.16758, 9.46033, 2.16758, 9.46033, 2.15232, 11.76031, 2.15232, 11.76031, 2.15232, 11.76031, 2.15232, 11.76031, 2.15232, 11.76031 ]
-						},
-						{
-							"time": 1.0333,
-							"offset": 24,
-							"vertices": [ 0.95955, 23.54837, 0.95955, 23.54837, 0, 0, 0, 0, 0, 0, 0, 0, 0.95955, 23.54837, 0.95955, 23.54837, 0.95955, 23.54837, 0, 0, 0.97481, 21.24838, 0.97481, 21.24838, 0.93016, 16.19705, 0.76096, 9.84296, 0.76096, 9.84296, 0.76096, 9.84296, 0.76096, 9.84296, 0.76096, 9.84296, 0.90244, 13.06052, 0.93016, 16.19705, 0.9149, 18.49704, 0.9149, 18.49704, 0.9149, 18.49704, 0.9149, 18.49704, 0.9149, 18.49704 ]
-						},
-						{
-							"time": 1.2333,
-							"offset": 24,
-							"vertices": [ 1.40748, -10.36231, 1.40748, -10.36231, 0, 0, 0, 0, 0, 0, 0, 0, 1.40748, -10.36231, 1.40748, -10.36231, 1.40748, -10.36231, 0, 0, 1.42274, -12.6623, 1.42274, -12.6623, 1.42274, -12.6623, 0.6838, -1.83327, 0.6838, -1.83327, 0.6838, -1.83327, 0.6838, -1.83327, 0.6838, -1.83327, 1.11919, -12.52014, 1.42274, -12.6623, 1.40748, -10.36231, 1.40748, -10.36231, 1.40748, -10.36231, 1.40748, -10.36231, 1.40748, -10.36231 ]
-						},
-						{
-							"time": 1.4,
-							"offset": 24,
-							"vertices": [ 1.14323, 6.73443, 1.14323, 6.73443, 0, 0, 0, 0, 0, 0, 0, 0, 1.14323, 6.73443, 1.14323, 6.73443, 1.14323, 6.73443, 0, 0, 1.15849, 4.43445, 1.15849, 4.43445, 1.15849, 4.43445, 0.73607, 5.7173, 0.73607, 5.7173, 0.73607, 5.7173, 0.73607, 5.7173, 0.73607, 5.7173, 1.02358, 4.49763, 1.15849, 4.43445, 1.14323, 6.73443, 1.14323, 6.73443, 1.14323, 6.73443, 1.14323, 6.73443, 1.14323, 6.73443 ]
-						}
-					]
+					"token": {
+						"deform": [
+							{
+								"offset": 24,
+								"vertices": [ 1.14323, 6.73443, 1.14323, 6.73443, 0, 0, 0, 0, 0, 0, 0, 0, 1.14323, 6.73443, 1.14323, 6.73443, 1.14323, 6.73443, 0, 0, 1.15849, 4.43445, 1.15849, 4.43445, 1.15849, 4.43445, 0.73607, 5.7173, 0.73607, 5.7173, 0.73607, 5.7173, 0.73607, 5.7173, 0.73607, 5.7173, 1.02358, 4.49763, 1.15849, 4.43445, 1.14323, 6.73443, 1.14323, 6.73443, 1.14323, 6.73443, 1.14323, 6.73443, 1.14323, 6.73443 ]
+							},
+							{
+								"time": 0.1333,
+								"offset": 24,
+								"vertices": [ 0.93183, 20.41183, 0.93183, 20.41183, 0, 0, 0, 0, 0, 0, 0, 0, 0.93183, 20.41183, 0.93183, 20.41183, 0.93183, 20.41183, 0, 0, 0.94709, 18.11185, 0.94709, 18.11185, 1.40152, 12.2491, 1.23232, 5.895, 1.23232, 5.895, 1.23232, 5.895, 1.23232, 5.895, 1.23232, 5.895, 1.40152, 12.2491, 1.40152, 12.2491, 1.38626, 14.54909, 1.38626, 14.54909, 1.38626, 14.54909, 1.38626, 14.54909, 1.38626, 14.54909 ]
+							},
+							{
+								"time": 0.3333,
+								"offset": 24,
+								"vertices": [ 0.95955, 23.54837, 0.95955, 23.54837, 0, 0, 0, 0, 0, 0, 0, 0, 0.95955, 23.54837, 0.95955, 23.54837, 0.95955, 23.54837, 0, 0, 0.97481, 21.24838, 0.97481, 21.24838, 1.30775, 14.49709, 1.13855, 8.14299, 1.13855, 8.14299, 1.13855, 8.14299, 1.13855, 8.14299, 1.13855, 8.14299, 1.28003, 11.36055, 1.30775, 14.49709, 1.29249, 16.79707, 1.29249, 16.79707, 1.29249, 16.79707, 1.29249, 16.79707, 1.29249, 16.79707 ]
+							},
+							{
+								"time": 0.5333,
+								"offset": 24,
+								"vertices": [ 1.40748, -10.36231, 1.40748, -10.36231, 0, 0, 0, 0, 0, 0, 0, 0, 1.40748, -10.36231, 1.40748, -10.36231, 1.40748, -10.36231, 0, 0, 1.42274, -12.6623, 1.42274, -12.6623, 1.42274, -12.6623, 0.6838, -1.83327, 0.6838, -1.83327, 0.6838, -1.83327, 0.6838, -1.83327, 0.6838, -1.83327, 1.11919, -12.52014, 1.42274, -12.6623, 1.40748, -10.36231, 1.40748, -10.36231, 1.40748, -10.36231, 1.40748, -10.36231, 1.40748, -10.36231 ]
+							},
+							{
+								"time": 0.7,
+								"offset": 24,
+								"vertices": [ 1.14323, 6.73443, 1.14323, 6.73443, 0, 0, 0, 0, 0, 0, 0, 0, 1.14323, 6.73443, 1.14323, 6.73443, 1.14323, 6.73443, 0, 0, 1.15849, 4.43445, 1.15849, 4.43445, 1.15849, 4.43445, 0.73607, 5.7173, 0.73607, 5.7173, 0.73607, 5.7173, 0.73607, 5.7173, 0.73607, 5.7173, 1.02358, 4.49763, 1.15849, 4.43445, 1.14323, 6.73443, 1.14323, 6.73443, 1.14323, 6.73443, 1.14323, 6.73443, 1.14323, 6.73443 ]
+							},
+							{
+								"time": 0.8333,
+								"offset": 24,
+								"vertices": [ 0.93183, 20.41183, 0.93183, 20.41183, 0, 0, 0, 0, 0, 0, 0, 0, 0.93183, 20.41183, 0.93183, 20.41183, 0.93183, 20.41183, 0, 0, 0.94709, 18.11185, 0.94709, 18.11185, 2.16758, 9.46033, 1.99838, 3.10623, 1.99838, 3.10623, 1.99838, 3.10623, 1.99838, 3.10623, 1.99838, 3.10623, 2.16758, 9.46033, 2.16758, 9.46033, 2.15232, 11.76031, 2.15232, 11.76031, 2.15232, 11.76031, 2.15232, 11.76031, 2.15232, 11.76031 ]
+							},
+							{
+								"time": 1.0333,
+								"offset": 24,
+								"vertices": [ 0.95955, 23.54837, 0.95955, 23.54837, 0, 0, 0, 0, 0, 0, 0, 0, 0.95955, 23.54837, 0.95955, 23.54837, 0.95955, 23.54837, 0, 0, 0.97481, 21.24838, 0.97481, 21.24838, 0.93016, 16.19705, 0.76096, 9.84296, 0.76096, 9.84296, 0.76096, 9.84296, 0.76096, 9.84296, 0.76096, 9.84296, 0.90244, 13.06052, 0.93016, 16.19705, 0.9149, 18.49704, 0.9149, 18.49704, 0.9149, 18.49704, 0.9149, 18.49704, 0.9149, 18.49704 ]
+							},
+							{
+								"time": 1.2333,
+								"offset": 24,
+								"vertices": [ 1.40748, -10.36231, 1.40748, -10.36231, 0, 0, 0, 0, 0, 0, 0, 0, 1.40748, -10.36231, 1.40748, -10.36231, 1.40748, -10.36231, 0, 0, 1.42274, -12.6623, 1.42274, -12.6623, 1.42274, -12.6623, 0.6838, -1.83327, 0.6838, -1.83327, 0.6838, -1.83327, 0.6838, -1.83327, 0.6838, -1.83327, 1.11919, -12.52014, 1.42274, -12.6623, 1.40748, -10.36231, 1.40748, -10.36231, 1.40748, -10.36231, 1.40748, -10.36231, 1.40748, -10.36231 ]
+							},
+							{
+								"time": 1.4,
+								"offset": 24,
+								"vertices": [ 1.14323, 6.73443, 1.14323, 6.73443, 0, 0, 0, 0, 0, 0, 0, 0, 1.14323, 6.73443, 1.14323, 6.73443, 1.14323, 6.73443, 0, 0, 1.15849, 4.43445, 1.15849, 4.43445, 1.15849, 4.43445, 0.73607, 5.7173, 0.73607, 5.7173, 0.73607, 5.7173, 0.73607, 5.7173, 0.73607, 5.7173, 1.02358, 4.49763, 1.15849, 4.43445, 1.14323, 6.73443, 1.14323, 6.73443, 1.14323, 6.73443, 1.14323, 6.73443, 1.14323, 6.73443 ]
+							}
+						]
+					}
 				}
 			}
 		}

BIN
examples/powerup/export/powerup-pro.skel


BIN
examples/raptor/export/raptor-pma.png


+ 4 - 4
examples/raptor/export/raptor-pro.json

@@ -1,7 +1,7 @@
 {
 "skeleton": {
-	"hash": "c1+xCfJH+TE",
-	"spine": "4.0.31",
+	"hash": "cDRfwRDrCkA",
+	"spine": "4.1.04-beta",
 	"x": -809.16,
 	"y": -73.54,
 	"width": 1287.65,
@@ -879,7 +879,7 @@
 			},
 			"gun": {
 				"attachment": [
-					{ "time": 0.2333, "name": null }
+					{ "time": 0.2333 }
 				]
 			}
 		},
@@ -1006,7 +1006,7 @@
 			},
 			"gun": {
 				"attachment": [
-					{ "name": null },
+					{},
 					{ "time": 0.3, "name": "gun-nohand" }
 				]
 			}

BIN
examples/raptor/export/raptor-pro.skel


BIN
examples/raptor/export/raptor.png


+ 2 - 2
examples/speedy/export/speedy-ess.json

@@ -1,7 +1,7 @@
 {
 "skeleton": {
-	"hash": "Q9eFOmFPMXI",
-	"spine": "4.0.31",
+	"hash": "D5Ad2Zbw5iM",
+	"spine": "4.1.04-beta",
 	"x": -95.43,
 	"y": -18.79,
 	"width": 196.03,

BIN
examples/speedy/export/speedy-ess.skel


+ 3 - 3
examples/spineboy/export/spineboy-ess.json

@@ -1,7 +1,7 @@
 {
 "skeleton": {
-	"hash": "lS/mQzJwi+I",
-	"spine": "4.0.31",
+	"hash": "gt+DSJjR5MM",
+	"spine": "4.1.04-beta",
 	"x": -221.27,
 	"y": -8.57,
 	"width": 470.72,
@@ -2926,7 +2926,7 @@
 					{ "time": 0.2, "name": "muzzle02" },
 					{ "time": 0.2667, "name": "muzzle03" },
 					{ "time": 0.3333, "name": "muzzle04" },
-					{ "time": 0.3667, "name": null }
+					{ "time": 0.3667 }
 				]
 			}
 		},

BIN
examples/spineboy/export/spineboy-ess.skel


BIN
examples/spineboy/export/spineboy-pma.png


+ 78 - 70
examples/spineboy/export/spineboy-pro.json

@@ -1,7 +1,7 @@
 {
 "skeleton": {
-	"hash": "IQgkYFQG8ng",
-	"spine": "4.0.31",
+	"hash": "ttp88nCyPm0",
+	"spine": "4.1.04-beta",
 	"x": -188.63,
 	"y": -7.94,
 	"width": 418.45,
@@ -2427,19 +2427,19 @@
 			"side-glow1": {
 				"attachment": [
 					{ "name": "hoverglow-small" },
-					{ "time": 0.9667, "name": null }
+					{ "time": 0.9667 }
 				]
 			},
 			"side-glow2": {
 				"attachment": [
 					{ "time": 0.0667, "name": "hoverglow-small" },
-					{ "time": 1, "name": null }
+					{ "time": 1 }
 				]
 			},
 			"side-glow3": {
 				"attachment": [
 					{ "name": "hoverglow-small" },
-					{ "time": 0.9667, "name": null }
+					{ "time": 0.9667 }
 				]
 			}
 		},
@@ -3479,60 +3479,68 @@
 				{ "mixX": 0, "mixScaleX": 0, "mixShearY": 0 }
 			]
 		},
-		"deform": {
+		"attachments": {
 			"default": {
 				"front-foot": {
-					"front-foot": [
-						{
-							"offset": 26,
-							"vertices": [ -0.02832, -5.37024, -0.02832, -5.37024, 3.8188, -3.7757, -0.02832, -5.37024, -3.82159, 3.77847 ]
-						}
-					]
+					"front-foot": {
+						"deform": [
+							{
+								"offset": 26,
+								"vertices": [ -0.02832, -5.37024, -0.02832, -5.37024, 3.8188, -3.7757, -0.02832, -5.37024, -3.82159, 3.77847 ]
+							}
+						]
+					}
 				},
 				"front-shin": {
-					"front-shin": [
-						{
-							"offset": 14,
-							"vertices": [ 0.5298, -1.12677, -0.85507, -4.20587, -11.35158, -10.19225, -10.79865, -8.43765, -6.06447, -6.89757, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.54892, -3.06021, 1.48463, -2.29663, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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.80437, -7.01817 ]
-						},
-						{
-							"time": 0.3667,
-							"offset": 14,
-							"vertices": [ 0.5298, -1.12677, -11.66571, -9.07211, -25.65866, -17.53735, -25.53217, -16.50978, -11.78232, -11.26097, 0, 0, 0.60487, -1.63589, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.60487, -1.63589, 0, 0, -2.64522, -7.35739, 1.48463, -2.29663, 0, 0, 0, 0, 0, 0, 0.60487, -1.63589, 0.60487, -1.63589, 0.60487, -1.63589, 0.60487, -1.63589, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.60487, -1.63589, 0, 0, -10.06873, -12.0999 ]
-						},
-						{
-							"time": 0.5333,
-							"offset": 14,
-							"vertices": [ 0.5298, -1.12677, -0.85507, -4.20587, -7.00775, -8.24771, -6.45482, -6.49312, -6.06447, -6.89757, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.54892, -3.06021, 1.48463, -2.29663, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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.80437, -7.01817 ]
-						},
-						{
-							"time": 1,
-							"offset": 14,
-							"vertices": [ 0.5298, -1.12677, -0.85507, -4.20587, -11.35158, -10.19225, -10.79865, -8.43765, -6.06447, -6.89757, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.54892, -3.06021, 1.48463, -2.29663, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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.80437, -7.01817 ]
-						}
-					]
+					"front-shin": {
+						"deform": [
+							{
+								"offset": 14,
+								"vertices": [ 0.5298, -1.12677, -0.85507, -4.20587, -11.35158, -10.19225, -10.79865, -8.43765, -6.06447, -6.89757, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.54892, -3.06021, 1.48463, -2.29663, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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.80437, -7.01817 ]
+							},
+							{
+								"time": 0.3667,
+								"offset": 14,
+								"vertices": [ 0.5298, -1.12677, -11.66571, -9.07211, -25.65866, -17.53735, -25.53217, -16.50978, -11.78232, -11.26097, 0, 0, 0.60487, -1.63589, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.60487, -1.63589, 0, 0, -2.64522, -7.35739, 1.48463, -2.29663, 0, 0, 0, 0, 0, 0, 0.60487, -1.63589, 0.60487, -1.63589, 0.60487, -1.63589, 0.60487, -1.63589, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.60487, -1.63589, 0, 0, -10.06873, -12.0999 ]
+							},
+							{
+								"time": 0.5333,
+								"offset": 14,
+								"vertices": [ 0.5298, -1.12677, -0.85507, -4.20587, -7.00775, -8.24771, -6.45482, -6.49312, -6.06447, -6.89757, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.54892, -3.06021, 1.48463, -2.29663, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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.80437, -7.01817 ]
+							},
+							{
+								"time": 1,
+								"offset": 14,
+								"vertices": [ 0.5298, -1.12677, -0.85507, -4.20587, -11.35158, -10.19225, -10.79865, -8.43765, -6.06447, -6.89757, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.54892, -3.06021, 1.48463, -2.29663, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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.80437, -7.01817 ]
+							}
+						]
+					}
 				},
 				"hoverboard-board": {
-					"hoverboard-board": [
-						{
-							"curve": [ 0.067, 0, 0.2, 1 ]
-						},
-						{
-							"time": 0.2667,
-							"offset": 1,
-							"vertices": [ 2.45856, 0, 0, 0, 0, 0, 0, 0, 0, 3.55673, -3.0E-4, 3.55673, -3.0E-4, 0, 0, 0, 0, 0, 0, -7.6E-4, -9.84158, -7.6E-4, -9.84158, -7.6E-4, -9.84158, -7.6E-4, -9.84158, -7.6E-4, -9.84158, -7.6E-4, -9.84158, -7.6E-4, -9.84158, -7.6E-4, -9.84158, -7.6E-4, -9.84158, -7.6E-4, -9.84158, -7.6E-4, -9.84158, -7.6E-4, -9.84158, 0, 0, 0, 0, 0, 0, 0, 0, -4.90558, 0.11214, -9.40706, 6.2E-4, -6.34871, 4.3E-4, -6.34925, -6.57018, -6.34925, -6.57018, -6.34871, 4.3E-4, -2.3308, 1.7E-4, -2.33133, -6.57045, -2.33133, -6.57045, -2.3308, 1.7E-4, 0, 0, 1.2E-4, 2.45856, 1.2E-4, 2.45856, 1.2E-4, 2.45856, 1.2E-4, 2.45856, 3.3297, 4.44005, 3.3297, 4.44005, 3.3297, 4.44005, 1.2E-4, 2.45856, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -2.46227, 1.7E-4, -2.46227, 1.7E-4, -2.52316, 1.1313, -2.52316, 1.1313, -2.52316, 1.1313, 1.2E-4, 2.45856, 1.2E-4, 2.45856, -9.40694, 2.45918, 1.88063, 0.44197, -2.9E-4, -3.54808, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -2.52316, 1.1313, -2.52316, 1.1313, -2.52316, 1.1313, -2.46227, 1.7E-4, -2.46227, 1.7E-4, -2.46227, 1.7E-4, 0, 0, 0, 0, 1.2E-4, 2.45856 ],
-							"curve": [ 0.45, 0, 0.817, 1 ]
-						},
-						{ "time": 1 }
-					]
+					"hoverboard-board": {
+						"deform": [
+							{
+								"curve": [ 0.067, 0, 0.2, 1 ]
+							},
+							{
+								"time": 0.2667,
+								"offset": 1,
+								"vertices": [ 2.45856, 0, 0, 0, 0, 0, 0, 0, 0, 3.55673, -3.0E-4, 3.55673, -3.0E-4, 0, 0, 0, 0, 0, 0, -7.6E-4, -9.84158, -7.6E-4, -9.84158, -7.6E-4, -9.84158, -7.6E-4, -9.84158, -7.6E-4, -9.84158, -7.6E-4, -9.84158, -7.6E-4, -9.84158, -7.6E-4, -9.84158, -7.6E-4, -9.84158, -7.6E-4, -9.84158, -7.6E-4, -9.84158, -7.6E-4, -9.84158, 0, 0, 0, 0, 0, 0, 0, 0, -4.90558, 0.11214, -9.40706, 6.2E-4, -6.34871, 4.3E-4, -6.34925, -6.57018, -6.34925, -6.57018, -6.34871, 4.3E-4, -2.3308, 1.7E-4, -2.33133, -6.57045, -2.33133, -6.57045, -2.3308, 1.7E-4, 0, 0, 1.2E-4, 2.45856, 1.2E-4, 2.45856, 1.2E-4, 2.45856, 1.2E-4, 2.45856, 3.3297, 4.44005, 3.3297, 4.44005, 3.3297, 4.44005, 1.2E-4, 2.45856, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -2.46227, 1.7E-4, -2.46227, 1.7E-4, -2.52316, 1.1313, -2.52316, 1.1313, -2.52316, 1.1313, 1.2E-4, 2.45856, 1.2E-4, 2.45856, -9.40694, 2.45918, 1.88063, 0.44197, -2.9E-4, -3.54808, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -2.52316, 1.1313, -2.52316, 1.1313, -2.52316, 1.1313, -2.46227, 1.7E-4, -2.46227, 1.7E-4, -2.46227, 1.7E-4, 0, 0, 0, 0, 1.2E-4, 2.45856 ],
+								"curve": [ 0.45, 0, 0.817, 1 ]
+							},
+							{ "time": 1 }
+						]
+					}
 				},
 				"rear-foot": {
-					"rear-foot": [
-						{
-							"offset": 28,
-							"vertices": [ -1.93078, 1.34782, -0.31417, 2.33363, 3.05122, 0.33946, 2.31472, -2.01678, 2.17583, -2.05795, -0.04277, -2.99459, 1.15429, 0.26328, 0.97501, -0.67169 ]
-						}
-					]
+					"rear-foot": {
+						"deform": [
+							{
+								"offset": 28,
+								"vertices": [ -1.93078, 1.34782, -0.31417, 2.33363, 3.05122, 0.33946, 2.31472, -2.01678, 2.17583, -2.05795, -0.04277, -2.99459, 1.15429, 0.26328, 0.97501, -0.67169 ]
+							}
+						]
+					}
 				}
 			}
 		}
@@ -5203,7 +5211,7 @@
 			"portal-bg": {
 				"attachment": [
 					{ "name": "portal-bg" },
-					{ "time": 3, "name": null }
+					{ "time": 3 }
 				]
 			},
 			"portal-flare1": {
@@ -5214,7 +5222,7 @@
 					{ "time": 1.2, "name": "portal-flare1" },
 					{ "time": 1.2333, "name": "portal-flare2" },
 					{ "time": 1.2667, "name": "portal-flare1" },
-					{ "time": 1.3333, "name": null }
+					{ "time": 1.3333 }
 				]
 			},
 			"portal-flare2": {
@@ -5224,14 +5232,14 @@
 					{ "time": 1.1667, "name": "portal-flare1" },
 					{ "time": 1.2, "name": "portal-flare2" },
 					{ "time": 1.2333, "name": "portal-flare3" },
-					{ "time": 1.2667, "name": null }
+					{ "time": 1.2667 }
 				]
 			},
 			"portal-flare3": {
 				"attachment": [
 					{ "time": 1.2, "name": "portal-flare3" },
 					{ "time": 1.2333, "name": "portal-flare2" },
-					{ "time": 1.2667, "name": null }
+					{ "time": 1.2667 }
 				]
 			},
 			"portal-flare4": {
@@ -5239,33 +5247,33 @@
 					{ "time": 1.2, "name": "portal-flare2" },
 					{ "time": 1.2333, "name": "portal-flare1" },
 					{ "time": 1.2667, "name": "portal-flare2" },
-					{ "time": 1.3333, "name": null }
+					{ "time": 1.3333 }
 				]
 			},
 			"portal-flare5": {
 				"attachment": [
 					{ "time": 1.2333, "name": "portal-flare3" },
 					{ "time": 1.2667, "name": "portal-flare1" },
-					{ "time": 1.3333, "name": null }
+					{ "time": 1.3333 }
 				]
 			},
 			"portal-flare6": {
 				"attachment": [
 					{ "time": 1.2667, "name": "portal-flare3" },
-					{ "time": 1.3333, "name": null }
+					{ "time": 1.3333 }
 				]
 			},
 			"portal-flare7": {
 				"attachment": [
 					{ "time": 1.1333, "name": "portal-flare2" },
-					{ "time": 1.1667, "name": null }
+					{ "time": 1.1667 }
 				]
 			},
 			"portal-flare8": {
 				"attachment": [
 					{ "time": 1.2, "name": "portal-flare3" },
 					{ "time": 1.2333, "name": "portal-flare2" },
-					{ "time": 1.2667, "name": null }
+					{ "time": 1.2667 }
 				]
 			},
 			"portal-flare9": {
@@ -5273,7 +5281,7 @@
 					{ "time": 1.2, "name": "portal-flare2" },
 					{ "time": 1.2333, "name": "portal-flare3" },
 					{ "time": 1.2667, "name": "portal-flare1" },
-					{ "time": 1.3, "name": null }
+					{ "time": 1.3 }
 				]
 			},
 			"portal-flare10": {
@@ -5281,25 +5289,25 @@
 					{ "time": 1.2, "name": "portal-flare2" },
 					{ "time": 1.2333, "name": "portal-flare1" },
 					{ "time": 1.2667, "name": "portal-flare3" },
-					{ "time": 1.3, "name": null }
+					{ "time": 1.3 }
 				]
 			},
 			"portal-shade": {
 				"attachment": [
 					{ "name": "portal-shade" },
-					{ "time": 3, "name": null }
+					{ "time": 3 }
 				]
 			},
 			"portal-streaks1": {
 				"attachment": [
 					{ "name": "portal-streaks1" },
-					{ "time": 3, "name": null }
+					{ "time": 3 }
 				]
 			},
 			"portal-streaks2": {
 				"attachment": [
 					{ "name": "portal-streaks2" },
-					{ "time": 3, "name": null }
+					{ "time": 3 }
 				]
 			}
 		},
@@ -7696,7 +7704,7 @@
 					{ "time": 0.1, "name": "muzzle03" },
 					{ "time": 0.1333, "name": "muzzle04" },
 					{ "time": 0.1667, "name": "muzzle05" },
-					{ "time": 0.2, "name": null }
+					{ "time": 0.2 }
 				]
 			},
 			"muzzle-glow": {
@@ -7725,7 +7733,7 @@
 				],
 				"attachment": [
 					{ "time": 0.0333, "name": "muzzle-ring" },
-					{ "time": 0.2333, "name": null }
+					{ "time": 0.2333 }
 				]
 			},
 			"muzzle-ring2": {
@@ -7739,7 +7747,7 @@
 				],
 				"attachment": [
 					{ "time": 0.0333, "name": "muzzle-ring" },
-					{ "time": 0.2, "name": null }
+					{ "time": 0.2 }
 				]
 			},
 			"muzzle-ring3": {
@@ -7753,7 +7761,7 @@
 				],
 				"attachment": [
 					{ "time": 0.0333, "name": "muzzle-ring" },
-					{ "time": 0.2, "name": null }
+					{ "time": 0.2 }
 				]
 			},
 			"muzzle-ring4": {
@@ -7767,7 +7775,7 @@
 				],
 				"attachment": [
 					{ "time": 0.0333, "name": "muzzle-ring" },
-					{ "time": 0.2, "name": null }
+					{ "time": 0.2 }
 				]
 			}
 		},

BIN
examples/spineboy/export/spineboy-pro.skel


BIN
examples/spineboy/export/spineboy.png


+ 2 - 2
examples/spinosaurus/export/spinosaurus-ess.json

@@ -1,7 +1,7 @@
 {
 "skeleton": {
-	"hash": "Ytk7Zos6DR4",
-	"spine": "4.0.31",
+	"hash": "9GzkJCsNn3g",
+	"spine": "4.1.04-beta",
 	"x": -840,
 	"y": -766.03,
 	"width": 1680,

BIN
examples/spinosaurus/export/spinosaurus-ess.skel


+ 140 - 136
examples/stretchyman/export/stretchyman-pro.json

@@ -1,7 +1,7 @@
 {
 "skeleton": {
-	"hash": "F+EPhClYhR8",
-	"spine": "4.0.31",
+	"hash": "NNUiOwCxKWo",
+	"spine": "4.1.04-beta",
 	"x": -100.47,
 	"y": -9.21,
 	"width": 260.65,
@@ -1966,144 +1966,148 @@
 				{ "mix": 0 }
 			]
 		},
-		"deform": {
+		"attachments": {
 			"default": {
 				"back-leg-path": {
-					"back-leg-path": [
-						{
-							"curve": [ 0.158, 0, 0.475, 1 ]
-						},
-						{
-							"time": 0.6333,
-							"offset": 6,
-							"vertices": [ 7.58212, 6.44012, -6.24036, 7.74866, 0, 0, 0, 0, -8.65305, -6.0506, 5.82422, -8.80603 ],
-							"curve": [ 0.771, 0, 1.005, 0.48 ]
-						},
-						{
-							"time": 1.2,
-							"offset": 6,
-							"vertices": [ 1.75757, 1.49285, -1.44654, 1.79617, 0, 0, 0, 0, -2.00581, -1.40255, 1.35008, -2.04128 ],
-							"curve": [ 1.215, 0, 1.225, 0.03 ]
-						},
-						{
-							"time": 1.2333,
-							"offset": 6,
-							"vertices": [ 11.07889, 9.19726, -3.09299, 13.71402, 9.39429, 7.76639, -1.7065, 11.99242, 7.47175, 6.42206, -0.41247, 10.03589 ],
-							"curve": [ 1.246, 0.12, 1.254, 0.27 ]
-						},
-						{
-							"time": 1.2667,
-							"offset": 6,
-							"vertices": [ 10.10474, 8.7463, -2.36874, 12.63447, 8.81438, 7.65029, -1.30674, 11.31577, 7.34177, 6.62058, -0.31555, 9.81713 ],
-							"curve": [ 1.275, 0.62, 1.286, 0.79 ]
-						},
-						{
-							"time": 1.3,
-							"offset": 6,
-							"vertices": [ 3.4599, -0.42859, 1.07778, 1.47922, 2.60141, -1.15778, 1.78435, 0.60187, 1.62166, -1.84286, 2.4438, -0.3952 ],
-							"curve": [ 1.354, 0.76, 1.414, 1 ]
-						},
-						{
-							"time": 1.4333,
-							"offset": 6,
-							"vertices": [ -4.08505, -24.14874, 13.996, -20.09798, -4.08505, -24.14874, 13.996, -20.09798, -4.08505, -24.14874, 13.996, -20.09798 ]
-						},
-						{
-							"time": 1.5,
-							"vertices": [ 4.67719, -35.44354, 0, 0, -11.37146, 49.53738, 17.39343, -2.33365, 4.23248, 5.68374, -9.56653, -24.74756, 11.45203, -23.93552, -27.49841, -64.4725, 35.55432, -56.67893, 34.69244, -51.5341, 0, 0, 13.30164, -100.17206 ]
-						},
-						{
-							"time": 1.5333,
-							"vertices": [ 1.85684, -28.94159, 0, 0, -12.58768, 38.57599, 11.30969, 16.17496, -13.13428, 1.4907, -12.13364, -13.87851, 4.3075, -20.49398, -34.95135, -45.73811, 21.12878, -45.5335, 30.62613, -45.13649, 0, 0, -0.15961, -190.51059 ]
-						},
-						{
-							"time": 1.5667,
-							"vertices": [ -0.9635, -22.43964, 0, 0, -13.80389, 27.61459, 1.79449, 28.22318, -27.06714, -9.07224, -6.2052, -1.21002, 1.34003, -9.39124, -24.41541, -19.97638, 12.56061, -16.52356, 26.55981, -38.73888, 0, 0, -13.62085, -280.84912 ]
-						},
-						{
-							"time": 1.6,
-							"vertices": [ -0.64233, -14.95974, 0, 0, -9.20259, 18.40971, 13.73107, 41.19725, -42.90586, -9.10037, 4.13583, -3.71808, 4.12607, -1.04554, -17.52923, -15.07591, 15.79826, -11.47559, 17.70652, -25.82589, 0, 0, -9.08056, -187.23253 ]
-						},
-						{
-							"time": 1.6333,
-							"vertices": [ -0.32117, -7.47987, 0, 0, -4.60129, 9.20485, 3.14877, 52.3598, -63.25818, -29.05335, -8.042, -8.03761, 2.39843, -12.62472, -33.16191, -11.98693, 14.52224, -26.35249, 8.85326, -12.91294, 0, 0, -4.54028, -93.61627 ]
-						},
-						{ "time": 1.6667 }
-					]
+					"back-leg-path": {
+						"deform": [
+							{
+								"curve": [ 0.158, 0, 0.475, 1 ]
+							},
+							{
+								"time": 0.6333,
+								"offset": 6,
+								"vertices": [ 7.58212, 6.44012, -6.24036, 7.74866, 0, 0, 0, 0, -8.65305, -6.0506, 5.82422, -8.80603 ],
+								"curve": [ 0.771, 0, 1.005, 0.48 ]
+							},
+							{
+								"time": 1.2,
+								"offset": 6,
+								"vertices": [ 1.75757, 1.49285, -1.44654, 1.79617, 0, 0, 0, 0, -2.00581, -1.40255, 1.35008, -2.04128 ],
+								"curve": [ 1.215, 0, 1.225, 0.03 ]
+							},
+							{
+								"time": 1.2333,
+								"offset": 6,
+								"vertices": [ 11.07889, 9.19726, -3.09299, 13.71402, 9.39429, 7.76639, -1.7065, 11.99242, 7.47175, 6.42206, -0.41247, 10.03589 ],
+								"curve": [ 1.246, 0.12, 1.254, 0.27 ]
+							},
+							{
+								"time": 1.2667,
+								"offset": 6,
+								"vertices": [ 10.10474, 8.7463, -2.36874, 12.63447, 8.81438, 7.65029, -1.30674, 11.31577, 7.34177, 6.62058, -0.31555, 9.81713 ],
+								"curve": [ 1.275, 0.62, 1.286, 0.79 ]
+							},
+							{
+								"time": 1.3,
+								"offset": 6,
+								"vertices": [ 3.4599, -0.42859, 1.07778, 1.47922, 2.60141, -1.15778, 1.78435, 0.60187, 1.62166, -1.84286, 2.4438, -0.3952 ],
+								"curve": [ 1.354, 0.76, 1.414, 1 ]
+							},
+							{
+								"time": 1.4333,
+								"offset": 6,
+								"vertices": [ -4.08505, -24.14874, 13.996, -20.09798, -4.08505, -24.14874, 13.996, -20.09798, -4.08505, -24.14874, 13.996, -20.09798 ]
+							},
+							{
+								"time": 1.5,
+								"vertices": [ 4.67719, -35.44354, 0, 0, -11.37146, 49.53738, 17.39343, -2.33365, 4.23248, 5.68374, -9.56653, -24.74756, 11.45203, -23.93552, -27.49841, -64.4725, 35.55432, -56.67893, 34.69244, -51.5341, 0, 0, 13.30164, -100.17206 ]
+							},
+							{
+								"time": 1.5333,
+								"vertices": [ 1.85684, -28.94159, 0, 0, -12.58768, 38.57599, 11.30969, 16.17496, -13.13428, 1.4907, -12.13364, -13.87851, 4.3075, -20.49398, -34.95135, -45.73811, 21.12878, -45.5335, 30.62613, -45.13649, 0, 0, -0.15961, -190.51059 ]
+							},
+							{
+								"time": 1.5667,
+								"vertices": [ -0.9635, -22.43964, 0, 0, -13.80389, 27.61459, 1.79449, 28.22318, -27.06714, -9.07224, -6.2052, -1.21002, 1.34003, -9.39124, -24.41541, -19.97638, 12.56061, -16.52356, 26.55981, -38.73888, 0, 0, -13.62085, -280.84912 ]
+							},
+							{
+								"time": 1.6,
+								"vertices": [ -0.64233, -14.95974, 0, 0, -9.20259, 18.40971, 13.73107, 41.19725, -42.90586, -9.10037, 4.13583, -3.71808, 4.12607, -1.04554, -17.52923, -15.07591, 15.79826, -11.47559, 17.70652, -25.82589, 0, 0, -9.08056, -187.23253 ]
+							},
+							{
+								"time": 1.6333,
+								"vertices": [ -0.32117, -7.47987, 0, 0, -4.60129, 9.20485, 3.14877, 52.3598, -63.25818, -29.05335, -8.042, -8.03761, 2.39843, -12.62472, -33.16191, -11.98693, 14.52224, -26.35249, 8.85326, -12.91294, 0, 0, -4.54028, -93.61627 ]
+							},
+							{ "time": 1.6667 }
+						]
+					}
 				},
 				"front-leg-path": {
-					"front-leg-path": [
-						{
-							"curve": [ 0.075, 0, 0.189, 0.28 ]
-						},
-						{
-							"time": 0.3,
-							"vertices": [ 0.05087, -3.38688, 0, 0, 1.38452, 5.97834, -14.9041, 2.01206, 1.44487, -6.80281, -14.9041, 2.01206, 1.44487, -6.80281, -14.9041, 2.01206, 1.44487, -6.80281 ],
-							"curve": [ 0.323, 0.2, 0.345, 0.35 ]
-						},
-						{
-							"time": 0.3667,
-							"vertices": [ 0.07139, -4.75271, 0, 0, 1.94286, 8.38924, 4.65956, 20.90988, -6.00341, 18.98861, -0.14155, 20.92476, -9.36768, 15.5653, -12.20349, 23.97896, -19.98153, 9.06929 ],
-							"curve": [ 0.39, 0.31, 0.412, 0.53 ]
-						},
-						{
-							"time": 0.4333,
-							"vertices": [ 0.08487, -5.65058, 0, 0, 2.3099, 9.97411, 6.09287, 20.58425, -8.39331, 19.11554, -1.86437, 20.6089, -13.96917, 13.44183, -21.85559, 25.6709, -31.56034, 2.67548 ],
-							"curve": [ 0.438, 0.32, 0.451, 0.54 ]
-						},
-						{
-							"time": 0.4667,
-							"vertices": [ 0.09099, -6.05806, 0, 0, 2.47648, 10.69338, 6.80647, 9.95062, -1.39596, 12.12401, -2.58313, 9.97971, -7.97551, 5.429, -26.17287, 15.95288, -28.7332, -7.27536 ],
-							"curve": [ 0.491, 0.92, 0.521, 0.99 ]
-						},
-						{
-							"time": 0.5333,
-							"vertices": [ 0.0938, -6.24474, 0, 0, 2.55279, 11.0229, 3.37726, -9.77658, 9.35123, -4.41786, -6.66855, -9.74546, 2.31187, -11.58077, -31.90691, -3.35485, -19.89651, -25.173 ],
-							"curve": [ 0.54, 0.52, 0.553, 0.77 ]
-						},
-						{
-							"time": 0.5667,
-							"vertices": [ 0.12554, -7.9214, 0, 0, 0.6047, 13.76218, 28.2061, -4.72442, -24.72498, -10.04851, -1.08998, -15.00371, 3.89968, -14.73675, -45.72995, -9.44002, -7.51602, -33.5578, 22.59846, -13.40422, 0, 0, -21.81488, -287.65363 ],
-							"curve": [ 0.579, 1, 0.592, 1 ]
-						},
-						{
-							"time": 0.6,
-							"vertices": [ 0.12969, -8.14021, 0, 0, 0.35046, 14.11967, 49.51149, 65.25623, -80.01971, 39.68078, -0.36196, -15.68993, 4.10689, -15.14861, -62.03986, -28.71517, 2.78595, -56.47927, 41.45007, -31.91446, 0, 0, -19.75009, -6.99966 ]
-						},
-						{
-							"time": 0.6333,
-							"vertices": [ 0.16366, -9.90768, 0, 0, -1.90419, 16.9905, 99.3634, 33.16509, -81.26534, 35.35141, -0.72391, -31.37989, 8.2138, -30.29725, -84.11658, -22.14578, -6.24997, -61.22949, 46.91129, -33.41971, 0, 0, -31.98465, -262.01813 ]
-						},
-						{
-							"time": 0.6667,
-							"vertices": [ 0.18382, -11.1283, 0, 0, -2.13879, 19.08371, 85.97569, 24.69115, -94.39235, -5.64914, 3.63728, -14.95789, -10.54588, -27.66409, -78.76755, -2.82176, -20.92926, -42.81331, 26.18336, -20.74105, 0, 0, -159.67368, -300.67038 ]
-						},
-						{
-							"time": 0.7,
-							"vertices": [ 0.20398, -12.34892, 0, 0, -2.37338, 21.17692, 70.14705, -52.80042, -51.24022, -73.25025, 20.8386, -23.27967, -12.66359, -23.66, -39.22493, -9.41795, -5.46658, 10.6813, 1.18861, 10.38911, 0, 0, -400.93036, -315.42963 ]
-						},
-						{
-							"time": 0.7333,
-							"vertices": [ 0.13599, -8.23261, 0, 0, -1.58226, 14.11795, 46.76473, -35.2003, -34.16017, -48.83353, 13.89241, -15.51979, -8.4424, -15.77335, -26.14997, -6.27864, -3.64439, 7.12087, 0.8908, 26.32127, 0, 0, -439.48523, -177.52177 ]
-						},
-						{
-							"time": 0.7667,
-							"vertices": [ 0.06799, -4.11631, 0, 0, -0.79113, 7.05898, 23.38236, -17.60015, -17.08008, -24.41677, 6.94621, -7.7599, -4.2212, -7.88667, -13.07498, -3.13932, -1.8222, 3.56044, 6.0198, 23.00182, 0, 0, -365.68442, -226.89883 ]
-						},
-						{ "time": 0.8, "curve": "stepped" },
-						{ "time": 1.1 },
-						{
-							"time": 1.3,
-							"offset": 6,
-							"vertices": [ 22.24737, 20.71245, -17.43828, 31.85296, 22.24737, 20.71245, -17.43828, 31.85296, 22.24737, 20.71245, -17.43828, 31.85296 ]
-						},
-						{
-							"time": 1.4333,
-							"offset": 6,
-							"vertices": [ 50.92273, 30.30164, -15.21045, 57.26978, 50.92273, 30.30164, -15.21045, 57.26978, 50.92273, 30.30164, -15.21045, 57.26978 ]
-						},
-						{ "time": 1.8 }
-					]
+					"front-leg-path": {
+						"deform": [
+							{
+								"curve": [ 0.075, 0, 0.189, 0.28 ]
+							},
+							{
+								"time": 0.3,
+								"vertices": [ 0.05087, -3.38688, 0, 0, 1.38452, 5.97834, -14.9041, 2.01206, 1.44487, -6.80281, -14.9041, 2.01206, 1.44487, -6.80281, -14.9041, 2.01206, 1.44487, -6.80281 ],
+								"curve": [ 0.323, 0.2, 0.345, 0.35 ]
+							},
+							{
+								"time": 0.3667,
+								"vertices": [ 0.07139, -4.75271, 0, 0, 1.94286, 8.38924, 4.65956, 20.90988, -6.00341, 18.98861, -0.14155, 20.92476, -9.36768, 15.5653, -12.20349, 23.97896, -19.98153, 9.06929 ],
+								"curve": [ 0.39, 0.31, 0.412, 0.53 ]
+							},
+							{
+								"time": 0.4333,
+								"vertices": [ 0.08487, -5.65058, 0, 0, 2.3099, 9.97411, 6.09287, 20.58425, -8.39331, 19.11554, -1.86437, 20.6089, -13.96917, 13.44183, -21.85559, 25.6709, -31.56034, 2.67548 ],
+								"curve": [ 0.438, 0.32, 0.451, 0.54 ]
+							},
+							{
+								"time": 0.4667,
+								"vertices": [ 0.09099, -6.05806, 0, 0, 2.47648, 10.69338, 6.80647, 9.95062, -1.39596, 12.12401, -2.58313, 9.97971, -7.97551, 5.429, -26.17287, 15.95288, -28.7332, -7.27536 ],
+								"curve": [ 0.491, 0.92, 0.521, 0.99 ]
+							},
+							{
+								"time": 0.5333,
+								"vertices": [ 0.0938, -6.24474, 0, 0, 2.55279, 11.0229, 3.37726, -9.77658, 9.35123, -4.41786, -6.66855, -9.74546, 2.31187, -11.58077, -31.90691, -3.35485, -19.89651, -25.173 ],
+								"curve": [ 0.54, 0.52, 0.553, 0.77 ]
+							},
+							{
+								"time": 0.5667,
+								"vertices": [ 0.12554, -7.9214, 0, 0, 0.6047, 13.76218, 28.2061, -4.72442, -24.72498, -10.04851, -1.08998, -15.00371, 3.89968, -14.73675, -45.72995, -9.44002, -7.51602, -33.5578, 22.59846, -13.40422, 0, 0, -21.81488, -287.65363 ],
+								"curve": [ 0.579, 1, 0.592, 1 ]
+							},
+							{
+								"time": 0.6,
+								"vertices": [ 0.12969, -8.14021, 0, 0, 0.35046, 14.11967, 49.51149, 65.25623, -80.01971, 39.68078, -0.36196, -15.68993, 4.10689, -15.14861, -62.03986, -28.71517, 2.78595, -56.47927, 41.45007, -31.91446, 0, 0, -19.75009, -6.99966 ]
+							},
+							{
+								"time": 0.6333,
+								"vertices": [ 0.16366, -9.90768, 0, 0, -1.90419, 16.9905, 99.3634, 33.16509, -81.26534, 35.35141, -0.72391, -31.37989, 8.2138, -30.29725, -84.11658, -22.14578, -6.24997, -61.22949, 46.91129, -33.41971, 0, 0, -31.98465, -262.01813 ]
+							},
+							{
+								"time": 0.6667,
+								"vertices": [ 0.18382, -11.1283, 0, 0, -2.13879, 19.08371, 85.97569, 24.69115, -94.39235, -5.64914, 3.63728, -14.95789, -10.54588, -27.66409, -78.76755, -2.82176, -20.92926, -42.81331, 26.18336, -20.74105, 0, 0, -159.67368, -300.67038 ]
+							},
+							{
+								"time": 0.7,
+								"vertices": [ 0.20398, -12.34892, 0, 0, -2.37338, 21.17692, 70.14705, -52.80042, -51.24022, -73.25025, 20.8386, -23.27967, -12.66359, -23.66, -39.22493, -9.41795, -5.46658, 10.6813, 1.18861, 10.38911, 0, 0, -400.93036, -315.42963 ]
+							},
+							{
+								"time": 0.7333,
+								"vertices": [ 0.13599, -8.23261, 0, 0, -1.58226, 14.11795, 46.76473, -35.2003, -34.16017, -48.83353, 13.89241, -15.51979, -8.4424, -15.77335, -26.14997, -6.27864, -3.64439, 7.12087, 0.8908, 26.32127, 0, 0, -439.48523, -177.52177 ]
+							},
+							{
+								"time": 0.7667,
+								"vertices": [ 0.06799, -4.11631, 0, 0, -0.79113, 7.05898, 23.38236, -17.60015, -17.08008, -24.41677, 6.94621, -7.7599, -4.2212, -7.88667, -13.07498, -3.13932, -1.8222, 3.56044, 6.0198, 23.00182, 0, 0, -365.68442, -226.89883 ]
+							},
+							{ "time": 0.8, "curve": "stepped" },
+							{ "time": 1.1 },
+							{
+								"time": 1.3,
+								"offset": 6,
+								"vertices": [ 22.24737, 20.71245, -17.43828, 31.85296, 22.24737, 20.71245, -17.43828, 31.85296, 22.24737, 20.71245, -17.43828, 31.85296 ]
+							},
+							{
+								"time": 1.4333,
+								"offset": 6,
+								"vertices": [ 50.92273, 30.30164, -15.21045, 57.26978, 50.92273, 30.30164, -15.21045, 57.26978, 50.92273, 30.30164, -15.21045, 57.26978 ]
+							},
+							{ "time": 1.8 }
+						]
+					}
 				}
 			}
 		}

BIN
examples/stretchyman/export/stretchyman-pro.skel


BIN
examples/tank/export/tank-pma.png


+ 64 - 60
examples/tank/export/tank-pro.json

@@ -1,7 +1,7 @@
 {
 "skeleton": {
-	"hash": "3P3VgYJ8Bxk",
-	"spine": "4.0.31",
+	"hash": "zExzm/6YDxM",
+	"spine": "4.1.04-beta",
 	"x": -5852.65,
 	"y": -348.5,
 	"width": 7202.61,
@@ -3420,7 +3420,7 @@
 		"slots": {
 			"rock": {
 				"attachment": [
-					{ "name": null }
+					{}
 				]
 			},
 			"smoke-glow": {
@@ -3432,7 +3432,7 @@
 				],
 				"attachment": [
 					{ "time": 0.0667, "name": "smoke-glow" },
-					{ "time": 0.3, "name": null }
+					{ "time": 0.3 }
 				]
 			},
 			"smoke-puff1-bg": {
@@ -4049,7 +4049,7 @@
 				],
 				"attachment": [
 					{ "time": 0.0667, "name": "smoke-glow" },
-					{ "time": 0.2667, "name": null }
+					{ "time": 0.2667 }
 				]
 			}
 		},
@@ -4870,65 +4870,69 @@
 				]
 			}
 		},
-		"deform": {
+		"attachments": {
 			"default": {
 				"clipping": {
-					"clipping": [
-						{
-							"time": 0.0667,
-							"offset": 54,
-							"vertices": [ 4.59198, -4.59192 ]
-						},
-						{
-							"time": 0.1333,
-							"offset": 8,
-							"vertices": [ -8.97369, -1.88211, 9.11177, 1.02258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -14.73321, -45.16878, -30.31448, -84.4631, -32.24969, -108.78421, 70.26825, -36.90201 ]
-						},
-						{
-							"time": 0.1667,
-							"offset": 8,
-							"vertices": [ -11.32373, -1.65065, 11.42179, 0.53259, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -15.36503, -69.18713, -4.45626, -121.90839, 5.46554, -115.23274, 71.78526, -33.85687 ]
-						},
-						{
-							"time": 0.2,
-							"offset": 8,
-							"vertices": [ -8.70522, 1.02196, 8.65102, -1.4101, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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.59198, -4.59192 ]
-						},
-						{
-							"time": 0.2333,
-							"offset": 8,
-							"vertices": [ -5.23146, 0.85796, 5.23882, -0.81519 ]
-						},
-						{
-							"time": 0.2667,
-							"offset": 54,
-							"vertices": [ 4.59198, -4.59192 ]
-						}
-					]
+					"clipping": {
+						"deform": [
+							{
+								"time": 0.0667,
+								"offset": 54,
+								"vertices": [ 4.59198, -4.59192 ]
+							},
+							{
+								"time": 0.1333,
+								"offset": 8,
+								"vertices": [ -8.97369, -1.88211, 9.11177, 1.02258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -14.73321, -45.16878, -30.31448, -84.4631, -32.24969, -108.78421, 70.26825, -36.90201 ]
+							},
+							{
+								"time": 0.1667,
+								"offset": 8,
+								"vertices": [ -11.32373, -1.65065, 11.42179, 0.53259, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -15.36503, -69.18713, -4.45626, -121.90839, 5.46554, -115.23274, 71.78526, -33.85687 ]
+							},
+							{
+								"time": 0.2,
+								"offset": 8,
+								"vertices": [ -8.70522, 1.02196, 8.65102, -1.4101, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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.59198, -4.59192 ]
+							},
+							{
+								"time": 0.2333,
+								"offset": 8,
+								"vertices": [ -5.23146, 0.85796, 5.23882, -0.81519 ]
+							},
+							{
+								"time": 0.2667,
+								"offset": 54,
+								"vertices": [ 4.59198, -4.59192 ]
+							}
+						]
+					}
 				},
 				"smoke-glow": {
-					"smoke-glow": [
-						{
-							"time": 0.1333,
-							"vertices": [ -14.17073, 19.14352, 0, 0, -10.97961, -15.09065, -5.79558, -24.82121, 0.68117, -17.78759, -1.1179, -5.4463, 0, 0, 0, 0, 17.52957, 6.89397, -0.33841, -2.21582, 5.51004, 18.88118, -6.80153, 20.91101 ]
-						},
-						{
-							"time": 0.1667,
-							"vertices": [ -4.34264, 39.78125, 5.6649, -2.42686, -8.39346, -22.52338, -2.66431, 5.08595, -19.28093, 3.98568, -11.21397, 10.2879, 4.56749, 4.1329, -19.50706, -2.28786, 11.35747, 4.55941, 9.04341, -11.72194, 2.15381, 5.14344, -12.82158, 16.08209, -23.19814, 1.81836 ]
-						},
-						{
-							"time": 0.2,
-							"vertices": [ -3.95581, 36.12203, 37.20779, -0.87419, 21.29579, -15.76854, -2.02438, 6.16526, -5.92201, 4.19709, -1.39027, 9.92793, 7.70584, -0.7169, -6.69733, -2.62048, 17.91826, 7.77333, -12.2858, 3.25454, -12.75876, 3.71516, 9.67891, 15.48546 ]
-						},
-						{
-							"time": 0.2333,
-							"vertices": [ -11.9371, 26.01078, 2.91821, -0.27533, 7.69899, -17.45375, -2.02438, 6.16526, -5.92201, 4.19709, -1.39027, 9.92793, 7.70584, -0.7169, -6.69733, -2.62048, 17.91826, 7.77333, -4.30551, -6.01406, -12.75876, 3.71516, -5.10017, 17.59191 ]
-						},
-						{
-							"time": 0.2667,
-							"vertices": [ 0.5959, 23.58176, 20.74303, 0.93943, 7.69899, -17.45375, -2.02438, 6.16526, -5.92201, 4.19709, -1.39027, 9.92793, 20.51733, 2.52203, 13.35544, 2.64274, 24.32408, -1.94308, 8.50604, -20.99353, 13.14276, 5.73959, 6.31876, 19.2114, 16.98909, 0.80981 ]
-						}
-					]
+					"smoke-glow": {
+						"deform": [
+							{
+								"time": 0.1333,
+								"vertices": [ -14.17073, 19.14352, 0, 0, -10.97961, -15.09065, -5.79558, -24.82121, 0.68117, -17.78759, -1.1179, -5.4463, 0, 0, 0, 0, 17.52957, 6.89397, -0.33841, -2.21582, 5.51004, 18.88118, -6.80153, 20.91101 ]
+							},
+							{
+								"time": 0.1667,
+								"vertices": [ -4.34264, 39.78125, 5.6649, -2.42686, -8.39346, -22.52338, -2.66431, 5.08595, -19.28093, 3.98568, -11.21397, 10.2879, 4.56749, 4.1329, -19.50706, -2.28786, 11.35747, 4.55941, 9.04341, -11.72194, 2.15381, 5.14344, -12.82158, 16.08209, -23.19814, 1.81836 ]
+							},
+							{
+								"time": 0.2,
+								"vertices": [ -3.95581, 36.12203, 37.20779, -0.87419, 21.29579, -15.76854, -2.02438, 6.16526, -5.92201, 4.19709, -1.39027, 9.92793, 7.70584, -0.7169, -6.69733, -2.62048, 17.91826, 7.77333, -12.2858, 3.25454, -12.75876, 3.71516, 9.67891, 15.48546 ]
+							},
+							{
+								"time": 0.2333,
+								"vertices": [ -11.9371, 26.01078, 2.91821, -0.27533, 7.69899, -17.45375, -2.02438, 6.16526, -5.92201, 4.19709, -1.39027, 9.92793, 7.70584, -0.7169, -6.69733, -2.62048, 17.91826, 7.77333, -4.30551, -6.01406, -12.75876, 3.71516, -5.10017, 17.59191 ]
+							},
+							{
+								"time": 0.2667,
+								"vertices": [ 0.5959, 23.58176, 20.74303, 0.93943, 7.69899, -17.45375, -2.02438, 6.16526, -5.92201, 4.19709, -1.39027, 9.92793, 20.51733, 2.52203, 13.35544, 2.64274, 24.32408, -1.94308, 8.50604, -20.99353, 13.14276, 5.73959, 6.31876, 19.2114, 16.98909, 0.80981 ]
+							}
+						]
+					}
 				}
 			}
 		},

BIN
examples/tank/export/tank-pro.skel


BIN
examples/tank/export/tank.png


+ 2 - 2
examples/vine/export/vine-pro.json

@@ -1,7 +1,7 @@
 {
 "skeleton": {
-	"hash": "mROo4Xkf3Fs",
-	"spine": "4.0.31",
+	"hash": "Si0Beql3I1U",
+	"spine": "4.1.04-beta",
 	"x": -87.7,
 	"y": -1.71,
 	"width": 227.65,

BIN
examples/vine/export/vine-pro.skel


+ 2 - 2
examples/windmill/export/windmill-ess.json

@@ -1,7 +1,7 @@
 {
 "skeleton": {
-	"hash": "tBKgYacI7e4",
-	"spine": "4.0.31",
+	"hash": "tB4/IVbSSaY",
+	"spine": "4.1.04-beta",
 	"x": -564.6,
 	"y": -335.4,
 	"width": 1124.2,

BIN
examples/windmill/export/windmill-ess.skel


BIN
examples/windmill/export/windmill-pma.png


BIN
examples/windmill/export/windmill.png


BIN
spine-cocos2dx/example-v4/Resources/common/coin-pro.skel


+ 304 - 282
spine-cocos2dx/example-v4/Resources/common/goblins-pro.json

@@ -1,7 +1,7 @@
 {
 "skeleton": {
-	"hash": "PtTAK+zF95I",
-	"spine": "4.0.31",
+	"hash": "5+0u5UUVwqA",
+	"spine": "4.1.04-beta",
 	"x": -134.12,
 	"y": -3.28,
 	"width": 266.94,
@@ -571,7 +571,7 @@
 			"eyes": {
 				"attachment": [
 					{ "time": 0.7, "name": "eyes-closed" },
-					{ "time": 0.8, "name": null }
+					{ "time": 0.8 }
 				]
 			}
 		},
@@ -899,309 +899,331 @@
 				]
 			}
 		},
-		"deform": {
+		"attachments": {
 			"default": {
 				"right-hand-item": {
-					"dagger": [
-						{
-							"offset": 26,
-							"vertices": [ 2.34755, 0.1447 ],
-							"curve": [ 0.125, 0, 0.375, 1 ]
-						},
-						{
-							"time": 0.5,
-							"offset": 8,
-							"vertices": [ -1.19415, 4.31532, 0.07279, 6.41351, 1.66048, 6.18883, 1.75233, 3.59555 ],
-							"curve": [ 0.625, 0, 0.875, 1 ]
-						},
-						{
-							"time": 1,
-							"offset": 26,
-							"vertices": [ 2.34755, 0.1447 ]
-						}
-					]
+					"dagger": {
+						"deform": [
+							{
+								"offset": 26,
+								"vertices": [ 2.34755, 0.1447 ],
+								"curve": [ 0.125, 0, 0.375, 1 ]
+							},
+							{
+								"time": 0.5,
+								"offset": 8,
+								"vertices": [ -1.19415, 4.31532, 0.07279, 6.41351, 1.66048, 6.18883, 1.75233, 3.59555 ],
+								"curve": [ 0.625, 0, 0.875, 1 ]
+							},
+							{
+								"time": 1,
+								"offset": 26,
+								"vertices": [ 2.34755, 0.1447 ]
+							}
+						]
+					}
 				}
 			},
 			"goblin": {
 				"head": {
-					"head": [
-						{
-							"curve": [ 0.127, 0, 0.15, 1 ]
-						},
-						{
-							"time": 0.2,
-							"vertices": [ -10.97827, -6.68962, -4.68015, -2.46175, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1.08534, 0.08392, -1.08534, 0.08392, -1.08534, 0.08392, 0, 0, -2.22325, 2.66465, -4.83295, 2.70085, -5.70553, -0.51941, -3.15962, -1.61502, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -6.64742, 0.81612, -11.82286, -1.34955, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1.08534, 0.08392 ],
-							"curve": [ 0.242, 0, 0.325, 1 ]
-						},
-						{
-							"time": 0.3667,
-							"vertices": [ 10.69276, 4.05949, 3.66373, 1.85427, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1.47305, 0.09018, 1.47305, 0.09018, 1.47305, 0.09018, 0, 0, 2.69653, -0.22738, 3.77135, 0.11418, 3.6893, 1.55352, 2.49595, 1.65501, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4.45881, -3.9113, 9.19594, -1.66854, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1.47305, 0.09018 ],
-							"curve": [ 0.574, 0, 0.617, 1 ]
-						},
-						{
-							"time": 0.7,
-							"vertices": [ -10.97827, -6.68962, -4.68015, -2.46175, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1.17551, -0.17183, -1.17551, -0.17183, -1.17551, -0.17183, 0, 0, -2.22325, 2.66465, -4.83295, 2.70085, -5.70553, -0.51941, -3.15962, -1.61502, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -6.64742, 0.81612, -11.82286, -1.34955, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1.17551, -0.17183 ],
-							"curve": [ 0.742, 0, 0.825, 1 ]
-						},
-						{
-							"time": 0.8667,
-							"vertices": [ 10.69276, 4.05949, 3.66373, 1.85427, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.38687, 0.08446, 0.38687, 0.08446, 0.38687, 0.08446, 0, 0, 2.69653, -0.22738, 3.77135, 0.11418, 3.6893, 1.55352, 2.49595, 1.65501, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4.45881, -3.9113, 9.19594, -1.66854, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.38687, 0.08446 ],
-							"curve": [ 0.9, 0, 0.967, 1 ]
-						},
-						{ "time": 1 }
-					]
+					"head": {
+						"deform": [
+							{
+								"curve": [ 0.127, 0, 0.15, 1 ]
+							},
+							{
+								"time": 0.2,
+								"vertices": [ -10.97827, -6.68962, -4.68015, -2.46175, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1.08534, 0.08392, -1.08534, 0.08392, -1.08534, 0.08392, 0, 0, -2.22325, 2.66465, -4.83295, 2.70085, -5.70553, -0.51941, -3.15962, -1.61502, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -6.64742, 0.81612, -11.82286, -1.34955, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1.08534, 0.08392 ],
+								"curve": [ 0.242, 0, 0.325, 1 ]
+							},
+							{
+								"time": 0.3667,
+								"vertices": [ 10.69276, 4.05949, 3.66373, 1.85427, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1.47305, 0.09018, 1.47305, 0.09018, 1.47305, 0.09018, 0, 0, 2.69653, -0.22738, 3.77135, 0.11418, 3.6893, 1.55352, 2.49595, 1.65501, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4.45881, -3.9113, 9.19594, -1.66854, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1.47305, 0.09018 ],
+								"curve": [ 0.574, 0, 0.617, 1 ]
+							},
+							{
+								"time": 0.7,
+								"vertices": [ -10.97827, -6.68962, -4.68015, -2.46175, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1.17551, -0.17183, -1.17551, -0.17183, -1.17551, -0.17183, 0, 0, -2.22325, 2.66465, -4.83295, 2.70085, -5.70553, -0.51941, -3.15962, -1.61502, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -6.64742, 0.81612, -11.82286, -1.34955, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1.17551, -0.17183 ],
+								"curve": [ 0.742, 0, 0.825, 1 ]
+							},
+							{
+								"time": 0.8667,
+								"vertices": [ 10.69276, 4.05949, 3.66373, 1.85427, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.38687, 0.08446, 0.38687, 0.08446, 0.38687, 0.08446, 0, 0, 2.69653, -0.22738, 3.77135, 0.11418, 3.6893, 1.55352, 2.49595, 1.65501, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4.45881, -3.9113, 9.19594, -1.66854, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.38687, 0.08446 ],
+								"curve": [ 0.9, 0, 0.967, 1 ]
+							},
+							{ "time": 1 }
+						]
+					}
 				},
 				"left-foot": {
-					"left-foot": [
-						{
-							"offset": 8,
-							"vertices": [ 3.69298, 2.37573, -7.16969, 18.79733, -12.78162, 14.7778, -12.75776, 6.50514, -3.13476, 1.98906, -0.44402, 0.36629, 0, 0, -3.80085, 2.98474 ]
-						},
-						{ "time": 0.1333 },
-						{
-							"time": 0.2333,
-							"offset": 8,
-							"vertices": [ -3.96073, -2.34594, -5.80446, -12.47629, -2.2313, -12.99038, 2.02942, -9.1036, 0, 0, 0, 0, 0, 0, -1.35254, -5.2883 ]
-						},
-						{
-							"time": 0.3667,
-							"offset": 8,
-							"vertices": [ 0.66505, 0.33548, 0.33902, 2.69014, -0.48171, 2.54524, -1.13593, 1.38562, 0, 0, 0, 0, 0, 0, -0.11908, 0.79273 ]
-						},
-						{ "time": 0.5, "curve": "stepped" },
-						{ "time": 0.6333 },
-						{
-							"time": 0.7333,
-							"offset": 8,
-							"vertices": [ -2.97738, 9.40254, -6.91661, 19.92794, -10.55287, 18.41085, -12.37161, 12.38473, -4.72607, 6.30799, 0, 0, -1.48902, 4.88944, -7.06773, 10.70102 ]
-						},
-						{
-							"time": 0.8333,
-							"offset": 6,
-							"vertices": [ 1.05319, 1.56362, -2.52723, 7.9974, -5.52031, 17.14137, -8.93317, 15.79635, -10.73748, 10.22056, -4.23801, 5.36992, 0, 0, 0, 0, -5.83148, 8.55532 ]
-						},
-						{
-							"time": 1,
-							"offset": 8,
-							"vertices": [ 3.69298, 2.37573, -7.16969, 18.79733, -12.78162, 14.7778, -12.75776, 6.50514, -3.13476, 1.98906, -0.44402, 0.36629, 0, 0, -3.80085, 2.98474 ]
-						}
-					]
+					"left-foot": {
+						"deform": [
+							{
+								"offset": 8,
+								"vertices": [ 3.69298, 2.37573, -7.16969, 18.79733, -12.78162, 14.7778, -12.75776, 6.50514, -3.13476, 1.98906, -0.44402, 0.36629, 0, 0, -3.80085, 2.98474 ]
+							},
+							{ "time": 0.1333 },
+							{
+								"time": 0.2333,
+								"offset": 8,
+								"vertices": [ -3.96073, -2.34594, -5.80446, -12.47629, -2.2313, -12.99038, 2.02942, -9.1036, 0, 0, 0, 0, 0, 0, -1.35254, -5.2883 ]
+							},
+							{
+								"time": 0.3667,
+								"offset": 8,
+								"vertices": [ 0.66505, 0.33548, 0.33902, 2.69014, -0.48171, 2.54524, -1.13593, 1.38562, 0, 0, 0, 0, 0, 0, -0.11908, 0.79273 ]
+							},
+							{ "time": 0.5, "curve": "stepped" },
+							{ "time": 0.6333 },
+							{
+								"time": 0.7333,
+								"offset": 8,
+								"vertices": [ -2.97738, 9.40254, -6.91661, 19.92794, -10.55287, 18.41085, -12.37161, 12.38473, -4.72607, 6.30799, 0, 0, -1.48902, 4.88944, -7.06773, 10.70102 ]
+							},
+							{
+								"time": 0.8333,
+								"offset": 6,
+								"vertices": [ 1.05319, 1.56362, -2.52723, 7.9974, -5.52031, 17.14137, -8.93317, 15.79635, -10.73748, 10.22056, -4.23801, 5.36992, 0, 0, 0, 0, -5.83148, 8.55532 ]
+							},
+							{
+								"time": 1,
+								"offset": 8,
+								"vertices": [ 3.69298, 2.37573, -7.16969, 18.79733, -12.78162, 14.7778, -12.75776, 6.50514, -3.13476, 1.98906, -0.44402, 0.36629, 0, 0, -3.80085, 2.98474 ]
+							}
+						]
+					}
 				},
 				"pelvis": {
-					"pelvis": [
-						{},
-						{
-							"time": 0.1333,
-							"offset": 6,
-							"vertices": [ -0.6899, -4.13284 ]
-						},
-						{
-							"time": 0.3333,
-							"offset": 6,
-							"vertices": [ -1.04945, -3.10477 ]
-						},
-						{
-							"time": 0.7,
-							"offset": 6,
-							"vertices": [ -1.4245, -6.30617 ]
-						},
-						{
-							"time": 0.8667,
-							"offset": 6,
-							"vertices": [ -1.13542, -1.79036 ]
-						},
-						{ "time": 1 }
-					]
+					"pelvis": {
+						"deform": [
+							{},
+							{
+								"time": 0.1333,
+								"offset": 6,
+								"vertices": [ -0.6899, -4.13284 ]
+							},
+							{
+								"time": 0.3333,
+								"offset": 6,
+								"vertices": [ -1.04945, -3.10477 ]
+							},
+							{
+								"time": 0.7,
+								"offset": 6,
+								"vertices": [ -1.4245, -6.30617 ]
+							},
+							{
+								"time": 0.8667,
+								"offset": 6,
+								"vertices": [ -1.13542, -1.79036 ]
+							},
+							{ "time": 1 }
+						]
+					}
 				},
 				"right-foot": {
-					"right-foot": [
-						{},
-						{
-							"time": 0.1333,
-							"offset": 2,
-							"vertices": [ -2.81259, 2.63115, -2.35238, 3.89441, -1.99921, 4.8639, -0.93273, 5.57982, -0.48886, 5.09855, -0.34813, 3.42912, -0.17446, 1.36899, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1.31305, 1.91372, -1.32986, 3.65703 ]
-						},
-						{
-							"time": 0.2333,
-							"offset": 2,
-							"vertices": [ -6.39088, 6.41246, -7.74575, 8.27192, -7.02471, 11.35894, -4.03471, 13.93454, -2.50399, 12.62963, -1.46125, 7.58915, -0.17446, 1.36899, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -3.84766, 2.61216, -4.53956, 7.92358 ]
-						},
-						{
-							"time": 0.3,
-							"offset": 2,
-							"vertices": [ -8.27185, 6.68822, -9.29764, 10.13797, -8.62231, 14.7134, -4.5863, 18.81939, -2.20304, 17.10709, -0.07795, 9.9046, 2.54452, 1.01642, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -2.94625, 2.38008, -4.59399, 10.01888 ]
-						},
-						{
-							"time": 0.3667,
-							"offset": 2,
-							"vertices": [ -10.47684, 9.44176, -13.36883, 12.40983, -14.32569, 16.94392, -9.24463, 23.55674, -5.51712, 21.51378, -1.19582, 11.53193, 2.54452, 1.01642, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -4.14848, 2.29389, -6.63419, 11.37127 ]
-						},
-						{
-							"time": 0.5,
-							"offset": 2,
-							"vertices": [ -5.42474, 4.36854, -10.59004, 7.04468, -11.64251, 11.55845, -6.19665, 20.12806, -1.45498, 18.05411, 4.8662, 6.41679, 2.81463, 0.27601, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -2.96412, 4.9483 ]
-						},
-						{ "time": 0.6333 },
-						{
-							"time": 0.7333,
-							"offset": 4,
-							"vertices": [ 1.31462, -6.84099, -0.87905, -12.54479, -5.9851, -14.08368, -7.15892, -11.63194, -5.6792, -4.83545, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -2.06164, -6.93844 ]
-						},
-						{
-							"time": 0.8,
-							"offset": 4,
-							"vertices": [ 0.65731, -3.4205, -0.43953, -6.2724, -2.99255, -7.04184, -3.57946, -5.81597, -2.8396, -2.41772, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2.79688, -1.28021, 0, 0, 0, 0, -1.03082, -3.46922 ]
-						},
-						{ "time": 0.8667 }
-					]
+					"right-foot": {
+						"deform": [
+							{},
+							{
+								"time": 0.1333,
+								"offset": 2,
+								"vertices": [ -2.81259, 2.63115, -2.35238, 3.89441, -1.99921, 4.8639, -0.93273, 5.57982, -0.48886, 5.09855, -0.34813, 3.42912, -0.17446, 1.36899, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1.31305, 1.91372, -1.32986, 3.65703 ]
+							},
+							{
+								"time": 0.2333,
+								"offset": 2,
+								"vertices": [ -6.39088, 6.41246, -7.74575, 8.27192, -7.02471, 11.35894, -4.03471, 13.93454, -2.50399, 12.62963, -1.46125, 7.58915, -0.17446, 1.36899, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -3.84766, 2.61216, -4.53956, 7.92358 ]
+							},
+							{
+								"time": 0.3,
+								"offset": 2,
+								"vertices": [ -8.27185, 6.68822, -9.29764, 10.13797, -8.62231, 14.7134, -4.5863, 18.81939, -2.20304, 17.10709, -0.07795, 9.9046, 2.54452, 1.01642, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -2.94625, 2.38008, -4.59399, 10.01888 ]
+							},
+							{
+								"time": 0.3667,
+								"offset": 2,
+								"vertices": [ -10.47684, 9.44176, -13.36883, 12.40983, -14.32569, 16.94392, -9.24463, 23.55674, -5.51712, 21.51378, -1.19582, 11.53193, 2.54452, 1.01642, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -4.14848, 2.29389, -6.63419, 11.37127 ]
+							},
+							{
+								"time": 0.5,
+								"offset": 2,
+								"vertices": [ -5.42474, 4.36854, -10.59004, 7.04468, -11.64251, 11.55845, -6.19665, 20.12806, -1.45498, 18.05411, 4.8662, 6.41679, 2.81463, 0.27601, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -2.96412, 4.9483 ]
+							},
+							{ "time": 0.6333 },
+							{
+								"time": 0.7333,
+								"offset": 4,
+								"vertices": [ 1.31462, -6.84099, -0.87905, -12.54479, -5.9851, -14.08368, -7.15892, -11.63194, -5.6792, -4.83545, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -2.06164, -6.93844 ]
+							},
+							{
+								"time": 0.8,
+								"offset": 4,
+								"vertices": [ 0.65731, -3.4205, -0.43953, -6.2724, -2.99255, -7.04184, -3.57946, -5.81597, -2.8396, -2.41772, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2.79688, -1.28021, 0, 0, 0, 0, -1.03082, -3.46922 ]
+							},
+							{ "time": 0.8667 }
+						]
+					}
 				},
 				"right-hand": {
-					"right-hand": [
-						{
-							"offset": 4,
-							"vertices": [ -1.48417, 0.34736, 0, 0, 1.31152, 0.08085, 1.60296, 0.09882, 0.13673, 0.15471, 0, 0, 0, 0, -0.72862, -0.0449 ]
-						},
-						{ "time": 0.5 },
-						{
-							"time": 1,
-							"offset": 4,
-							"vertices": [ -1.48417, 0.34736, 0, 0, 1.31152, 0.08085, 1.60296, 0.09882, 0.13673, 0.15471, 0, 0, 0, 0, -0.72862, -0.0449 ]
-						}
-					]
+					"right-hand": {
+						"deform": [
+							{
+								"offset": 4,
+								"vertices": [ -1.48417, 0.34736, 0, 0, 1.31152, 0.08085, 1.60296, 0.09882, 0.13673, 0.15471, 0, 0, 0, 0, -0.72862, -0.0449 ]
+							},
+							{ "time": 0.5 },
+							{
+								"time": 1,
+								"offset": 4,
+								"vertices": [ -1.48417, 0.34736, 0, 0, 1.31152, 0.08085, 1.60296, 0.09882, 0.13673, 0.15471, 0, 0, 0, 0, -0.72862, -0.0449 ]
+							}
+						]
+					}
 				},
 				"right-lower-leg": {
-					"right-lower-leg": [
-						{},
-						{
-							"time": 0.6,
-							"offset": 6,
-							"vertices": [ 1.80396, -1.56553 ]
-						},
-						{ "time": 1 }
-					]
+					"right-lower-leg": {
+						"deform": [
+							{},
+							{
+								"time": 0.6,
+								"offset": 6,
+								"vertices": [ 1.80396, -1.56553 ]
+							},
+							{ "time": 1 }
+						]
+					}
 				},
 				"right-upper-leg": {
-					"right-upper-leg": [
-						{
-							"vertices": [ -6.03857, -1.46325, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -0.34685, -1.93102, -1.86047, -5.05266, -2.5014, -3.09985 ]
-						},
-						{ "time": 0.3333 },
-						{
-							"time": 0.8667,
-							"offset": 14,
-							"vertices": [ 0.13425, -2.35378, -1.33318, -5.99573, -1.35862, -4.43324 ]
-						},
-						{
-							"time": 1,
-							"vertices": [ -6.03857, -1.46325, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -0.34685, -1.93102, -1.86047, -5.05266, -2.5014, -3.09985 ]
-						}
-					]
+					"right-upper-leg": {
+						"deform": [
+							{
+								"vertices": [ -6.03857, -1.46325, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -0.34685, -1.93102, -1.86047, -5.05266, -2.5014, -3.09985 ]
+							},
+							{ "time": 0.3333 },
+							{
+								"time": 0.8667,
+								"offset": 14,
+								"vertices": [ 0.13425, -2.35378, -1.33318, -5.99573, -1.35862, -4.43324 ]
+							},
+							{
+								"time": 1,
+								"vertices": [ -6.03857, -1.46325, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -0.34685, -1.93102, -1.86047, -5.05266, -2.5014, -3.09985 ]
+							}
+						]
+					}
 				},
 				"torso": {
-					"torso": [
-						{
-							"offset": 2,
-							"vertices": [ 0.24821, 2.86673, 0.24821, 2.86673, 0.24821, 2.86673, 0.24821, 2.86673, 0.24821, 2.86673, 0.24821, 2.86673, -1.24131, 2.62652, -2.47492, 0.71183, -0.26363, -0.5308, 0.24821, 2.86673, 0.24821, 2.86673, 0, 0, 0, 0, 0, 0, 0, 0, 1.34461, 0.25215, 0.24821, 2.86673, 0.82507, 1.61798, 0.24821, 2.86673, 0, 0, -1.86431, -0.4326, 0.24821, 2.86673 ]
-						},
-						{
-							"time": 0.1333,
-							"offset": 2,
-							"vertices": [ 0.35589, 4.10914, 0.35589, 4.10914, 0.35589, 4.10914, 0.35589, 4.10914, 0.35589, 4.10914, 0.35589, 4.10914, 1.66908, 3.51187, -0.62355, 2.47979, 1.1045, 3.49684, -1.09009, 6.08429, 0.35589, 4.10914, 0, 0, 0, 0, 0, 0, 0, 0, 3.01291, 0.15693, 0.35589, 4.10914, -1.11398, 3.7954, 0.35589, 4.10914, 0, 0, -2.96167, 0.55563, -2.20741, 4.40587 ]
-						},
-						{
-							"time": 0.3,
-							"offset": 2,
-							"vertices": [ 0.2884, 3.32948, 0.2884, 3.32948, 0.2884, 3.32948, 0.2884, 3.32948, 0.2884, 3.32948, 0.2884, 3.32948, 6.32601, 0.19387, 7.84315, 1.94837, 7.08587, 3.64119, 4.52343, 4.46961, 0.2884, 3.32948, 0, 0, 0, 0, 0, 0, 0, 0, 4.36416, -1.83876, 0.2884, 3.32948, 4.2925, 3.60194, 0.2884, 3.32948, 0, 0, 3.72601, -0.19338, 0.2884, 3.32948 ]
-						},
-						{
-							"time": 0.5,
-							"offset": 2,
-							"vertices": [ 0.3133, 3.61659, 0.3133, 3.61659, 0.3133, 3.61659, 0.3133, 3.61659, 0.3133, 3.61659, 0.3133, 3.61659, 2.57273, 2.74457, 2.88831, 3.04797, 3.48442, 3.04655, 1.80035, 4.609, 0.3133, 3.61659, 0, 0, 0, 0, 0, 0, 0, 0, 3.53782, -0.82203, 0.3133, 3.61659, 1.80022, 3.63246, 0.3133, 3.61659, 0, 0, 0.62718, 0.33564, -1.22467, 3.79463 ]
-						},
-						{
-							"time": 0.6333,
-							"offset": 2,
-							"vertices": [ 0.44398, 5.125, 0.44398, 5.125, 0.44398, 5.125, 0.44398, 5.125, 0.44398, 5.125, 0.44398, 5.125, 1.19401, 3.60798, -0.53546, 3.49565, 1.1926, 4.5127, -1.002, 7.10015, 0.44398, 5.125, 0, 0, 0, 0, 0, 0, 0, 0, 3.101, 1.17278, 0.44398, 5.125, -1.02589, 4.81126, 0.44398, 5.125, 0, 0, -2.87358, 1.57149, -2.11931, 5.42173 ]
-						},
-						{
-							"time": 0.8667,
-							"offset": 2,
-							"vertices": [ 0.30385, 3.50647, 0.30385, 3.50647, 0.30385, 3.50647, 0.30385, 3.50647, 0.30385, 3.50647, 0.30385, 3.50647, 0.92587, 2.24385, 0.68874, 1.29945, 3.55433, 3.00604, 2.71494, 5.89962, 0.30385, 3.50647, 0, 0, 0, 0, 0, 0, 0, 0, 1.96775, 0.40548, 0.30385, 3.50647, 2.6104, 2.3545, 0.30385, 3.50647, 0, 0, 0.22709, -0.12851, -0.62826, 3.61437 ]
-						},
-						{
-							"time": 1,
-							"offset": 2,
-							"vertices": [ 0.32802, 3.78826, 0.32802, 3.78826, 0.32802, 3.78826, 0.32802, 3.78826, 0.32802, 3.78826, 0.32802, 3.78826, -1.1615, 3.54805, -2.39511, 1.63336, -0.18382, 0.39073, 0.32802, 3.78826, 0.32802, 3.78826, 0, 0, 0, 0, 0, 0, 0, 0, 1.42442, 1.17368, 0.32802, 3.78826, 0.90488, 2.53951, 0.32802, 3.78826, 0, 0, -1.7845, 0.48894, 0.32802, 3.78826 ]
-						}
-					]
+					"torso": {
+						"deform": [
+							{
+								"offset": 2,
+								"vertices": [ 0.24821, 2.86673, 0.24821, 2.86673, 0.24821, 2.86673, 0.24821, 2.86673, 0.24821, 2.86673, 0.24821, 2.86673, -1.24131, 2.62652, -2.47492, 0.71183, -0.26363, -0.5308, 0.24821, 2.86673, 0.24821, 2.86673, 0, 0, 0, 0, 0, 0, 0, 0, 1.34461, 0.25215, 0.24821, 2.86673, 0.82507, 1.61798, 0.24821, 2.86673, 0, 0, -1.86431, -0.4326, 0.24821, 2.86673 ]
+							},
+							{
+								"time": 0.1333,
+								"offset": 2,
+								"vertices": [ 0.35589, 4.10914, 0.35589, 4.10914, 0.35589, 4.10914, 0.35589, 4.10914, 0.35589, 4.10914, 0.35589, 4.10914, 1.66908, 3.51187, -0.62355, 2.47979, 1.1045, 3.49684, -1.09009, 6.08429, 0.35589, 4.10914, 0, 0, 0, 0, 0, 0, 0, 0, 3.01291, 0.15693, 0.35589, 4.10914, -1.11398, 3.7954, 0.35589, 4.10914, 0, 0, -2.96167, 0.55563, -2.20741, 4.40587 ]
+							},
+							{
+								"time": 0.3,
+								"offset": 2,
+								"vertices": [ 0.2884, 3.32948, 0.2884, 3.32948, 0.2884, 3.32948, 0.2884, 3.32948, 0.2884, 3.32948, 0.2884, 3.32948, 6.32601, 0.19387, 7.84315, 1.94837, 7.08587, 3.64119, 4.52343, 4.46961, 0.2884, 3.32948, 0, 0, 0, 0, 0, 0, 0, 0, 4.36416, -1.83876, 0.2884, 3.32948, 4.2925, 3.60194, 0.2884, 3.32948, 0, 0, 3.72601, -0.19338, 0.2884, 3.32948 ]
+							},
+							{
+								"time": 0.5,
+								"offset": 2,
+								"vertices": [ 0.3133, 3.61659, 0.3133, 3.61659, 0.3133, 3.61659, 0.3133, 3.61659, 0.3133, 3.61659, 0.3133, 3.61659, 2.57273, 2.74457, 2.88831, 3.04797, 3.48442, 3.04655, 1.80035, 4.609, 0.3133, 3.61659, 0, 0, 0, 0, 0, 0, 0, 0, 3.53782, -0.82203, 0.3133, 3.61659, 1.80022, 3.63246, 0.3133, 3.61659, 0, 0, 0.62718, 0.33564, -1.22467, 3.79463 ]
+							},
+							{
+								"time": 0.6333,
+								"offset": 2,
+								"vertices": [ 0.44398, 5.125, 0.44398, 5.125, 0.44398, 5.125, 0.44398, 5.125, 0.44398, 5.125, 0.44398, 5.125, 1.19401, 3.60798, -0.53546, 3.49565, 1.1926, 4.5127, -1.002, 7.10015, 0.44398, 5.125, 0, 0, 0, 0, 0, 0, 0, 0, 3.101, 1.17278, 0.44398, 5.125, -1.02589, 4.81126, 0.44398, 5.125, 0, 0, -2.87358, 1.57149, -2.11931, 5.42173 ]
+							},
+							{
+								"time": 0.8667,
+								"offset": 2,
+								"vertices": [ 0.30385, 3.50647, 0.30385, 3.50647, 0.30385, 3.50647, 0.30385, 3.50647, 0.30385, 3.50647, 0.30385, 3.50647, 0.92587, 2.24385, 0.68874, 1.29945, 3.55433, 3.00604, 2.71494, 5.89962, 0.30385, 3.50647, 0, 0, 0, 0, 0, 0, 0, 0, 1.96775, 0.40548, 0.30385, 3.50647, 2.6104, 2.3545, 0.30385, 3.50647, 0, 0, 0.22709, -0.12851, -0.62826, 3.61437 ]
+							},
+							{
+								"time": 1,
+								"offset": 2,
+								"vertices": [ 0.32802, 3.78826, 0.32802, 3.78826, 0.32802, 3.78826, 0.32802, 3.78826, 0.32802, 3.78826, 0.32802, 3.78826, -1.1615, 3.54805, -2.39511, 1.63336, -0.18382, 0.39073, 0.32802, 3.78826, 0.32802, 3.78826, 0, 0, 0, 0, 0, 0, 0, 0, 1.42442, 1.17368, 0.32802, 3.78826, 0.90488, 2.53951, 0.32802, 3.78826, 0, 0, -1.7845, 0.48894, 0.32802, 3.78826 ]
+							}
+						]
+					}
 				},
 				"undie-straps": {
-					"undie-straps": [
-						{
-							"offset": 2,
-							"vertices": [ -1.77697, 0.5476, -0.96145, -1.03793, -0.39148, -0.24072, -1.77697, 0.5476 ]
-						},
-						{
-							"time": 0.1333,
-							"offset": 2,
-							"vertices": [ -2.25684, -1.03177, -1.49719, -4.23862, -0.7447, -2.84907, -1.90072, 0.54478 ]
-						},
-						{
-							"time": 0.3333,
-							"offset": 2,
-							"vertices": [ -2.37974, -0.05432, -0.49433, 0.19437, -0.90861, 1.16519, -1.60956, 2.70799, 0.96186, 0.80615 ]
-						},
-						{
-							"time": 0.7,
-							"offset": 2,
-							"vertices": [ -0.91715, -2.76567, -0.62215, -3.63489, -0.84941, -2.26772, -2.56077, 0.52971 ]
-						},
-						{
-							"time": 0.8667,
-							"offset": 2,
-							"vertices": [ -2.56077, 0.52971, -1.58065, 0.32031, -1.3847, 0.32476, -2.56077, 0.52971 ]
-						},
-						{
-							"time": 1,
-							"offset": 2,
-							"vertices": [ -1.77697, 0.5476, -0.80128, 0.53413, -0.80128, 0.53413, -1.77697, 0.5476 ]
-						}
-					]
+					"undie-straps": {
+						"deform": [
+							{
+								"offset": 2,
+								"vertices": [ -1.77697, 0.5476, -0.96145, -1.03793, -0.39148, -0.24072, -1.77697, 0.5476 ]
+							},
+							{
+								"time": 0.1333,
+								"offset": 2,
+								"vertices": [ -2.25684, -1.03177, -1.49719, -4.23862, -0.7447, -2.84907, -1.90072, 0.54478 ]
+							},
+							{
+								"time": 0.3333,
+								"offset": 2,
+								"vertices": [ -2.37974, -0.05432, -0.49433, 0.19437, -0.90861, 1.16519, -1.60956, 2.70799, 0.96186, 0.80615 ]
+							},
+							{
+								"time": 0.7,
+								"offset": 2,
+								"vertices": [ -0.91715, -2.76567, -0.62215, -3.63489, -0.84941, -2.26772, -2.56077, 0.52971 ]
+							},
+							{
+								"time": 0.8667,
+								"offset": 2,
+								"vertices": [ -2.56077, 0.52971, -1.58065, 0.32031, -1.3847, 0.32476, -2.56077, 0.52971 ]
+							},
+							{
+								"time": 1,
+								"offset": 2,
+								"vertices": [ -1.77697, 0.5476, -0.80128, 0.53413, -0.80128, 0.53413, -1.77697, 0.5476 ]
+							}
+						]
+					}
 				},
 				"undies": {
-					"undies": [
-						{
-							"vertices": [ 0.43099, 0.722, 10.60295, -0.117, 2.29599, 0, 2.29599, 0, 2.29599, 0, 0.58799, 0.244, -2.40018, -0.65335, -2.2782, -0.77534, 2.29599, 0, 0.58799, -0.488, 4.98698, -0.117, 6.50797, -0.23399 ]
-						},
-						{
-							"time": 0.1333,
-							"vertices": [ 0.72659, 0.4332, 7.20417, -0.1638, 1.37759, 0, 1.37759, 0, 1.37759, 0, 1.25279, 0.0464, -0.99862, -2.95085, -1.37543, -3.07404, 1.37759, 0, 0.35279, -0.2928, 2.99219, -0.0702, 3.90478, -0.1404 ]
-						},
-						{
-							"time": 0.3333,
-							"vertices": [ 1.16999, 0, 2.10599, -0.23401, 0, 0, 0, 0, 0, 0, 2.24999, -0.24999, -0.4344, 0.60551, -1.55939, 0.48051 ]
-						},
-						{
-							"time": 0.5333,
-							"vertices": [ 1.16999, 0, -0.234, -0.936, -2.92499, 0.351, 0, 0, 0, 0, 0.5, -0.24999, -0.64079, -2.07915, -0.64079, -2.07915 ]
-						},
-						{
-							"time": 0.7,
-							"vertices": [ 1.86271, -0.11514, 4.66327, -0.091, -1.76428, 0.21171, 0, 0, -0.56833, 0.32833, -1.13833, -1.15111, -2.19996, -3.47068, -1.29719, -3.47068, 0, 0, 0, 0, 1.58785, -0.04643, 2.65942, 0.16715 ]
-						},
-						{
-							"time": 0.8333,
-							"vertices": [ 2.41688, -0.20726, 8.58108, 0.585, -0.83571, 0.10029, 0, 0, -1.02299, 0.59099, -2.449, -1.872, -1.625, 0, 0, 0, 0, 0, 0, 0, 2.85813, -0.08357, 4.78695, 0.30086 ]
-						},
-						{
-							"time": 0.8667,
-							"vertices": [ 2.0197, -0.02141, 8.98546, 0.4446, -0.20937, 0.08023, 0.4592, 0, -0.3592, 0.47279, -1.8416, -1.4488, -0.79153, 1.26421, 0.53286, 1.23981, 0.4592, 0, 0.1176, -0.0976, 3.2839, -0.09025, 5.13116, 0.19389 ]
-						},
-						{
-							"time": 1,
-							"vertices": [ 0.43099, 0.722, 10.60295, -0.117, 2.29599, 0, 2.29599, 0, 2.29599, 0, 0.58799, 0.244, -2.40018, -0.65335, -2.2782, -0.77534, 2.29599, 0, 0.58799, -0.488, 4.98698, -0.117, 6.50797, -0.23399 ]
-						}
-					]
+					"undies": {
+						"deform": [
+							{
+								"vertices": [ 0.43099, 0.722, 10.60295, -0.117, 2.29599, 0, 2.29599, 0, 2.29599, 0, 0.58799, 0.244, -2.40018, -0.65335, -2.2782, -0.77534, 2.29599, 0, 0.58799, -0.488, 4.98698, -0.117, 6.50797, -0.23399 ]
+							},
+							{
+								"time": 0.1333,
+								"vertices": [ 0.72659, 0.4332, 7.20417, -0.1638, 1.37759, 0, 1.37759, 0, 1.37759, 0, 1.25279, 0.0464, -0.99862, -2.95085, -1.37543, -3.07404, 1.37759, 0, 0.35279, -0.2928, 2.99219, -0.0702, 3.90478, -0.1404 ]
+							},
+							{
+								"time": 0.3333,
+								"vertices": [ 1.16999, 0, 2.10599, -0.23401, 0, 0, 0, 0, 0, 0, 2.24999, -0.24999, -0.4344, 0.60551, -1.55939, 0.48051 ]
+							},
+							{
+								"time": 0.5333,
+								"vertices": [ 1.16999, 0, -0.234, -0.936, -2.92499, 0.351, 0, 0, 0, 0, 0.5, -0.24999, -0.64079, -2.07915, -0.64079, -2.07915 ]
+							},
+							{
+								"time": 0.7,
+								"vertices": [ 1.86271, -0.11514, 4.66327, -0.091, -1.76428, 0.21171, 0, 0, -0.56833, 0.32833, -1.13833, -1.15111, -2.19996, -3.47068, -1.29719, -3.47068, 0, 0, 0, 0, 1.58785, -0.04643, 2.65942, 0.16715 ]
+							},
+							{
+								"time": 0.8333,
+								"vertices": [ 2.41688, -0.20726, 8.58108, 0.585, -0.83571, 0.10029, 0, 0, -1.02299, 0.59099, -2.449, -1.872, -1.625, 0, 0, 0, 0, 0, 0, 0, 2.85813, -0.08357, 4.78695, 0.30086 ]
+							},
+							{
+								"time": 0.8667,
+								"vertices": [ 2.0197, -0.02141, 8.98546, 0.4446, -0.20937, 0.08023, 0.4592, 0, -0.3592, 0.47279, -1.8416, -1.4488, -0.79153, 1.26421, 0.53286, 1.23981, 0.4592, 0, 0.1176, -0.0976, 3.2839, -0.09025, 5.13116, 0.19389 ]
+							},
+							{
+								"time": 1,
+								"vertices": [ 0.43099, 0.722, 10.60295, -0.117, 2.29599, 0, 2.29599, 0, 2.29599, 0, 0.58799, 0.244, -2.40018, -0.65335, -2.2782, -0.77534, 2.29599, 0, 0.58799, -0.488, 4.98698, -0.117, 6.50797, -0.23399 ]
+							}
+						]
+					}
 				}
 			}
 		}

BIN
spine-cocos2dx/example-v4/Resources/common/mix-and-match-pro.skel


BIN
spine-cocos2dx/example-v4/Resources/common/mix-and-match.png


+ 4 - 4
spine-cocos2dx/example-v4/Resources/common/raptor-pro.json

@@ -1,7 +1,7 @@
 {
 "skeleton": {
-	"hash": "c1+xCfJH+TE",
-	"spine": "4.0.31",
+	"hash": "cDRfwRDrCkA",
+	"spine": "4.1.04-beta",
 	"x": -809.16,
 	"y": -73.54,
 	"width": 1287.65,
@@ -879,7 +879,7 @@
 			},
 			"gun": {
 				"attachment": [
-					{ "time": 0.2333, "name": null }
+					{ "time": 0.2333 }
 				]
 			}
 		},
@@ -1006,7 +1006,7 @@
 			},
 			"gun": {
 				"attachment": [
-					{ "name": null },
+					{},
 					{ "time": 0.3, "name": "gun-nohand" }
 				]
 			}

BIN
spine-cocos2dx/example-v4/Resources/common/raptor.png


+ 78 - 70
spine-cocos2dx/example-v4/Resources/common/spineboy-pro.json

@@ -1,7 +1,7 @@
 {
 "skeleton": {
-	"hash": "IQgkYFQG8ng",
-	"spine": "4.0.31",
+	"hash": "ttp88nCyPm0",
+	"spine": "4.1.04-beta",
 	"x": -188.63,
 	"y": -7.94,
 	"width": 418.45,
@@ -2427,19 +2427,19 @@
 			"side-glow1": {
 				"attachment": [
 					{ "name": "hoverglow-small" },
-					{ "time": 0.9667, "name": null }
+					{ "time": 0.9667 }
 				]
 			},
 			"side-glow2": {
 				"attachment": [
 					{ "time": 0.0667, "name": "hoverglow-small" },
-					{ "time": 1, "name": null }
+					{ "time": 1 }
 				]
 			},
 			"side-glow3": {
 				"attachment": [
 					{ "name": "hoverglow-small" },
-					{ "time": 0.9667, "name": null }
+					{ "time": 0.9667 }
 				]
 			}
 		},
@@ -3479,60 +3479,68 @@
 				{ "mixX": 0, "mixScaleX": 0, "mixShearY": 0 }
 			]
 		},
-		"deform": {
+		"attachments": {
 			"default": {
 				"front-foot": {
-					"front-foot": [
-						{
-							"offset": 26,
-							"vertices": [ -0.02832, -5.37024, -0.02832, -5.37024, 3.8188, -3.7757, -0.02832, -5.37024, -3.82159, 3.77847 ]
-						}
-					]
+					"front-foot": {
+						"deform": [
+							{
+								"offset": 26,
+								"vertices": [ -0.02832, -5.37024, -0.02832, -5.37024, 3.8188, -3.7757, -0.02832, -5.37024, -3.82159, 3.77847 ]
+							}
+						]
+					}
 				},
 				"front-shin": {
-					"front-shin": [
-						{
-							"offset": 14,
-							"vertices": [ 0.5298, -1.12677, -0.85507, -4.20587, -11.35158, -10.19225, -10.79865, -8.43765, -6.06447, -6.89757, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.54892, -3.06021, 1.48463, -2.29663, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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.80437, -7.01817 ]
-						},
-						{
-							"time": 0.3667,
-							"offset": 14,
-							"vertices": [ 0.5298, -1.12677, -11.66571, -9.07211, -25.65866, -17.53735, -25.53217, -16.50978, -11.78232, -11.26097, 0, 0, 0.60487, -1.63589, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.60487, -1.63589, 0, 0, -2.64522, -7.35739, 1.48463, -2.29663, 0, 0, 0, 0, 0, 0, 0.60487, -1.63589, 0.60487, -1.63589, 0.60487, -1.63589, 0.60487, -1.63589, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.60487, -1.63589, 0, 0, -10.06873, -12.0999 ]
-						},
-						{
-							"time": 0.5333,
-							"offset": 14,
-							"vertices": [ 0.5298, -1.12677, -0.85507, -4.20587, -7.00775, -8.24771, -6.45482, -6.49312, -6.06447, -6.89757, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.54892, -3.06021, 1.48463, -2.29663, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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.80437, -7.01817 ]
-						},
-						{
-							"time": 1,
-							"offset": 14,
-							"vertices": [ 0.5298, -1.12677, -0.85507, -4.20587, -11.35158, -10.19225, -10.79865, -8.43765, -6.06447, -6.89757, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.54892, -3.06021, 1.48463, -2.29663, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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.80437, -7.01817 ]
-						}
-					]
+					"front-shin": {
+						"deform": [
+							{
+								"offset": 14,
+								"vertices": [ 0.5298, -1.12677, -0.85507, -4.20587, -11.35158, -10.19225, -10.79865, -8.43765, -6.06447, -6.89757, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.54892, -3.06021, 1.48463, -2.29663, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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.80437, -7.01817 ]
+							},
+							{
+								"time": 0.3667,
+								"offset": 14,
+								"vertices": [ 0.5298, -1.12677, -11.66571, -9.07211, -25.65866, -17.53735, -25.53217, -16.50978, -11.78232, -11.26097, 0, 0, 0.60487, -1.63589, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.60487, -1.63589, 0, 0, -2.64522, -7.35739, 1.48463, -2.29663, 0, 0, 0, 0, 0, 0, 0.60487, -1.63589, 0.60487, -1.63589, 0.60487, -1.63589, 0.60487, -1.63589, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.60487, -1.63589, 0, 0, -10.06873, -12.0999 ]
+							},
+							{
+								"time": 0.5333,
+								"offset": 14,
+								"vertices": [ 0.5298, -1.12677, -0.85507, -4.20587, -7.00775, -8.24771, -6.45482, -6.49312, -6.06447, -6.89757, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.54892, -3.06021, 1.48463, -2.29663, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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.80437, -7.01817 ]
+							},
+							{
+								"time": 1,
+								"offset": 14,
+								"vertices": [ 0.5298, -1.12677, -0.85507, -4.20587, -11.35158, -10.19225, -10.79865, -8.43765, -6.06447, -6.89757, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.54892, -3.06021, 1.48463, -2.29663, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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.80437, -7.01817 ]
+							}
+						]
+					}
 				},
 				"hoverboard-board": {
-					"hoverboard-board": [
-						{
-							"curve": [ 0.067, 0, 0.2, 1 ]
-						},
-						{
-							"time": 0.2667,
-							"offset": 1,
-							"vertices": [ 2.45856, 0, 0, 0, 0, 0, 0, 0, 0, 3.55673, -3.0E-4, 3.55673, -3.0E-4, 0, 0, 0, 0, 0, 0, -7.6E-4, -9.84158, -7.6E-4, -9.84158, -7.6E-4, -9.84158, -7.6E-4, -9.84158, -7.6E-4, -9.84158, -7.6E-4, -9.84158, -7.6E-4, -9.84158, -7.6E-4, -9.84158, -7.6E-4, -9.84158, -7.6E-4, -9.84158, -7.6E-4, -9.84158, -7.6E-4, -9.84158, 0, 0, 0, 0, 0, 0, 0, 0, -4.90558, 0.11214, -9.40706, 6.2E-4, -6.34871, 4.3E-4, -6.34925, -6.57018, -6.34925, -6.57018, -6.34871, 4.3E-4, -2.3308, 1.7E-4, -2.33133, -6.57045, -2.33133, -6.57045, -2.3308, 1.7E-4, 0, 0, 1.2E-4, 2.45856, 1.2E-4, 2.45856, 1.2E-4, 2.45856, 1.2E-4, 2.45856, 3.3297, 4.44005, 3.3297, 4.44005, 3.3297, 4.44005, 1.2E-4, 2.45856, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -2.46227, 1.7E-4, -2.46227, 1.7E-4, -2.52316, 1.1313, -2.52316, 1.1313, -2.52316, 1.1313, 1.2E-4, 2.45856, 1.2E-4, 2.45856, -9.40694, 2.45918, 1.88063, 0.44197, -2.9E-4, -3.54808, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -2.52316, 1.1313, -2.52316, 1.1313, -2.52316, 1.1313, -2.46227, 1.7E-4, -2.46227, 1.7E-4, -2.46227, 1.7E-4, 0, 0, 0, 0, 1.2E-4, 2.45856 ],
-							"curve": [ 0.45, 0, 0.817, 1 ]
-						},
-						{ "time": 1 }
-					]
+					"hoverboard-board": {
+						"deform": [
+							{
+								"curve": [ 0.067, 0, 0.2, 1 ]
+							},
+							{
+								"time": 0.2667,
+								"offset": 1,
+								"vertices": [ 2.45856, 0, 0, 0, 0, 0, 0, 0, 0, 3.55673, -3.0E-4, 3.55673, -3.0E-4, 0, 0, 0, 0, 0, 0, -7.6E-4, -9.84158, -7.6E-4, -9.84158, -7.6E-4, -9.84158, -7.6E-4, -9.84158, -7.6E-4, -9.84158, -7.6E-4, -9.84158, -7.6E-4, -9.84158, -7.6E-4, -9.84158, -7.6E-4, -9.84158, -7.6E-4, -9.84158, -7.6E-4, -9.84158, -7.6E-4, -9.84158, 0, 0, 0, 0, 0, 0, 0, 0, -4.90558, 0.11214, -9.40706, 6.2E-4, -6.34871, 4.3E-4, -6.34925, -6.57018, -6.34925, -6.57018, -6.34871, 4.3E-4, -2.3308, 1.7E-4, -2.33133, -6.57045, -2.33133, -6.57045, -2.3308, 1.7E-4, 0, 0, 1.2E-4, 2.45856, 1.2E-4, 2.45856, 1.2E-4, 2.45856, 1.2E-4, 2.45856, 3.3297, 4.44005, 3.3297, 4.44005, 3.3297, 4.44005, 1.2E-4, 2.45856, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -2.46227, 1.7E-4, -2.46227, 1.7E-4, -2.52316, 1.1313, -2.52316, 1.1313, -2.52316, 1.1313, 1.2E-4, 2.45856, 1.2E-4, 2.45856, -9.40694, 2.45918, 1.88063, 0.44197, -2.9E-4, -3.54808, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -2.52316, 1.1313, -2.52316, 1.1313, -2.52316, 1.1313, -2.46227, 1.7E-4, -2.46227, 1.7E-4, -2.46227, 1.7E-4, 0, 0, 0, 0, 1.2E-4, 2.45856 ],
+								"curve": [ 0.45, 0, 0.817, 1 ]
+							},
+							{ "time": 1 }
+						]
+					}
 				},
 				"rear-foot": {
-					"rear-foot": [
-						{
-							"offset": 28,
-							"vertices": [ -1.93078, 1.34782, -0.31417, 2.33363, 3.05122, 0.33946, 2.31472, -2.01678, 2.17583, -2.05795, -0.04277, -2.99459, 1.15429, 0.26328, 0.97501, -0.67169 ]
-						}
-					]
+					"rear-foot": {
+						"deform": [
+							{
+								"offset": 28,
+								"vertices": [ -1.93078, 1.34782, -0.31417, 2.33363, 3.05122, 0.33946, 2.31472, -2.01678, 2.17583, -2.05795, -0.04277, -2.99459, 1.15429, 0.26328, 0.97501, -0.67169 ]
+							}
+						]
+					}
 				}
 			}
 		}
@@ -5203,7 +5211,7 @@
 			"portal-bg": {
 				"attachment": [
 					{ "name": "portal-bg" },
-					{ "time": 3, "name": null }
+					{ "time": 3 }
 				]
 			},
 			"portal-flare1": {
@@ -5214,7 +5222,7 @@
 					{ "time": 1.2, "name": "portal-flare1" },
 					{ "time": 1.2333, "name": "portal-flare2" },
 					{ "time": 1.2667, "name": "portal-flare1" },
-					{ "time": 1.3333, "name": null }
+					{ "time": 1.3333 }
 				]
 			},
 			"portal-flare2": {
@@ -5224,14 +5232,14 @@
 					{ "time": 1.1667, "name": "portal-flare1" },
 					{ "time": 1.2, "name": "portal-flare2" },
 					{ "time": 1.2333, "name": "portal-flare3" },
-					{ "time": 1.2667, "name": null }
+					{ "time": 1.2667 }
 				]
 			},
 			"portal-flare3": {
 				"attachment": [
 					{ "time": 1.2, "name": "portal-flare3" },
 					{ "time": 1.2333, "name": "portal-flare2" },
-					{ "time": 1.2667, "name": null }
+					{ "time": 1.2667 }
 				]
 			},
 			"portal-flare4": {
@@ -5239,33 +5247,33 @@
 					{ "time": 1.2, "name": "portal-flare2" },
 					{ "time": 1.2333, "name": "portal-flare1" },
 					{ "time": 1.2667, "name": "portal-flare2" },
-					{ "time": 1.3333, "name": null }
+					{ "time": 1.3333 }
 				]
 			},
 			"portal-flare5": {
 				"attachment": [
 					{ "time": 1.2333, "name": "portal-flare3" },
 					{ "time": 1.2667, "name": "portal-flare1" },
-					{ "time": 1.3333, "name": null }
+					{ "time": 1.3333 }
 				]
 			},
 			"portal-flare6": {
 				"attachment": [
 					{ "time": 1.2667, "name": "portal-flare3" },
-					{ "time": 1.3333, "name": null }
+					{ "time": 1.3333 }
 				]
 			},
 			"portal-flare7": {
 				"attachment": [
 					{ "time": 1.1333, "name": "portal-flare2" },
-					{ "time": 1.1667, "name": null }
+					{ "time": 1.1667 }
 				]
 			},
 			"portal-flare8": {
 				"attachment": [
 					{ "time": 1.2, "name": "portal-flare3" },
 					{ "time": 1.2333, "name": "portal-flare2" },
-					{ "time": 1.2667, "name": null }
+					{ "time": 1.2667 }
 				]
 			},
 			"portal-flare9": {
@@ -5273,7 +5281,7 @@
 					{ "time": 1.2, "name": "portal-flare2" },
 					{ "time": 1.2333, "name": "portal-flare3" },
 					{ "time": 1.2667, "name": "portal-flare1" },
-					{ "time": 1.3, "name": null }
+					{ "time": 1.3 }
 				]
 			},
 			"portal-flare10": {
@@ -5281,25 +5289,25 @@
 					{ "time": 1.2, "name": "portal-flare2" },
 					{ "time": 1.2333, "name": "portal-flare1" },
 					{ "time": 1.2667, "name": "portal-flare3" },
-					{ "time": 1.3, "name": null }
+					{ "time": 1.3 }
 				]
 			},
 			"portal-shade": {
 				"attachment": [
 					{ "name": "portal-shade" },
-					{ "time": 3, "name": null }
+					{ "time": 3 }
 				]
 			},
 			"portal-streaks1": {
 				"attachment": [
 					{ "name": "portal-streaks1" },
-					{ "time": 3, "name": null }
+					{ "time": 3 }
 				]
 			},
 			"portal-streaks2": {
 				"attachment": [
 					{ "name": "portal-streaks2" },
-					{ "time": 3, "name": null }
+					{ "time": 3 }
 				]
 			}
 		},
@@ -7696,7 +7704,7 @@
 					{ "time": 0.1, "name": "muzzle03" },
 					{ "time": 0.1333, "name": "muzzle04" },
 					{ "time": 0.1667, "name": "muzzle05" },
-					{ "time": 0.2, "name": null }
+					{ "time": 0.2 }
 				]
 			},
 			"muzzle-glow": {
@@ -7725,7 +7733,7 @@
 				],
 				"attachment": [
 					{ "time": 0.0333, "name": "muzzle-ring" },
-					{ "time": 0.2333, "name": null }
+					{ "time": 0.2333 }
 				]
 			},
 			"muzzle-ring2": {
@@ -7739,7 +7747,7 @@
 				],
 				"attachment": [
 					{ "time": 0.0333, "name": "muzzle-ring" },
-					{ "time": 0.2, "name": null }
+					{ "time": 0.2 }
 				]
 			},
 			"muzzle-ring3": {
@@ -7753,7 +7761,7 @@
 				],
 				"attachment": [
 					{ "time": 0.0333, "name": "muzzle-ring" },
-					{ "time": 0.2, "name": null }
+					{ "time": 0.2 }
 				]
 			},
 			"muzzle-ring4": {
@@ -7767,7 +7775,7 @@
 				],
 				"attachment": [
 					{ "time": 0.0333, "name": "muzzle-ring" },
-					{ "time": 0.2, "name": null }
+					{ "time": 0.2 }
 				]
 			}
 		},

BIN
spine-cocos2dx/example-v4/Resources/common/spineboy.png


BIN
spine-cocos2dx/example-v4/Resources/common/tank-pro.skel


BIN
spine-cocos2dx/example-v4/Resources/common/tank.png


Alguns arquivos não foram mostrados porque muitos arquivos mudaram nesse diff