浏览代码

Merge branch '3.7-beta' into 3.7-beta-cpp

badlogic 6 年之前
父节点
当前提交
990ccc4606
共有 100 个文件被更改,包括 685 次插入756 次删除
  1. 1 0
      .gitignore
  2. 二进制
      examples/alien/alien-ess.spine
  3. 二进制
      examples/alien/alien-pro.spine
  4. 0 0
      examples/alien/export/alien-ess.json
  5. 二进制
      examples/alien/export/alien-ess.skel
  6. 38 45
      examples/alien/export/alien-pma.atlas
  7. 二进制
      examples/alien/export/alien-pma.png
  8. 0 0
      examples/alien/export/alien-pro.json
  9. 二进制
      examples/alien/export/alien-pro.skel
  10. 38 45
      examples/alien/export/alien.atlas
  11. 二进制
      examples/alien/export/alien.png
  12. 二进制
      examples/alien/images/blown-up-neck.png
  13. 二进制
      examples/alien/images/burst03-fg.png
  14. 二进制
      examples/alien/images/eye-stalk.png
  15. 二进制
      examples/coin/coin-pro.spine
  16. 0 0
      examples/coin/export/coin-pro.json
  17. 二进制
      examples/coin/export/coin-pro.skel
  18. 二进制
      examples/dragon/dragon-ess.spine
  19. 0 0
      examples/dragon/export/dragon-ess.json
  20. 二进制
      examples/dragon/export/dragon-ess.skel
  21. 11 6
      examples/export/export.sh
  22. 297 283
      examples/export/runtimes.sh
  23. 0 0
      examples/goblins/export/goblins-ess.json
  24. 二进制
      examples/goblins/export/goblins-ess.skel
  25. 0 0
      examples/goblins/export/goblins-pro.json
  26. 二进制
      examples/goblins/export/goblins-pro.skel
  27. 二进制
      examples/goblins/goblins-ess.spine
  28. 二进制
      examples/goblins/goblins-pro.spine
  29. 0 0
      examples/hero/export/hero-ess.json
  30. 二进制
      examples/hero/export/hero-ess.skel
  31. 0 0
      examples/hero/export/hero-pro.json
  32. 二进制
      examples/hero/export/hero-pro.skel
  33. 二进制
      examples/hero/hero-ess.spine
  34. 二进制
      examples/hero/hero-pro.spine
  35. 0 0
      examples/owl/export/owl-pro.json
  36. 二进制
      examples/owl/export/owl-pro.skel
  37. 1 1
      examples/owl/license.txt
  38. 二进制
      examples/owl/owl-pro.spine
  39. 0 0
      examples/powerup/export/powerup-ess.json
  40. 二进制
      examples/powerup/export/powerup-ess.skel
  41. 0 0
      examples/powerup/export/powerup-pro.json
  42. 二进制
      examples/powerup/export/powerup-pro.skel
  43. 二进制
      examples/powerup/powerup-ess.spine
  44. 二进制
      examples/powerup/powerup-pro.spine
  45. 65 93
      examples/raptor/export/raptor-pma.atlas
  46. 二进制
      examples/raptor/export/raptor-pma.png
  47. 0 0
      examples/raptor/export/raptor-pro.json
  48. 二进制
      examples/raptor/export/raptor-pro.skel
  49. 65 93
      examples/raptor/export/raptor.atlas
  50. 二进制
      examples/raptor/export/raptor.png
  51. 二进制
      examples/raptor/images/back-arm.png
  52. 二进制
      examples/raptor/images/dust01.png
  53. 二进制
      examples/raptor/images/dust02.png
  54. 二进制
      examples/raptor/images/dust03.png
  55. 二进制
      examples/raptor/images/front-arm.png
  56. 二进制
      examples/raptor/images/lower-leg.png
  57. 0 0
      examples/raptor/images/raptor-back-arm.png
  58. 二进制
      examples/raptor/images/raptor-body.png
  59. 二进制
      examples/raptor/images/raptor-front-arm.png
  60. 二进制
      examples/raptor/images/raptor-front-leg.png
  61. 二进制
      examples/raptor/images/raptor-horn-back.png
  62. 二进制
      examples/raptor/images/raptor-horn.png
  63. 二进制
      examples/raptor/images/raptor-jaw.png
  64. 二进制
      examples/raptor/images/raptor-saddle-noshadow.png
  65. 0 0
      examples/raptor/images/raptor-saddle-strap-back.png
  66. 二进制
      examples/raptor/images/raptor-saddle-w-shadow.png
  67. 二进制
      examples/raptor/raptor-pro.spine
  68. 21 0
      examples/readme.txt
  69. 0 0
      examples/speedy/export/speedy-ess.json
  70. 二进制
      examples/speedy/export/speedy-ess.skel
  71. 二进制
      examples/speedy/speedy-ess.spine
  72. 二进制
      examples/spineboy/audio/Footstep.wav
  73. 0 0
      examples/spineboy/export/spineboy-ess.json
  74. 二进制
      examples/spineboy/export/spineboy-ess.skel
  75. 74 95
      examples/spineboy/export/spineboy-pma.atlas
  76. 二进制
      examples/spineboy/export/spineboy-pma.png
  77. 0 0
      examples/spineboy/export/spineboy-pro.json
  78. 二进制
      examples/spineboy/export/spineboy-pro.skel
  79. 74 95
      examples/spineboy/export/spineboy.atlas
  80. 二进制
      examples/spineboy/export/spineboy.png
  81. 二进制
      examples/spineboy/images/dust01.png
  82. 二进制
      examples/spineboy/images/dust02.png
  83. 二进制
      examples/spineboy/images/dust03.png
  84. 二进制
      examples/spineboy/images/front-foot.png
  85. 二进制
      examples/spineboy/images/front-thigh.png
  86. 二进制
      examples/spineboy/images/front-upper-arm.png
  87. 二进制
      examples/spineboy/images/muzzle-glow.png
  88. 二进制
      examples/spineboy/images/muzzle01.png
  89. 二进制
      examples/spineboy/images/muzzle02.png
  90. 二进制
      examples/spineboy/images/muzzle03.png
  91. 二进制
      examples/spineboy/images/muzzle04.png
  92. 二进制
      examples/spineboy/images/muzzle05.png
  93. 0 0
      examples/spineboy/images/portal-streaks2.png
  94. 二进制
      examples/spineboy/images/rear-bracer.png
  95. 二进制
      examples/spineboy/images/rear-foot.png
  96. 二进制
      examples/spineboy/images/rear-shin.png
  97. 二进制
      examples/spineboy/images/rear-thigh.png
  98. 二进制
      examples/spineboy/images/rear-upper-arm.png
  99. 二进制
      examples/spineboy/spineboy-ess.spine
  100. 二进制
      examples/spineboy/spineboy-pro.spine

+ 1 - 0
.gitignore

@@ -52,6 +52,7 @@ spine-csharp/src/*.meta
 spine-csharp/src/*.cs.meta
 spine-csharp/src/Attachments/*.cs.meta
 
+spine-monogame/.vs/
 spine-monogame/example/bin
 spine-monogame/example/obj
 spine-monogame/example/Content/bin/

二进制
examples/alien/alien-ess.spine


二进制
examples/alien/alien-pro.spine


文件差异内容过多而无法显示
+ 0 - 0
examples/alien/export/alien-ess.json


二进制
examples/alien/export/alien-ess.skel


+ 38 - 45
examples/alien/export/alien-pma.atlas

@@ -5,190 +5,183 @@ format: RGBA8888
 filter: Linear,Linear
 repeat: none
 back-foot
-  rotate: true
-  xy: 1015, 1014
+  rotate: false
+  xy: 735, 857
   size: 8, 6
   orig: 8, 6
   offset: 0, 0
   index: -1
 back-shin
   rotate: false
-  xy: 209, 24
+  xy: 681, 680
   size: 21, 24
   orig: 21, 24
   offset: 0, 0
   index: -1
 back-thigh
   rotate: false
-  xy: 313, 378
+  xy: 343, 553
   size: 24, 24
   orig: 24, 24
   offset: 0, 0
   index: -1
 backarmor
   rotate: false
-  xy: 2, 2
+  xy: 261, 325
   size: 81, 91
   orig: 81, 91
   offset: 0, 0
   index: -1
-blown-up-neck
-  rotate: false
-  xy: 260, 404
-  size: 77, 52
-  orig: 77, 52
-  offset: 0, 0
-  index: -1
 body
   rotate: false
-  xy: 260, 526
+  xy: 918, 903
   size: 98, 118
   orig: 98, 118
   offset: 0, 0
   index: -1
 burst01
   rotate: true
-  xy: 706, 650
+  xy: 576, 706
   size: 143, 155
   orig: 143, 155
   offset: 0, 0
   index: -1
 burst02
-  rotate: false
-  xy: 548, 669
+  rotate: true
+  xy: 735, 865
   size: 156, 181
   orig: 156, 181
   offset: 0, 0
   index: -1
 burst03-bg
-  rotate: false
-  xy: 707, 795
+  rotate: true
+  xy: 2, 10
   size: 276, 227
   orig: 276, 227
   offset: 0, 0
   index: -1
 burst03-fg
   rotate: false
-  xy: 2, 723
-  size: 339, 299
-  orig: 339, 299
+  xy: 2, 542
+  size: 339, 221
+  orig: 339, 221
   offset: 0, 0
   index: -1
 eye
   rotate: false
-  xy: 260, 646
+  xy: 494, 640
   size: 75, 75
   orig: 75, 75
   offset: 0, 0
   index: -1
 eye-highlight
   rotate: false
-  xy: 394, 665
+  xy: 231, 205
   size: 22, 22
   orig: 22, 22
   offset: 0, 0
   index: -1
 eye-pupil
   rotate: false
-  xy: 423, 698
+  xy: 963, 883
   size: 18, 18
   orig: 18, 18
   offset: 0, 0
   index: -1
 eye-stalk
   rotate: false
-  xy: 260, 458
-  size: 79, 66
-  orig: 79, 66
+  xy: 494, 572
+  size: 74, 66
+  orig: 74, 66
   offset: 0, 0
   index: -1
 front-foot
   rotate: false
-  xy: 341, 518
+  xy: 2, 2
   size: 10, 6
   orig: 10, 6
   offset: 0, 0
   index: -1
 front-lower-arm
   rotate: false
-  xy: 337, 653
+  xy: 571, 641
   size: 55, 63
   orig: 55, 63
   offset: 0, 0
   index: -1
 front-shin
   rotate: false
-  xy: 985, 935
+  xy: 343, 735
   size: 25, 28
   orig: 25, 28
   offset: 0, 0
   index: -1
 front-thigh
   rotate: false
-  xy: 394, 689
+  xy: 261, 296
   size: 27, 27
   orig: 27, 27
   offset: 0, 0
   index: -1
 front-upper-arm
   rotate: true
-  xy: 985, 965
+  xy: 231, 229
   size: 57, 28
   orig: 57, 28
   offset: 0, 0
   index: -1
 head
-  rotate: true
-  xy: 863, 644
+  rotate: false
+  xy: 343, 579
   size: 149, 136
   orig: 149, 136
   offset: 0, 0
   index: -1
 lower-back-arm
   rotate: false
-  xy: 260, 356
+  xy: 628, 658
   size: 51, 46
   orig: 51, 46
   offset: 0, 0
   index: -1
 metaljaw
-  rotate: false
-  xy: 85, 7
+  rotate: true
+  xy: 261, 418
   size: 122, 86
   orig: 122, 86
   offset: 0, 0
   index: -1
 splat01
-  rotate: true
-  xy: 2, 95
+  rotate: false
+  xy: 2, 288
   size: 257, 252
   orig: 257, 252
   offset: 0, 0
   index: -1
 splat01-fg
   rotate: false
-  xy: 343, 718
+  xy: 371, 717
   size: 203, 132
   orig: 203, 132
   offset: 0, 0
   index: -1
 splat02
-  rotate: true
-  xy: 2, 354
+  rotate: false
+  xy: 2, 765
   size: 367, 256
   orig: 367, 256
   offset: 0, 0
   index: -1
 splat03
   rotate: false
-  xy: 343, 852
+  xy: 371, 851
   size: 362, 170
   orig: 362, 170
   offset: 0, 0
   index: -1
 upper-back-arm
-  rotate: false
-  xy: 209, 50
+  rotate: true
+  xy: 918, 871
   size: 30, 43
   orig: 30, 43
   offset: 0, 0

二进制
examples/alien/export/alien-pma.png


文件差异内容过多而无法显示
+ 0 - 0
examples/alien/export/alien-pro.json


二进制
examples/alien/export/alien-pro.skel


+ 38 - 45
examples/alien/export/alien.atlas

@@ -5,190 +5,183 @@ format: RGBA8888
 filter: Linear,Linear
 repeat: none
 back-foot
-  rotate: true
-  xy: 1015, 1014
+  rotate: false
+  xy: 735, 857
   size: 8, 6
   orig: 8, 6
   offset: 0, 0
   index: -1
 back-shin
   rotate: false
-  xy: 209, 24
+  xy: 681, 680
   size: 21, 24
   orig: 21, 24
   offset: 0, 0
   index: -1
 back-thigh
   rotate: false
-  xy: 313, 378
+  xy: 343, 553
   size: 24, 24
   orig: 24, 24
   offset: 0, 0
   index: -1
 backarmor
   rotate: false
-  xy: 2, 2
+  xy: 261, 325
   size: 81, 91
   orig: 81, 91
   offset: 0, 0
   index: -1
-blown-up-neck
-  rotate: false
-  xy: 260, 404
-  size: 77, 52
-  orig: 77, 52
-  offset: 0, 0
-  index: -1
 body
   rotate: false
-  xy: 260, 526
+  xy: 918, 903
   size: 98, 118
   orig: 98, 118
   offset: 0, 0
   index: -1
 burst01
   rotate: true
-  xy: 706, 650
+  xy: 576, 706
   size: 143, 155
   orig: 143, 155
   offset: 0, 0
   index: -1
 burst02
-  rotate: false
-  xy: 548, 669
+  rotate: true
+  xy: 735, 865
   size: 156, 181
   orig: 156, 181
   offset: 0, 0
   index: -1
 burst03-bg
-  rotate: false
-  xy: 707, 795
+  rotate: true
+  xy: 2, 10
   size: 276, 227
   orig: 276, 227
   offset: 0, 0
   index: -1
 burst03-fg
   rotate: false
-  xy: 2, 723
-  size: 339, 299
-  orig: 339, 299
+  xy: 2, 542
+  size: 339, 221
+  orig: 339, 221
   offset: 0, 0
   index: -1
 eye
   rotate: false
-  xy: 260, 646
+  xy: 494, 640
   size: 75, 75
   orig: 75, 75
   offset: 0, 0
   index: -1
 eye-highlight
   rotate: false
-  xy: 394, 665
+  xy: 231, 205
   size: 22, 22
   orig: 22, 22
   offset: 0, 0
   index: -1
 eye-pupil
   rotate: false
-  xy: 423, 698
+  xy: 963, 883
   size: 18, 18
   orig: 18, 18
   offset: 0, 0
   index: -1
 eye-stalk
   rotate: false
-  xy: 260, 458
-  size: 79, 66
-  orig: 79, 66
+  xy: 494, 572
+  size: 74, 66
+  orig: 74, 66
   offset: 0, 0
   index: -1
 front-foot
   rotate: false
-  xy: 341, 518
+  xy: 2, 2
   size: 10, 6
   orig: 10, 6
   offset: 0, 0
   index: -1
 front-lower-arm
   rotate: false
-  xy: 337, 653
+  xy: 571, 641
   size: 55, 63
   orig: 55, 63
   offset: 0, 0
   index: -1
 front-shin
   rotate: false
-  xy: 985, 935
+  xy: 343, 735
   size: 25, 28
   orig: 25, 28
   offset: 0, 0
   index: -1
 front-thigh
   rotate: false
-  xy: 394, 689
+  xy: 261, 296
   size: 27, 27
   orig: 27, 27
   offset: 0, 0
   index: -1
 front-upper-arm
   rotate: true
-  xy: 985, 965
+  xy: 231, 229
   size: 57, 28
   orig: 57, 28
   offset: 0, 0
   index: -1
 head
-  rotate: true
-  xy: 863, 644
+  rotate: false
+  xy: 343, 579
   size: 149, 136
   orig: 149, 136
   offset: 0, 0
   index: -1
 lower-back-arm
   rotate: false
-  xy: 260, 356
+  xy: 628, 658
   size: 51, 46
   orig: 51, 46
   offset: 0, 0
   index: -1
 metaljaw
-  rotate: false
-  xy: 85, 7
+  rotate: true
+  xy: 261, 418
   size: 122, 86
   orig: 122, 86
   offset: 0, 0
   index: -1
 splat01
-  rotate: true
-  xy: 2, 95
+  rotate: false
+  xy: 2, 288
   size: 257, 252
   orig: 257, 252
   offset: 0, 0
   index: -1
 splat01-fg
   rotate: false
-  xy: 343, 718
+  xy: 371, 717
   size: 203, 132
   orig: 203, 132
   offset: 0, 0
   index: -1
 splat02
-  rotate: true
-  xy: 2, 354
+  rotate: false
+  xy: 2, 765
   size: 367, 256
   orig: 367, 256
   offset: 0, 0
   index: -1
 splat03
   rotate: false
-  xy: 343, 852
+  xy: 371, 851
   size: 362, 170
   orig: 362, 170
   offset: 0, 0
   index: -1
 upper-back-arm
-  rotate: false
-  xy: 209, 50
+  rotate: true
+  xy: 918, 871
   size: 30, 43
   orig: 30, 43
   offset: 0, 0

二进制
examples/alien/export/alien.png


二进制
examples/alien/images/blown-up-neck.png


二进制
examples/alien/images/burst03-fg.png


二进制
examples/alien/images/eye-stalk.png


二进制
examples/coin/coin-pro.spine


文件差异内容过多而无法显示
+ 0 - 0
examples/coin/export/coin-pro.json


二进制
examples/coin/export/coin-pro.skel


二进制
examples/dragon/dragon-ess.spine


文件差异内容过多而无法显示
+ 0 - 0
examples/dragon/export/dragon-ess.json


二进制
examples/dragon/export/dragon-ess.skel


+ 11 - 6
examples/export/export.sh

@@ -1,18 +1,18 @@
 #!/bin/sh
 set -e
+SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null && pwd )"
+cd $SCRIPT_DIR
 
 SPINE_EXE="C:/Program Files (x86)/Spine/Spine.com"
-
 if [ ! -f "$SPINE_EXE" ]; then
    SPINE_EXE="/mnt/c/Program Files (x86)/Spine/Spine.com"
 fi
-
 if [ ! -f "$SPINE_EXE" ]; then
 	SPINE_EXE="/Applications/Spine/Spine.app/Contents/MacOS/Spine"
 fi
 echo "Spine exe: $SPINE_EXE"
 
-echo "Cleaning..."
+echo "Cleaning export directories ..."
 rm -rf ../alien/export/*
 rm -rf ../coin/export/*
 rm -rf ../dragon/export/*
@@ -94,8 +94,8 @@ echo "Exporting..."
 -i ../stretchyman/images -o ../stretchyman/export -n stretchyman -p atlas-1.0.json \
 -i ../stretchyman/images -o ../stretchyman/export -n stretchyman-pma -p atlas-1.0-pma.json \
 \
--i ../stretchyman-stretchy-ik/stretchyman-stretchy-ik.spine -o ../stretchyman-stretchy-ik/export -e json.json \
--i ../stretchyman-stretchy-ik/stretchyman-stretchy-ik.spine -o ../stretchyman-stretchy-ik/export -e binary.json \
+-i ../stretchyman/stretchyman-stretchy-ik-pro.spine -o ../stretchyman/export -e json.json \
+-i ../stretchyman/stretchyman-stretchy-ik-pro.spine -o ../stretchyman/export -e binary.json \
 \
 -i ../tank/tank-pro.spine -o ../tank/export -e json.json \
 -i ../tank/tank-pro.spine -o ../tank/export -e binary.json \
@@ -110,4 +110,9 @@ echo "Exporting..."
 -i ../owl/owl-pro.spine -o ../owl/export -e json.json \
 -i ../owl/owl-pro.spine -o ../owl/export -e binary.json \
 -i ../owl/images -o ../owl/export -n owl -p atlas-0.5.json \
--i ../owl/images -o ../owl/export -n owl-pma -p atlas-0.5-pma.json
+-i ../owl/images -o ../owl/export -n owl-pma -p atlas-0.5-pma.json \
+\
+-i ../windmill/windmill-ess.spine -o ../windmill/export -e json.json \
+-i ../windmill/windmill-ess.spine -o ../windmill/export -e binary.json \
+-i ../windmill/images -o ../windmill/export -n windmill -p atlas-0.5.json \
+-i ../windmill/images -o ../windmill/export -n windmill-pma -p atlas-0.5-pma.json

+ 297 - 283
examples/export/runtimes.sh

@@ -1,354 +1,368 @@
 #!/bin/sh
 set -e
-echo "Copying assets to runtimes..."
+
+SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null && pwd )"
+cd $SCRIPT_DIR
+
+RUNTIME_DIR=${1%/}
+if [ ! -d "$RUNTIME_DIR/" ]; then
+	echo "Please provide the path to the spine-runtimes/ directory."
+	exit -1
+fi
+if [ ! -f "$RUNTIME_DIR/CHANGELOG.md" ]; then
+	echo "Provided runtime directory $RUNTIME_DIR is not a spine-runtimes/ directory."
+	exit -1
+fi
+echo "Runtime directory: $RUNTIME_DIR"
+echo "Copying assets to runtimes ..."
 
 echo ""
 echo "spine-libgdx"
-rm -rf ../../spine-libgdx/spine-libgdx-tests/assets/goblins/*
-cp -f ../goblins/export/*.json ../../spine-libgdx/spine-libgdx-tests/assets/goblins/
-cp -f ../goblins/export/*.skel ../../spine-libgdx/spine-libgdx-tests/assets/goblins/
-cp -f ../goblins/export/*-pma.* ../../spine-libgdx/spine-libgdx-tests/assets/goblins/
-
-rm -rf ../../spine-libgdx/spine-libgdx-tests/assets/raptor/*
-cp -f ../raptor/export/*.json ../../spine-libgdx/spine-libgdx-tests/assets/raptor/
-cp -f ../raptor/export/*.skel ../../spine-libgdx/spine-libgdx-tests/assets/raptor/
-cp -f ../raptor/export/*-pma.* ../../spine-libgdx/spine-libgdx-tests/assets/raptor/
-
-rm -rf ../../spine-libgdx/spine-libgdx-tests/assets/spineboy/*
-cp -f ../spineboy/export/*.json ../../spine-libgdx/spine-libgdx-tests/assets/spineboy/
-cp -r ../spineboy/export/*.skel ../../spine-libgdx/spine-libgdx-tests/assets/spineboy/
-cp -r ../spineboy/export/*-pma.* ../../spine-libgdx/spine-libgdx-tests/assets/spineboy/
-
-rm -rf ../../spine-libgdx/spine-libgdx-tests/assets/coin/*
-cp -f ../coin/export/*.json ../../spine-libgdx/spine-libgdx-tests/assets/coin/
-cp -f ../coin/export/*.skel ../../spine-libgdx/spine-libgdx-tests/assets/coin/
-cp -f ../coin/export/*-pma.* ../../spine-libgdx/spine-libgdx-tests/assets/coin/
+rm "$RUNTIME_DIR/spine-libgdx/spine-libgdx-tests/assets/goblins/"*
+cp -f ../goblins/export/*.json "$RUNTIME_DIR/spine-libgdx/spine-libgdx-tests/assets/goblins/"
+cp -f ../goblins/export/*.skel "$RUNTIME_DIR/spine-libgdx/spine-libgdx-tests/assets/goblins/"
+cp -f ../goblins/export/*-pma.* "$RUNTIME_DIR/spine-libgdx/spine-libgdx-tests/assets/goblins/"
+
+rm "$RUNTIME_DIR/spine-libgdx/spine-libgdx-tests/assets/raptor/"*
+cp -f ../raptor/export/*.json "$RUNTIME_DIR/spine-libgdx/spine-libgdx-tests/assets/raptor/"
+cp -f ../raptor/export/*.skel "$RUNTIME_DIR/spine-libgdx/spine-libgdx-tests/assets/raptor/"
+cp -f ../raptor/export/*-pma.* "$RUNTIME_DIR/spine-libgdx/spine-libgdx-tests/assets/raptor/"
+
+rm "$RUNTIME_DIR/spine-libgdx/spine-libgdx-tests/assets/spineboy/"*
+cp -f ../spineboy/export/*.json "$RUNTIME_DIR/spine-libgdx/spine-libgdx-tests/assets/spineboy/"
+cp -r ../spineboy/export/*.skel "$RUNTIME_DIR/spine-libgdx/spine-libgdx-tests/assets/spineboy/"
+cp -r ../spineboy/export/*-pma.* "$RUNTIME_DIR/spine-libgdx/spine-libgdx-tests/assets/spineboy/"
+
+rm "$RUNTIME_DIR/spine-libgdx/spine-libgdx-tests/assets/coin/"*
+cp -f ../coin/export/*.json "$RUNTIME_DIR/spine-libgdx/spine-libgdx-tests/assets/coin/"
+cp -f ../coin/export/*.skel "$RUNTIME_DIR/spine-libgdx/spine-libgdx-tests/assets/coin/"
+cp -f ../coin/export/*-pma.* "$RUNTIME_DIR/spine-libgdx/spine-libgdx-tests/assets/coin/"
 
 echo "spine-as3"
-rm -f ../../spine-as3/spine-as3-example/src/spineboy.*
-cp -f ../spineboy/export/spineboy-ess.json ../../spine-as3/spine-as3-example/src/
-cp -f ../spineboy/export/spineboy.atlas ../../spine-as3/spine-as3-example/src/
-cp -f ../spineboy/export/spineboy.png ../../spine-as3/spine-as3-example/src/
+rm "$RUNTIME_DIR/spine-as3/spine-as3-example/src/spineboy".*
+cp -f ../spineboy/export/spineboy-ess.json "$RUNTIME_DIR/spine-as3/spine-as3-example/src/"
+cp -f ../spineboy/export/spineboy.atlas "$RUNTIME_DIR/spine-as3/spine-as3-example/src/"
+cp -f ../spineboy/export/spineboy.png "$RUNTIME_DIR/spine-as3/spine-as3-example/src/"
 
 echo "spine-cocos2d-objc"
-rm -f ../../spine-cocos2d-objc/Resources/*
+rm "$RUNTIME_DIR/spine-cocos2d-objc/Resources/"*
 
-cp -f ../coin/export/coin-pro.json ../../spine-cocos2d-objc/Resources/
-cp -f ../coin/export/coin.atlas ../../spine-cocos2d-objc/Resources/
-cp -f ../coin/export/coin.png ../../spine-cocos2d-objc/Resources/
+cp -f ../coin/export/coin-pro.json "$RUNTIME_DIR/spine-cocos2d-objc/Resources/"
+cp -f ../coin/export/coin.atlas "$RUNTIME_DIR/spine-cocos2d-objc/Resources/"
+cp -f ../coin/export/coin.png "$RUNTIME_DIR/spine-cocos2d-objc/Resources/"
 
-cp -f ../goblins/export/goblins-pro.json ../../spine-cocos2d-objc/Resources/
-cp -f ../goblins/export/goblins.atlas ../../spine-cocos2d-objc/Resources/
-cp -f ../goblins/export/goblins.png ../../spine-cocos2d-objc/Resources/
+cp -f ../goblins/export/goblins-pro.json "$RUNTIME_DIR/spine-cocos2d-objc/Resources/"
+cp -f ../goblins/export/goblins.atlas "$RUNTIME_DIR/spine-cocos2d-objc/Resources/"
+cp -f ../goblins/export/goblins.png "$RUNTIME_DIR/spine-cocos2d-objc/Resources/"
 
-cp -f ../raptor/export/raptor-pro.json ../../spine-cocos2d-objc/Resources/
-cp -f ../raptor/export/raptor.atlas ../../spine-cocos2d-objc/Resources/
-cp -f ../raptor/export/raptor.png ../../spine-cocos2d-objc/Resources/
+cp -f ../raptor/export/raptor-pro.json "$RUNTIME_DIR/spine-cocos2d-objc/Resources/"
+cp -f ../raptor/export/raptor.atlas "$RUNTIME_DIR/spine-cocos2d-objc/Resources/"
+cp -f ../raptor/export/raptor.png "$RUNTIME_DIR/spine-cocos2d-objc/Resources/"
 
-cp -f ../spineboy/export/spineboy-ess.json ../../spine-cocos2d-objc/Resources/
-cp -f ../spineboy/export/spineboy.atlas ../../spine-cocos2d-objc/Resources/
-cp -f ../spineboy/export/spineboy.png ../../spine-cocos2d-objc/Resources/
+cp -f ../spineboy/export/spineboy-ess.json "$RUNTIME_DIR/spine-cocos2d-objc/Resources/"
+cp -f ../spineboy/export/spineboy.atlas "$RUNTIME_DIR/spine-cocos2d-objc/Resources/"
+cp -f ../spineboy/export/spineboy.png "$RUNTIME_DIR/spine-cocos2d-objc/Resources/"
 
-cp -f ../tank/export/tank-pro.json ../../spine-cocos2d-objc/Resources/
-cp -f ../tank/export/tank.atlas ../../spine-cocos2d-objc/Resources/
-cp -f ../tank/export/tank.png ../../spine-cocos2d-objc/Resources/
+cp -f ../tank/export/tank-pro.json "$RUNTIME_DIR/spine-cocos2d-objc/Resources/"
+cp -f ../tank/export/tank.atlas "$RUNTIME_DIR/spine-cocos2d-objc/Resources/"
+cp -f ../tank/export/tank.png "$RUNTIME_DIR/spine-cocos2d-objc/Resources/"
 
 echo "spine-cocos2dx"
-rm -f ../../spine-cocos2dx/example/Resources/common/*
+rm "$RUNTIME_DIR/spine-cocos2dx/example/Resources/common/"*
 
-cp -f ../coin/export/coin-pro.skel ../../spine-cocos2dx/example/Resources/common/
-cp -f ../coin/export/coin.atlas ../../spine-cocos2dx/example/Resources/common/
-cp -f ../coin/export/coin.png ../../spine-cocos2dx/example/Resources/common/
+cp -f ../coin/export/coin-pro.skel "$RUNTIME_DIR/spine-cocos2dx/example/Resources/common/"
+cp -f ../coin/export/coin.atlas "$RUNTIME_DIR/spine-cocos2dx/example/Resources/common/"
+cp -f ../coin/export/coin.png "$RUNTIME_DIR/spine-cocos2dx/example/Resources/common/"
 
-cp -f ../goblins/export/goblins-pro.json ../../spine-cocos2dx/example/Resources/common/
-cp -f ../goblins/export/goblins.atlas ../../spine-cocos2dx/example/Resources/common/
-cp -f ../goblins/export/goblins.png ../../spine-cocos2dx/example/Resources/common/
+cp -f ../goblins/export/goblins-pro.json "$RUNTIME_DIR/spine-cocos2dx/example/Resources/common/"
+cp -f ../goblins/export/goblins.atlas "$RUNTIME_DIR/spine-cocos2dx/example/Resources/common/"
+cp -f ../goblins/export/goblins.png "$RUNTIME_DIR/spine-cocos2dx/example/Resources/common/"
 
-cp -f ../raptor/export/raptor-pro.json ../../spine-cocos2dx/example/Resources/common/
-cp -f ../raptor/export/raptor.atlas ../../spine-cocos2dx/example/Resources/common/
-cp -f ../raptor/export/raptor.png ../../spine-cocos2dx/example/Resources/common/
+cp -f ../raptor/export/raptor-pro.json "$RUNTIME_DIR/spine-cocos2dx/example/Resources/common/"
+cp -f ../raptor/export/raptor.atlas "$RUNTIME_DIR/spine-cocos2dx/example/Resources/common/"
+cp -f ../raptor/export/raptor.png "$RUNTIME_DIR/spine-cocos2dx/example/Resources/common/"
 
-cp -f ../spineboy/export/spineboy-ess.json ../../spine-cocos2dx/example/Resources/common/
-cp -f ../spineboy/export/spineboy.atlas ../../spine-cocos2dx/example/Resources/common/
-cp -f ../spineboy/export/spineboy.png ../../spine-cocos2dx/example/Resources/common/
+cp -f ../spineboy/export/spineboy-pro.json "$RUNTIME_DIR/spine-cocos2dx/example/Resources/common/"
+cp -f ../spineboy/export/spineboy.atlas "$RUNTIME_DIR/spine-cocos2dx/example/Resources/common/"
+cp -f ../spineboy/export/spineboy.png "$RUNTIME_DIR/spine-cocos2dx/example/Resources/common/"
 
-cp -f ../tank/export/tank-pro.skel ../../spine-cocos2dx/example/Resources/common/
-cp -f ../tank/export/tank.atlas ../../spine-cocos2dx/example/Resources/common/
-cp -f ../tank/export/tank.png ../../spine-cocos2dx/example/Resources/common/
+cp -f ../tank/export/tank-pro.skel "$RUNTIME_DIR/spine-cocos2dx/example/Resources/common/"
+cp -f ../tank/export/tank.atlas "$RUNTIME_DIR/spine-cocos2dx/example/Resources/common/"
+cp -f ../tank/export/tank.png "$RUNTIME_DIR/spine-cocos2dx/example/Resources/common/"
 
 echo "spine-corona"
-rm -f ../../spine-corona/data/*
-cp -f ../coin/export/coin-pro.json ../../spine-corona/data
-cp -f ../coin/export/coin.atlas ../../spine-corona/data
-cp -f ../coin/export/coin.png ../../spine-corona/data
+rm "$RUNTIME_DIR/spine-corona/data/"*
+cp -f ../coin/export/coin-pro.json "$RUNTIME_DIR/spine-corona/data"
+cp -f ../coin/export/coin.atlas "$RUNTIME_DIR/spine-corona/data"
+cp -f ../coin/export/coin.png "$RUNTIME_DIR/spine-corona/data"
 
-cp -f ../goblins/export/goblins-pro.json ../../spine-corona/data
-cp -f ../goblins/export/goblins.atlas ../../spine-corona/data
-cp -f ../goblins/export/goblins.png ../../spine-corona/data
+cp -f ../goblins/export/goblins-pro.json "$RUNTIME_DIR/spine-corona/data"
+cp -f ../goblins/export/goblins.atlas "$RUNTIME_DIR/spine-corona/data"
+cp -f ../goblins/export/goblins.png "$RUNTIME_DIR/spine-corona/data"
 
-cp -f ../raptor/export/raptor-pro.json ../../spine-corona/data
-cp -f ../raptor/export/raptor.atlas ../../spine-corona/data
-cp -f ../raptor/export/raptor.png ../../spine-corona/data
+cp -f ../raptor/export/raptor-pro.json "$RUNTIME_DIR/spine-corona/data"
+cp -f ../raptor/export/raptor.atlas "$RUNTIME_DIR/spine-corona/data"
+cp -f ../raptor/export/raptor.png "$RUNTIME_DIR/spine-corona/data"
 
-cp -f ../spineboy/export/spineboy-pro.json ../../spine-corona/data
-cp -f ../spineboy/export/spineboy.atlas ../../spine-corona/data
-cp -f ../spineboy/export/spineboy.png ../../spine-corona/data
+cp -f ../spineboy/export/spineboy-pro.json "$RUNTIME_DIR/spine-corona/data"
+cp -f ../spineboy/export/spineboy.atlas "$RUNTIME_DIR/spine-corona/data"
+cp -f ../spineboy/export/spineboy.png "$RUNTIME_DIR/spine-corona/data"
 
-cp -f ../tank/export/tank-pro.json ../../spine-corona/data
-cp -f ../tank/export/tank.atlas ../../spine-corona/data
-cp -f ../tank/export/tank.png ../../spine-corona/data
+cp -f ../tank/export/tank-pro.json "$RUNTIME_DIR/spine-corona/data"
+cp -f ../tank/export/tank.atlas "$RUNTIME_DIR/spine-corona/data"
+cp -f ../tank/export/tank.png "$RUNTIME_DIR/spine-corona/data"
 
-cp -f ../vine/export/vine-pro.json ../../spine-corona/data
-cp -f ../vine/export/vine.atlas ../../spine-corona/data
-cp -f ../vine/export/vine.png ../../spine-corona/data
+cp -f ../vine/export/vine-pro.json "$RUNTIME_DIR/spine-corona/data"
+cp -f ../vine/export/vine.atlas "$RUNTIME_DIR/spine-corona/data"
+cp -f ../vine/export/vine.png "$RUNTIME_DIR/spine-corona/data"
 
-cp -f ../stretchyman/export/stretchyman-pro.json ../../spine-corona/data
-cp -f ../stretchyman/export/stretchyman.atlas ../../spine-corona/data
-cp -f ../stretchyman/export/stretchyman.png ../../spine-corona/data
+cp -f ../stretchyman/export/stretchyman-pro.json "$RUNTIME_DIR/spine-corona/data"
+cp -f ../stretchyman/export/stretchyman.atlas "$RUNTIME_DIR/spine-corona/data"
+cp -f ../stretchyman/export/stretchyman.png "$RUNTIME_DIR/spine-corona/data"
 
-cp -f ../stretchyman-stretchy-ik/export/stretchyman-stretchy-ik.json ../../spine-corona/data
+cp -f ../stretchyman/export/stretchyman-stretchy-ik-pro.json "$RUNTIME_DIR/spine-corona/data"
 
-cp -f ../owl/export/owl-pro.json ../../spine-corona/data
-cp -f ../owl/export/owl.atlas ../../spine-corona/data
-cp -f ../owl/export/owl.png ../../spine-corona/data
+cp -f ../owl/export/owl-pro.json "$RUNTIME_DIR/spine-corona/data"
+cp -f ../owl/export/owl.atlas "$RUNTIME_DIR/spine-corona/data"
+cp -f ../owl/export/owl.png "$RUNTIME_DIR/spine-corona/data"
 
 echo "spine-love"
-rm -f ../../spine-love/data/*
-cp -f ../coin/export/coin-pro.json ../../spine-love/data
-cp -f ../coin/export/coin.atlas ../../spine-love/data
-cp -f ../coin/export/coin.png ../../spine-love/data
+rm "$RUNTIME_DIR/spine-love/data/"*
+cp -f ../coin/export/coin-pro.json "$RUNTIME_DIR/spine-love/data"
+cp -f ../coin/export/coin.atlas "$RUNTIME_DIR/spine-love/data"
+cp -f ../coin/export/coin.png "$RUNTIME_DIR/spine-love/data"
 
-cp -f ../goblins/export/goblins-pro.json ../../spine-love/data
-cp -f ../goblins/export/goblins.atlas ../../spine-love/data
-cp -f ../goblins/export/goblins.png ../../spine-love/data
+cp -f ../goblins/export/goblins-pro.json "$RUNTIME_DIR/spine-love/data"
+cp -f ../goblins/export/goblins.atlas "$RUNTIME_DIR/spine-love/data"
+cp -f ../goblins/export/goblins.png "$RUNTIME_DIR/spine-love/data"
 
-cp -f ../raptor/export/raptor-pro.json ../../spine-love/data
-cp -f ../raptor/export/raptor.atlas ../../spine-love/data
-cp -f ../raptor/export/raptor.png ../../spine-love/data
+cp -f ../raptor/export/raptor-pro.json "$RUNTIME_DIR/spine-love/data"
+cp -f ../raptor/export/raptor.atlas "$RUNTIME_DIR/spine-love/data"
+cp -f ../raptor/export/raptor.png "$RUNTIME_DIR/spine-love/data"
 
-cp -f ../spineboy/export/spineboy-pro.json ../../spine-love/data
-cp -f ../spineboy/export/spineboy.atlas ../../spine-love/data
-cp -f ../spineboy/export/spineboy.png ../../spine-love/data
+cp -f ../spineboy/export/spineboy-pro.json "$RUNTIME_DIR/spine-love/data"
+cp -f ../spineboy/export/spineboy.atlas "$RUNTIME_DIR/spine-love/data"
+cp -f ../spineboy/export/spineboy.png "$RUNTIME_DIR/spine-love/data"
 
-cp -f ../tank/export/tank-pro.json ../../spine-love/data
-cp -f ../tank/export/tank.atlas ../../spine-love/data
-cp -f ../tank/export/tank.png ../../spine-love/data
+cp -f ../tank/export/tank-pro.json "$RUNTIME_DIR/spine-love/data"
+cp -f ../tank/export/tank.atlas "$RUNTIME_DIR/spine-love/data"
+cp -f ../tank/export/tank.png "$RUNTIME_DIR/spine-love/data"
 
-cp -f ../vine/export/vine-pro.json ../../spine-love/data
-cp -f ../vine/export/vine.atlas ../../spine-love/data
-cp -f ../vine/export/vine.png ../../spine-love/data
+cp -f ../vine/export/vine-pro.json "$RUNTIME_DIR/spine-love/data"
+cp -f ../vine/export/vine.atlas "$RUNTIME_DIR/spine-love/data"
+cp -f ../vine/export/vine.png "$RUNTIME_DIR/spine-love/data"
 
-cp -f ../stretchyman/export/stretchyman-pro.json ../../spine-love/data
-cp -f ../stretchyman/export/stretchyman.atlas ../../spine-love/data
-cp -f ../stretchyman/export/stretchyman.png ../../spine-love/data
+cp -f ../stretchyman/export/stretchyman-pro.json "$RUNTIME_DIR/spine-love/data"
+cp -f ../stretchyman/export/stretchyman.atlas "$RUNTIME_DIR/spine-love/data"
+cp -f ../stretchyman/export/stretchyman.png "$RUNTIME_DIR/spine-love/data"
 
-cp -f ../stretchyman-stretchy-ik/export/stretchyman-stretchy-ik.json ../../spine-love/data
+cp -f ../stretchyman/export/stretchyman-stretchy-ik-pro.json "$RUNTIME_DIR/spine-love/data"
 
 echo "spine-sfml-c"
-rm -f ../../spine-sfml/data/*
-cp -f ../coin/export/coin-pro.json ../../spine-sfml/c/data/
-cp -f ../coin/export/coin-pro.skel ../../spine-sfml/c/data/
-cp -f ../coin/export/coin.atlas ../../spine-sfml/c/data/
-cp -f ../coin/export/coin.png ../../spine-sfml/c/data/
-
-cp -f ../goblins/export/goblins-pro.json ../../spine-sfml/c/data/
-cp -f ../goblins/export/goblins-pro.skel ../../spine-sfml/c/data/
-cp -f ../goblins/export/goblins.atlas ../../spine-sfml/c/data/
-cp -f ../goblins/export/goblins.png ../../spine-sfml/c/data/
-
-cp -f ../raptor/export/raptor-pro.json ../../spine-sfml/c/data/
-cp -f ../raptor/export/raptor-pro.skel ../../spine-sfml/c/data/
-cp -f ../raptor/export/raptor.atlas ../../spine-sfml/c/data/
-cp -f ../raptor/export/raptor.png ../../spine-sfml/c/data/
-
-cp -f ../spineboy/export/spineboy-pro.json ../../spine-sfml/c/data/
-cp -f ../spineboy/export/spineboy-pro.skel ../../spine-sfml/c/data/
-cp -f ../spineboy/export/spineboy.atlas ../../spine-sfml/c/data/
-cp -f ../spineboy/export/spineboy.png ../../spine-sfml/c/data/
-
-cp -f ../tank/export/tank-pro.json ../../spine-sfml/c/data/
-cp -f ../tank/export/tank-pro.skel ../../spine-sfml/c/data/
-cp -f ../tank/export/tank.atlas ../../spine-sfml/c/data/
-cp -f ../tank/export/tank.png ../../spine-sfml/c/data/
-
-cp -f ../vine/export/vine-pro.json ../../spine-sfml/c/data/
-cp -f ../vine/export/vine-pro.skel ../../spine-sfml/c/data/
-cp -f ../vine/export/vine.atlas ../../spine-sfml/c/data/
-cp -f ../vine/export/vine.png ../../spine-sfml/c/data/
-
-cp -f ../stretchyman/export/stretchyman-pro.json ../../spine-sfml/c/data/
-cp -f ../stretchyman/export/stretchyman-pro.skel ../../spine-sfml/c/data/
-cp -f ../stretchyman/export/stretchyman.atlas ../../spine-sfml/c/data/
-cp -f ../stretchyman/export/stretchyman.png ../../spine-sfml/c/data/
-
-cp -f ../stretchyman-stretchy-ik/export/stretchyman-stretchy-ik.json ../../spine-sfml/c/data
-cp -f ../stretchyman-stretchy-ik/export/stretchyman-stretchy-ik.skel ../../spine-sfml/c/data
-
-cp -f ../owl/export/owl-pro.json ../../spine-sfml/c/data/
-cp -f ../owl/export/owl-pro.skel ../../spine-sfml/c/data/
-cp -f ../owl/export/owl.atlas ../../spine-sfml/c/data/
-cp -f ../owl/export/owl.png ../../spine-sfml/c/data/
+rm "$RUNTIME_DIR/spine-sfml/c/data/"*
+cp -f ../coin/export/coin-pro.json "$RUNTIME_DIR/spine-sfml/c/data/"
+cp -f ../coin/export/coin-pro.skel "$RUNTIME_DIR/spine-sfml/c/data/"
+cp -f ../coin/export/coin-pma.atlas "$RUNTIME_DIR/spine-sfml/c/data/"
+cp -f ../coin/export/coin-pma.png "$RUNTIME_DIR/spine-sfml/c/data/"
+
+cp -f ../goblins/export/goblins-pro.json "$RUNTIME_DIR/spine-sfml/c/data/"
+cp -f ../goblins/export/goblins-pro.skel "$RUNTIME_DIR/spine-sfml/c/data/"
+cp -f ../goblins/export/goblins-pma.atlas "$RUNTIME_DIR/spine-sfml/c/data/"
+cp -f ../goblins/export/goblins-pma.png "$RUNTIME_DIR/spine-sfml/c/data/"
+
+cp -f ../raptor/export/raptor-pro.json "$RUNTIME_DIR/spine-sfml/c/data/"
+cp -f ../raptor/export/raptor-pro.skel "$RUNTIME_DIR/spine-sfml/c/data/"
+cp -f ../raptor/export/raptor-pma.atlas "$RUNTIME_DIR/spine-sfml/c/data/"
+cp -f ../raptor/export/raptor-pma.png "$RUNTIME_DIR/spine-sfml/c/data/"
+
+cp -f ../spineboy/export/spineboy-pro.json "$RUNTIME_DIR/spine-sfml/c/data/"
+cp -f ../spineboy/export/spineboy-pro.skel "$RUNTIME_DIR/spine-sfml/c/data/"
+cp -f ../spineboy/export/spineboy-pma.atlas "$RUNTIME_DIR/spine-sfml/c/data/"
+cp -f ../spineboy/export/spineboy-pma.png "$RUNTIME_DIR/spine-sfml/c/data/"
+
+cp -f ../tank/export/tank-pro.json "$RUNTIME_DIR/spine-sfml/c/data/"
+cp -f ../tank/export/tank-pro.skel "$RUNTIME_DIR/spine-sfml/c/data/"
+cp -f ../tank/export/tank-pma.atlas "$RUNTIME_DIR/spine-sfml/c/data/"
+cp -f ../tank/export/tank-pma.png "$RUNTIME_DIR/spine-sfml/c/data/"
+
+cp -f ../vine/export/vine-pro.json "$RUNTIME_DIR/spine-sfml/c/data/"
+cp -f ../vine/export/vine-pro.skel "$RUNTIME_DIR/spine-sfml/c/data/"
+cp -f ../vine/export/vine-pma.atlas "$RUNTIME_DIR/spine-sfml/c/data/"
+cp -f ../vine/export/vine-pma.png "$RUNTIME_DIR/spine-sfml/c/data/"
+
+cp -f ../stretchyman/export/stretchyman-pro.json "$RUNTIME_DIR/spine-sfml/c/data/"
+cp -f ../stretchyman/export/stretchyman-pro.skel "$RUNTIME_DIR/spine-sfml/c/data/"
+cp -f ../stretchyman/export/stretchyman-pma.atlas "$RUNTIME_DIR/spine-sfml/c/data/"
+cp -f ../stretchyman/export/stretchyman-pma.png "$RUNTIME_DIR/spine-sfml/c/data/"
+
+cp -f ../stretchyman/export/stretchyman-stretchy-ik-pro.json "$RUNTIME_DIR/spine-sfml/c/data"
+cp -f ../stretchyman/export/stretchyman-stretchy-ik-pro.skel "$RUNTIME_DIR/spine-sfml/c/data"
+
+cp -f ../owl/export/owl-pro.json "$RUNTIME_DIR/spine-sfml/c/data/"
+cp -f ../owl/export/owl-pro.skel "$RUNTIME_DIR/spine-sfml/c/data/"
+cp -f ../owl/export/owl-pma.atlas "$RUNTIME_DIR/spine-sfml/c/data/"
+cp -f ../owl/export/owl-pma.png "$RUNTIME_DIR/spine-sfml/c/data/"
 
 echo "spine-sfml-cpp"
-rm -f ../../spine-sfml/cpp/data/*
-cp -f ../coin/export/coin-pro.json ../../spine-sfml/cpp/data/
-cp -f ../coin/export/coin-pro.skel ../../spine-sfml/cpp/data/
-cp -f ../coin/export/coin.atlas ../../spine-sfml/cpp/data/
-cp -f ../coin/export/coin.png ../../spine-sfml/cpp/data/
-
-cp -f ../goblins/export/goblins-pro.json ../../spine-sfml/cpp/data/
-cp -f ../goblins/export/goblins-pro.skel ../../spine-sfml/cpp/data/
-cp -f ../goblins/export/goblins.atlas ../../spine-sfml/cpp/data/
-cp -f ../goblins/export/goblins.png ../../spine-sfml/cpp/data/
-
-cp -f ../raptor/export/raptor-pro.json ../../spine-sfml/cpp/data/
-cp -f ../raptor/export/raptor-pro.skel ../../spine-sfml/cpp/data/
-cp -f ../raptor/export/raptor.atlas ../../spine-sfml/cpp/data/
-cp -f ../raptor/export/raptor.png ../../spine-sfml/cpp/data/
-
-cp -f ../spineboy/export/spineboy-pro.json ../../spine-sfml/cpp/data/
-cp -f ../spineboy/export/spineboy-pro.skel ../../spine-sfml/cpp/data/
-cp -f ../spineboy/export/spineboy.atlas ../../spine-sfml/cpp/data/
-cp -f ../spineboy/export/spineboy.png ../../spine-sfml/cpp/data/
-
-cp -f ../tank/export/tank-pro.json ../../spine-sfml/cpp/data/
-cp -f ../tank/export/tank-pro.skel ../../spine-sfml/cpp/data/
-cp -f ../tank/export/tank.atlas ../../spine-sfml/cpp/data/
-cp -f ../tank/export/tank.png ../../spine-sfml/cpp/data/
-
-cp -f ../vine/export/vine-pro.json ../../spine-sfml/cpp/data/
-cp -f ../vine/export/vine-pro.skel ../../spine-sfml/cpp/data/
-cp -f ../vine/export/vine.atlas ../../spine-sfml/cpp/data/
-cp -f ../vine/export/vine.png ../../spine-sfml/cpp/data/
-
-cp -f ../stretchyman/export/stretchyman-pro.json ../../spine-sfml/cpp/data/
-cp -f ../stretchyman/export/stretchyman-pro.skel ../../spine-sfml/cpp/data/
-cp -f ../stretchyman/export/stretchyman.atlas ../../spine-sfml/cpp/data/
-cp -f ../stretchyman/export/stretchyman.png ../../spine-sfml/cpp/data/
-
-cp -f ../stretchyman-stretchy-ik/export/stretchyman-stretchy-ik.json ../../spine-sfml/cpp/data
-cp -f ../stretchyman-stretchy-ik/export/stretchyman-stretchy-ik.skel ../../spine-sfml/cpp/data
-
-cp -f ../owl/export/owl-pro.json ../../spine-sfml/cpp/data/
-cp -f ../owl/export/owl-pro.skel ../../spine-sfml/cpp/data/
-cp -f ../owl/export/owl.atlas ../../spine-sfml/cpp/data/
-cp -f ../owl/export/owl.png ../../spine-sfml/cpp/data/
+rm "$RUNTIME_DIR/spine-sfml/cpp/data/"*
+cp -f ../coin/export/coin-pro.json "$RUNTIME_DIR/spine-sfml/cpp/data/"
+cp -f ../coin/export/coin-pro.skel "$RUNTIME_DIR/spine-sfml/cpp/data/"
+cp -f ../coin/export/coin-pma.atlas "$RUNTIME_DIR/spine-sfml/cpp/data/"
+cp -f ../coin/export/coin-pma.png "$RUNTIME_DIR/spine-sfml/cpp/data/"
+
+cp -f ../goblins/export/goblins-pro.json "$RUNTIME_DIR/spine-sfml/cpp/data/"
+cp -f ../goblins/export/goblins-pro.skel "$RUNTIME_DIR/spine-sfml/cpp/data/"
+cp -f ../goblins/export/goblins-pma.atlas "$RUNTIME_DIR/spine-sfml/cpp/data/"
+cp -f ../goblins/export/goblins-pma.png "$RUNTIME_DIR/spine-sfml/cpp/data/"
+
+cp -f ../raptor/export/raptor-pro.json "$RUNTIME_DIR/spine-sfml/cpp/data/"
+cp -f ../raptor/export/raptor-pro.skel "$RUNTIME_DIR/spine-sfml/cpp/data/"
+cp -f ../raptor/export/raptor-pma.atlas "$RUNTIME_DIR/spine-sfml/cpp/data/"
+cp -f ../raptor/export/raptor-pma.png "$RUNTIME_DIR/spine-sfml/cpp/data/"
+
+cp -f ../spineboy/export/spineboy-pro.json "$RUNTIME_DIR/spine-sfml/cpp/data/"
+cp -f ../spineboy/export/spineboy-pro.skel "$RUNTIME_DIR/spine-sfml/cpp/data/"
+cp -f ../spineboy/export/spineboy-pma.atlas "$RUNTIME_DIR/spine-sfml/cpp/data/"
+cp -f ../spineboy/export/spineboy-pma.png "$RUNTIME_DIR/spine-sfml/cpp/data/"
+
+cp -f ../tank/export/tank-pro.json "$RUNTIME_DIR/spine-sfml/cpp/data/"
+cp -f ../tank/export/tank-pro.skel "$RUNTIME_DIR/spine-sfml/cpp/data/"
+cp -f ../tank/export/tank-pma.atlas "$RUNTIME_DIR/spine-sfml/cpp/data/"
+cp -f ../tank/export/tank-pma.png "$RUNTIME_DIR/spine-sfml/cpp/data/"
+
+cp -f ../vine/export/vine-pro.json "$RUNTIME_DIR/spine-sfml/cpp/data/"
+cp -f ../vine/export/vine-pro.skel "$RUNTIME_DIR/spine-sfml/cpp/data/"
+cp -f ../vine/export/vine-pma.atlas "$RUNTIME_DIR/spine-sfml/cpp/data/"
+cp -f ../vine/export/vine-pma.png "$RUNTIME_DIR/spine-sfml/cpp/data/"
+
+cp -f ../stretchyman/export/stretchyman-pro.json "$RUNTIME_DIR/spine-sfml/cpp/data/"
+cp -f ../stretchyman/export/stretchyman-pro.skel "$RUNTIME_DIR/spine-sfml/cpp/data/"
+cp -f ../stretchyman/export/stretchyman-pma.atlas "$RUNTIME_DIR/spine-sfml/cpp/data/"
+cp -f ../stretchyman/export/stretchyman-pma.png "$RUNTIME_DIR/spine-sfml/cpp/data/"
+
+cp -f ../stretchyman/export/stretchyman-stretchy-ik-pro.json "$RUNTIME_DIR/spine-sfml/cpp/data"
+cp -f ../stretchyman/export/stretchyman-stretchy-ik-pro.skel "$RUNTIME_DIR/spine-sfml/cpp/data"
+
+cp -f ../owl/export/owl-pro.json "$RUNTIME_DIR/spine-sfml/cpp/data/"
+cp -f ../owl/export/owl-pro.skel "$RUNTIME_DIR/spine-sfml/cpp/data/"
+cp -f ../owl/export/owl-pma.atlas "$RUNTIME_DIR/spine-sfml/cpp/data/"
+cp -f ../owl/export/owl-pma.png "$RUNTIME_DIR/spine-sfml/cpp/data/"
 
 echo "spine-starling"
 # DO NOT DELETE EVERYTHING IN SOURCE, ESPECIALLY goblins-mesh-starling.png/.xml
-cp -f ../coin/export/coin-pro.json ../../spine-starling/spine-starling-example/src/
-cp -f ../coin/export/coin.atlas ../../spine-starling/spine-starling-example/src/
-cp -f ../coin/export/coin.png ../../spine-starling/spine-starling-example/src/
+cp -f ../coin/export/coin-pro.json "$RUNTIME_DIR/spine-starling/spine-starling-example/src/"
+cp -f ../coin/export/coin.atlas "$RUNTIME_DIR/spine-starling/spine-starling-example/src/"
+cp -f ../coin/export/coin.png "$RUNTIME_DIR/spine-starling/spine-starling-example/src/"
 
-cp -f ../goblins/export/goblins-pro.json ../../spine-starling/spine-starling-example/src/
-cp -f ../goblins/export/goblins.atlas ../../spine-starling/spine-starling-example/src/
-cp -f ../goblins/export/goblins.png ../../spine-starling/spine-starling-example/src/
+cp -f ../goblins/export/goblins-pro.json "$RUNTIME_DIR/spine-starling/spine-starling-example/src/"
+cp -f ../goblins/export/goblins.atlas "$RUNTIME_DIR/spine-starling/spine-starling-example/src/"
+cp -f ../goblins/export/goblins.png "$RUNTIME_DIR/spine-starling/spine-starling-example/src/"
 
-cp -f ../raptor/export/raptor-pro.json ../../spine-starling/spine-starling-example/src/
-cp -f ../raptor/export/raptor.atlas ../../spine-starling/spine-starling-example/src/
-cp -f ../raptor/export/raptor.png ../../spine-starling/spine-starling-example/src/
+cp -f ../raptor/export/raptor-pro.json "$RUNTIME_DIR/spine-starling/spine-starling-example/src/"
+cp -f ../raptor/export/raptor.atlas "$RUNTIME_DIR/spine-starling/spine-starling-example/src/"
+cp -f ../raptor/export/raptor.png "$RUNTIME_DIR/spine-starling/spine-starling-example/src/"
 
-cp -f ../spineboy/export/spineboy-pro.json ../../spine-starling/spine-starling-example/src/
-cp -f ../spineboy/export/spineboy.atlas ../../spine-starling/spine-starling-example/src/
-cp -f ../spineboy/export/spineboy.png ../../spine-starling/spine-starling-example/src/
+cp -f ../spineboy/export/spineboy-pro.json "$RUNTIME_DIR/spine-starling/spine-starling-example/src/"
+cp -f ../spineboy/export/spineboy.atlas "$RUNTIME_DIR/spine-starling/spine-starling-example/src/"
+cp -f ../spineboy/export/spineboy.png "$RUNTIME_DIR/spine-starling/spine-starling-example/src/"
 
-cp -f ../tank/export/tank-pro.json ../../spine-starling/spine-starling-example/src/
-cp -f ../tank/export/tank.atlas ../../spine-starling/spine-starling-example/src/
-cp -f ../tank/export/tank.png ../../spine-starling/spine-starling-example/src/
+cp -f ../tank/export/tank-pro.json "$RUNTIME_DIR/spine-starling/spine-starling-example/src/"
+cp -f ../tank/export/tank.atlas "$RUNTIME_DIR/spine-starling/spine-starling-example/src/"
+cp -f ../tank/export/tank.png "$RUNTIME_DIR/spine-starling/spine-starling-example/src/"
 
-cp -f ../vine/export/vine-pro.json ../../spine-starling/spine-starling-example/src/
-cp -f ../vine/export/vine.atlas ../../spine-starling/spine-starling-example/src/
-cp -f ../vine/export/vine.png ../../spine-starling/spine-starling-example/src/
+cp -f ../vine/export/vine-pro.json "$RUNTIME_DIR/spine-starling/spine-starling-example/src/"
+cp -f ../vine/export/vine.atlas "$RUNTIME_DIR/spine-starling/spine-starling-example/src/"
+cp -f ../vine/export/vine.png "$RUNTIME_DIR/spine-starling/spine-starling-example/src/"
 
-cp -f ../stretchyman/export/stretchyman-pro.json ../../spine-starling/spine-starling-example/src/
-cp -f ../stretchyman/export/stretchyman.atlas ../../spine-starling/spine-starling-example/src/
-cp -f ../stretchyman/export/stretchyman.png ../../spine-starling/spine-starling-example/src/
+cp -f ../stretchyman/export/stretchyman-pro.json "$RUNTIME_DIR/spine-starling/spine-starling-example/src/"
+cp -f ../stretchyman/export/stretchyman.atlas "$RUNTIME_DIR/spine-starling/spine-starling-example/src/"
+cp -f ../stretchyman/export/stretchyman.png "$RUNTIME_DIR/spine-starling/spine-starling-example/src/"
 
-cp -f ../stretchyman-stretchy-ik/export/stretchyman-stretchy-ik.json ../../spine-starling/spine-starling-example/src/
+cp -f ../stretchyman/export/stretchyman-stretchy-ik-pro.json "$RUNTIME_DIR/spine-starling/spine-starling-example/src/"
 
-cp -f ../owl/export/owl-pro.json ../../spine-starling/spine-starling-example/src/
-cp -f ../owl/export/owl.atlas ../../spine-starling/spine-starling-example/src/
-cp -f ../owl/export/owl.png ../../spine-starling/spine-starling-example/src/
+cp -f ../owl/export/owl-pro.json "$RUNTIME_DIR/spine-starling/spine-starling-example/src/"
+cp -f ../owl/export/owl.atlas "$RUNTIME_DIR/spine-starling/spine-starling-example/src/"
+cp -f ../owl/export/owl.png "$RUNTIME_DIR/spine-starling/spine-starling-example/src/"
 
 echo "spine-ts"
-rm -f ../../spine-ts/webgl/example/assets/*
-cp -f ../coin/export/coin-pro.json ../../spine-ts/webgl/example/assets/
-cp -f ../coin/export/coin.atlas ../../spine-ts/webgl/example/assets/
-cp -f ../coin/export/coin.png ../../spine-ts/webgl/example/assets/
+rm "$RUNTIME_DIR/spine-ts/webgl/example/assets/"*
+cp -f ../coin/export/coin-pro.json "$RUNTIME_DIR/spine-ts/webgl/example/assets/"
+cp -f ../coin/export/coin-pma.atlas "$RUNTIME_DIR/spine-ts/webgl/example/assets/"
+cp -f ../coin/export/coin-pma.png "$RUNTIME_DIR/spine-ts/webgl/example/assets/"
 
-cp -f ../goblins/export/goblins-pro.json ../../spine-ts/webgl/example/assets/
-cp -f ../goblins/export/goblins.atlas ../../spine-ts/webgl/example/assets/goblins.atlas
-cp -f ../goblins/export/goblins.png ../../spine-ts/webgl/example/assets/goblins.png
+cp -f ../goblins/export/goblins-pro.json "$RUNTIME_DIR/spine-ts/webgl/example/assets/"
+cp -f ../goblins/export/goblins-pma.atlas "$RUNTIME_DIR/spine-ts/webgl/example/assets/"
+cp -f ../goblins/export/goblins-pma.png "$RUNTIME_DIR/spine-ts/webgl/example/assets/"
 
-cp -f ../raptor/export/raptor-pro.json ../../spine-ts/webgl/example/assets/
-cp -f ../raptor/export/raptor.atlas ../../spine-ts/webgl/example/assets/
-cp -f ../raptor/export/raptor.png ../../spine-ts/webgl/example/assets/
+cp -f ../raptor/export/raptor-pro.json "$RUNTIME_DIR/spine-ts/webgl/example/assets/"
+cp -f ../raptor/export/raptor-pma.atlas "$RUNTIME_DIR/spine-ts/webgl/example/assets/"
+cp -f ../raptor/export/raptor-pma.png "$RUNTIME_DIR/spine-ts/webgl/example/assets/"
 
-cp -f ../spineboy/export/spineboy-ess.json ../../spine-ts/webgl/example/assets/
-cp -f ../spineboy/export/spineboy.atlas ../../spine-ts/webgl/example/assets/
-cp -f ../spineboy/export/spineboy.png ../../spine-ts/webgl/example/assets/
-cp -f ../spineboy/export/spineboy-pma.png ../../spine-ts/webgl/example/assets/
+cp -f ../spineboy/export/spineboy-pro.json "$RUNTIME_DIR/spine-ts/webgl/example/assets/"
+cp -f ../spineboy/export/spineboy-pma.atlas "$RUNTIME_DIR/spine-ts/webgl/example/assets/"
+cp -f ../spineboy/export/spineboy-pma.png "$RUNTIME_DIR/spine-ts/webgl/example/assets/"
+cp -f ../spineboy/export/spineboy.png "$RUNTIME_DIR/spine-ts/webgl/example/assets/"
 
-cp -f ../tank/export/tank-pro.json ../../spine-ts/webgl/example/assets/
-cp -f ../tank/export/tank.atlas ../../spine-ts/webgl/example/assets/
-cp -f ../tank/export/tank.png ../../spine-ts/webgl/example/assets/
+cp -f ../tank/export/tank-pro.json "$RUNTIME_DIR/spine-ts/webgl/example/assets/"
+cp -f ../tank/export/tank-pma.atlas "$RUNTIME_DIR/spine-ts/webgl/example/assets/"
+cp -f ../tank/export/tank-pma.png "$RUNTIME_DIR/spine-ts/webgl/example/assets/"
 
-cp -f ../vine/export/vine-pro.json ../../spine-ts/webgl/example/assets/
-cp -f ../vine/export/vine.atlas ../../spine-ts/webgl/example/assets/
-cp -f ../vine/export/vine.png ../../spine-ts/webgl/example/assets/
+cp -f ../vine/export/vine-pro.json "$RUNTIME_DIR/spine-ts/webgl/example/assets/"
+cp -f ../vine/export/vine-pma.atlas "$RUNTIME_DIR/spine-ts/webgl/example/assets/"
+cp -f ../vine/export/vine-pma.png "$RUNTIME_DIR/spine-ts/webgl/example/assets/"
 
-cp -f ../owl/export/owl-pro.json ../../spine-ts/webgl/example/assets/
-cp -f ../owl/export/owl.atlas ../../spine-ts/webgl/example/assets/
-cp -f ../owl/export/owl.png ../../spine-ts/webgl/example/assets/
+cp -f ../owl/export/owl-pro.json "$RUNTIME_DIR/spine-ts/webgl/example/assets/"
+cp -f ../owl/export/owl-pma.atlas "$RUNTIME_DIR/spine-ts/webgl/example/assets/"
+cp -f ../owl/export/owl-pma.png "$RUNTIME_DIR/spine-ts/webgl/example/assets/"
 
-cp -f ../stretchyman/export/stretchyman-pro.json ../../spine-ts/webgl/example/assets/
-cp -f ../stretchyman/export/stretchyman.atlas ../../spine-ts/webgl/example/assets/
-cp -f ../stretchyman/export/stretchyman.png ../../spine-ts/webgl/example/assets/
+cp -f ../stretchyman/export/stretchyman-pro.json "$RUNTIME_DIR/spine-ts/webgl/example/assets/"
+cp -f ../stretchyman/export/stretchyman-pma.atlas "$RUNTIME_DIR/spine-ts/webgl/example/assets/"
+cp -f ../stretchyman/export/stretchyman-pma.png "$RUNTIME_DIR/spine-ts/webgl/example/assets/"
 
-cp -f ../stretchyman-stretchy-ik/export/stretchyman-stretchy-ik.json ../../spine-ts/webgl/example/assets/
+cp -f ../stretchyman/export/stretchyman-stretchy-ik-pro.json "$RUNTIME_DIR/spine-ts/webgl/example/assets/"
 
-rm -f ../../spine-ts/canvas/example/assets/*
-cp -f ../spineboy/export/spineboy-ess.json ../../spine-ts/canvas/example/assets/
-cp -f ../spineboy/export/spineboy.atlas ../../spine-ts/canvas/example/assets/
-cp -f ../spineboy/export/spineboy.png ../../spine-ts/canvas/example/assets/
+rm "$RUNTIME_DIR/spine-ts/canvas/example/assets/"*
+cp -f ../spineboy/export/spineboy-ess.json "$RUNTIME_DIR/spine-ts/canvas/example/assets/"
+cp -f ../spineboy/export/spineboy.atlas "$RUNTIME_DIR/spine-ts/canvas/example/assets/"
+cp -f ../spineboy/export/spineboy.png "$RUNTIME_DIR/spine-ts/canvas/example/assets/"
 
-rm -f ../../spine-ts/threejs/example/assets/*
-cp -f ../raptor/export/raptor-pro.json ../../spine-ts/threejs/example/assets/
-cp -f ../raptor/export/raptor.atlas ../../spine-ts/threejs/example/assets/
-cp -f ../raptor/export/raptor.png ../../spine-ts/threejs/example/assets/
+rm "$RUNTIME_DIR/spine-ts/threejs/example/assets/"*
+cp -f ../raptor/export/raptor-pro.json "$RUNTIME_DIR/spine-ts/threejs/example/assets/"
+cp -f ../raptor/export/raptor.atlas "$RUNTIME_DIR/spine-ts/threejs/example/assets/"
+cp -f ../raptor/export/raptor.png "$RUNTIME_DIR/spine-ts/threejs/example/assets/"
 
-rm -f ../../spine-ts/widget/example/assets/*
-cp -f ../raptor/export/raptor-pro.json ../../spine-ts/widget/example/assets/
-cp -f ../raptor/export/raptor.atlas ../../spine-ts/widget/example/assets/
-cp -f ../raptor/export/raptor.png ../../spine-ts/widget/example/assets/
+rm "$RUNTIME_DIR/spine-ts/widget/example/assets/"*
+cp -f ../raptor/export/raptor-pro.json "$RUNTIME_DIR/spine-ts/widget/example/assets/"
+cp -f ../raptor/export/raptor-pma.atlas "$RUNTIME_DIR/spine-ts/widget/example/assets/"
+cp -f ../raptor/export/raptor-pma.png "$RUNTIME_DIR/spine-ts/widget/example/assets/"
 
-cp -f ../spineboy/export/spineboy-ess.json ../../spine-ts/widget/example/assets/
-cp -f ../spineboy/export/spineboy.atlas ../../spine-ts/widget/example/assets/
-cp -f ../spineboy/export/spineboy.png ../../spine-ts/widget/example/assets/
+cp -f ../spineboy/export/spineboy-pro.json "$RUNTIME_DIR/spine-ts/widget/example/assets/"
+cp -f ../spineboy/export/spineboy-pma.atlas "$RUNTIME_DIR/spine-ts/widget/example/assets/"
+cp -f ../spineboy/export/spineboy-pma.png "$RUNTIME_DIR/spine-ts/widget/example/assets/"
 
 echo "spine-xna"
-rm -f ../../spine-xna/example/data/*
-cp -f ../coin/export/coin-pro.json ../../spine-xna/example/data/
-cp -f ../coin/export/coin-pro.skel ../../spine-xna/example/data/
-cp -f ../coin/export/coin.atlas ../../spine-xna/example/data/
-cp -f ../coin/export/coin.png ../../spine-xna/example/data/
-
-cp -f ../goblins/export/goblins-pro.json ../../spine-xna/example/data/
-cp -f ../goblins/export/goblins-pro.skel ../../spine-xna/example/data/
-cp -f ../goblins/export/goblins.atlas ../../spine-xna/example/data/goblins-mesh.atlas
-cp -f ../goblins/export/goblins.png ../../spine-xna/example/data/
-
-cp -f ../raptor/export/raptor-pro.json ../../spine-xna/example/data/
-cp -f ../raptor/export/raptor-pro.skel ../../spine-xna/example/data/
-cp -f ../raptor/export/raptor.atlas ../../spine-xna/example/data/
-cp -f ../raptor/export/raptor.png ../../spine-xna/example/data/
-
-cp -f ../spineboy/export/spineboy-ess.json ../../spine-xna/example/data/
-cp -f ../spineboy/export/spineboy-ess.skel ../../spine-xna/example/data/
-cp -f ../spineboy/export/spineboy.atlas ../../spine-xna/example/data/
-cp -f ../spineboy/export/spineboy.png ../../spine-xna/example/data/
-
-cp -f ../tank/export/tank-pro.json ../../spine-xna/example/data/
-cp -f ../tank/export/tank-pro.skel ../../spine-xna/example/data/
-cp -f ../tank/export/tank.atlas ../../spine-xna/example/data/
-cp -f ../tank/export/tank.png ../../spine-xna/example/data/
+rm "$RUNTIME_DIR/spine-xna/example/data/"*
+cp -f ../coin/export/coin-pro.json "$RUNTIME_DIR/spine-xna/example/data/"
+cp -f ../coin/export/coin-pro.skel "$RUNTIME_DIR/spine-xna/example/data/"
+cp -f ../coin/export/coin.atlas "$RUNTIME_DIR/spine-xna/example/data/"
+cp -f ../coin/export/coin.png "$RUNTIME_DIR/spine-xna/example/data/"
+
+cp -f ../goblins/export/goblins-pro.json "$RUNTIME_DIR/spine-xna/example/data/"
+cp -f ../goblins/export/goblins-pro.skel "$RUNTIME_DIR/spine-xna/example/data/"
+cp -f ../goblins/export/goblins.atlas "$RUNTIME_DIR/spine-xna/example/data/goblins-mesh.atlas"
+cp -f ../goblins/export/goblins.png "$RUNTIME_DIR/spine-xna/example/data/"
+
+cp -f ../raptor/export/raptor-pro.json "$RUNTIME_DIR/spine-xna/example/data/"
+cp -f ../raptor/export/raptor-pro.skel "$RUNTIME_DIR/spine-xna/example/data/"
+cp -f ../raptor/export/raptor.atlas "$RUNTIME_DIR/spine-xna/example/data/"
+cp -f ../raptor/export/raptor.png "$RUNTIME_DIR/spine-xna/example/data/"
+
+cp -f ../spineboy/export/spineboy-ess.json "$RUNTIME_DIR/spine-xna/example/data/"
+cp -f ../spineboy/export/spineboy-ess.skel "$RUNTIME_DIR/spine-xna/example/data/"
+cp -f ../spineboy/export/spineboy.atlas "$RUNTIME_DIR/spine-xna/example/data/"
+cp -f ../spineboy/export/spineboy.png "$RUNTIME_DIR/spine-xna/example/data/"
+
+cp -f ../tank/export/tank-pro.json "$RUNTIME_DIR/spine-xna/example/data/"
+cp -f ../tank/export/tank-pro.skel "$RUNTIME_DIR/spine-xna/example/data/"
+cp -f ../tank/export/tank.atlas "$RUNTIME_DIR/spine-xna/example/data/"
+cp -f ../tank/export/tank.png "$RUNTIME_DIR/spine-xna/example/data/"

文件差异内容过多而无法显示
+ 0 - 0
examples/goblins/export/goblins-ess.json


二进制
examples/goblins/export/goblins-ess.skel


文件差异内容过多而无法显示
+ 0 - 0
examples/goblins/export/goblins-pro.json


二进制
examples/goblins/export/goblins-pro.skel


二进制
examples/goblins/goblins-ess.spine


二进制
examples/goblins/goblins-pro.spine


文件差异内容过多而无法显示
+ 0 - 0
examples/hero/export/hero-ess.json


二进制
examples/hero/export/hero-ess.skel


文件差异内容过多而无法显示
+ 0 - 0
examples/hero/export/hero-pro.json


二进制
examples/hero/export/hero-pro.skel


二进制
examples/hero/hero-ess.spine


二进制
examples/hero/hero-pro.spine


文件差异内容过多而无法显示
+ 0 - 0
examples/owl/export/owl-pro.json


二进制
examples/owl/export/owl-pro.skel


+ 1 - 1
examples/owl/license.txt

@@ -1,4 +1,4 @@
-Copyright (c) 2016, Esoteric Software
+Copyright (c) 2018, Esoteric Software
 
 The images in this project may be redistributed as long as they are accompanied
 by this license file. The images may not be used for commercial use of any

二进制
examples/owl/owl-pro.spine


文件差异内容过多而无法显示
+ 0 - 0
examples/powerup/export/powerup-ess.json


二进制
examples/powerup/export/powerup-ess.skel


文件差异内容过多而无法显示
+ 0 - 0
examples/powerup/export/powerup-pro.json


二进制
examples/powerup/export/powerup-pro.skel


二进制
examples/powerup/powerup-ess.spine


二进制
examples/powerup/powerup-pro.spine


+ 65 - 93
examples/raptor/export/raptor-pma.atlas

@@ -1,299 +1,271 @@
 
 raptor-pma.png
-size: 1024,1024
+size: 1024,512
 format: RGBA8888
 filter: Linear,Linear
 repeat: none
 back-arm
-  rotate: true
-  xy: 274, 394
-  size: 46, 29
-  orig: 46, 29
+  rotate: false
+  xy: 895, 295
+  size: 46, 25
+  orig: 46, 25
   offset: 0, 0
   index: -1
 back-bracer
   rotate: true
-  xy: 140, 247
+  xy: 992, 216
   size: 39, 28
   orig: 39, 28
   offset: 0, 0
   index: -1
 back-hand
   rotate: false
-  xy: 824, 699
+  xy: 594, 58
   size: 36, 34
   orig: 36, 34
   offset: 0, 0
   index: -1
 back-knee
-  rotate: false
-  xy: 360, 507
+  rotate: true
+  xy: 729, 86
   size: 49, 67
   orig: 49, 67
   offset: 0, 0
   index: -1
 back-thigh
-  rotate: true
-  xy: 140, 206
+  rotate: false
+  xy: 379, 2
   size: 39, 24
   orig: 39, 24
   offset: 0, 0
   index: -1
-dust01
-  rotate: false
-  xy: 219, 299
-  size: 48, 37
-  orig: 48, 37
-  offset: 0, 0
-  index: -1
-dust02
-  rotate: false
-  xy: 895, 833
-  size: 43, 44
-  orig: 43, 44
-  offset: 0, 0
-  index: -1
-dust03
-  rotate: true
-  xy: 167, 445
-  size: 31, 26
-  orig: 31, 26
-  offset: 0, 0
-  index: -1
 eyes-open
   rotate: true
-  xy: 2, 2
+  xy: 902, 194
   size: 47, 45
   orig: 47, 45
   offset: 0, 0
   index: -1
 front-arm
   rotate: false
-  xy: 470, 544
-  size: 48, 30
-  orig: 48, 30
+  xy: 945, 306
+  size: 48, 26
+  orig: 48, 26
   offset: 0, 0
   index: -1
 front-bracer
-  rotate: true
-  xy: 274, 351
+  rotate: false
+  xy: 949, 197
   size: 41, 29
   orig: 41, 29
   offset: 0, 0
   index: -1
 front-hand
   rotate: false
-  xy: 827, 773
+  xy: 949, 266
   size: 41, 38
   orig: 41, 38
   offset: 0, 0
   index: -1
 front-open-hand
   rotate: false
-  xy: 360, 461
+  xy: 875, 148
   size: 43, 44
   orig: 43, 44
   offset: 0, 0
   index: -1
 front-thigh
-  rotate: false
-  xy: 411, 545
+  rotate: true
+  xy: 793, 171
   size: 57, 29
   orig: 57, 29
   offset: 0, 0
   index: -1
 gun
-  rotate: false
-  xy: 195, 442
+  rotate: true
+  xy: 379, 28
   size: 107, 103
   orig: 107, 103
   offset: 0, 0
   index: -1
 gun-nohand
   rotate: false
-  xy: 167, 338
+  xy: 487, 87
   size: 105, 102
   orig: 105, 102
   offset: 0, 0
   index: -1
 head
   rotate: false
-  xy: 2, 137
+  xy: 807, 361
   size: 136, 149
   orig: 136, 149
   offset: 0, 0
   index: -1
 lower-leg
-  rotate: true
-  xy: 648, 667
+  rotate: false
+  xy: 827, 195
   size: 73, 98
   orig: 73, 98
   offset: 0, 0
   index: -1
 mouth-grind
   rotate: true
-  xy: 49, 2
+  xy: 920, 145
   size: 47, 30
   orig: 47, 30
   offset: 0, 0
   index: -1
 mouth-smile
   rotate: true
-  xy: 81, 2
+  xy: 992, 257
   size: 47, 30
   orig: 47, 30
   offset: 0, 0
   index: -1
 neck
   rotate: false
-  xy: 626, 631
+  xy: 359, 114
   size: 18, 21
   orig: 18, 21
   offset: 0, 0
   index: -1
-raptor-arm-back
-  rotate: true
-  xy: 538, 570
+raptor-back-arm
+  rotate: false
+  xy: 653, 142
   size: 82, 86
   orig: 82, 86
   offset: 0, 0
   index: -1
 raptor-body
   rotate: false
-  xy: 2, 737
-  size: 632, 285
-  orig: 632, 285
+  xy: 2, 277
+  size: 632, 233
+  orig: 632, 233
   offset: 0, 0
   index: -1
 raptor-front-arm
   rotate: true
-  xy: 544, 654
+  xy: 484, 4
   size: 81, 102
   orig: 81, 102
   offset: 0, 0
   index: -1
 raptor-front-leg
   rotate: false
-  xy: 2, 478
+  xy: 2, 18
   size: 191, 257
   orig: 191, 257
   offset: 0, 0
   index: -1
 raptor-hindleg-back
   rotate: false
-  xy: 636, 807
+  xy: 636, 295
   size: 169, 215
   orig: 169, 215
   offset: 0, 0
   index: -1
 raptor-horn
   rotate: false
-  xy: 360, 655
+  xy: 195, 22
   size: 182, 80
   orig: 182, 80
   offset: 0, 0
   index: -1
 raptor-horn-back
-  rotate: false
-  xy: 360, 576
+  rotate: true
+  xy: 945, 334
   size: 176, 77
   orig: 176, 77
   offset: 0, 0
   index: -1
 raptor-jaw
   rotate: false
-  xy: 807, 879
-  size: 153, 143
-  orig: 153, 143
+  xy: 359, 137
+  size: 126, 138
+  orig: 126, 138
   offset: 0, 0
   index: -1
 raptor-jaw-tooth
   rotate: true
-  xy: 940, 840
+  xy: 895, 322
   size: 37, 48
   orig: 37, 48
   offset: 0, 0
   index: -1
 raptor-mouth-inside
   rotate: true
-  xy: 827, 735
+  xy: 949, 228
   size: 36, 41
   orig: 36, 41
   offset: 0, 0
   index: -1
-raptor-saddle-noshadow
-  rotate: false
-  xy: 2, 288
-  size: 163, 188
-  orig: 163, 188
+raptor-saddle-strap-back
+  rotate: true
+  xy: 653, 86
+  size: 54, 74
+  orig: 54, 74
   offset: 0, 0
   index: -1
 raptor-saddle-strap-front
   rotate: false
-  xy: 962, 927
+  xy: 594, 94
   size: 57, 95
   orig: 57, 95
   offset: 0, 0
   index: -1
-raptor-saddle-strap-rear
-  rotate: true
-  xy: 748, 686
-  size: 54, 74
-  orig: 54, 74
-  offset: 0, 0
-  index: -1
 raptor-saddle-w-shadow
   rotate: false
-  xy: 195, 547
-  size: 163, 188
-  orig: 163, 188
+  xy: 195, 104
+  size: 162, 171
+  orig: 162, 171
   offset: 0, 0
   index: -1
 raptor-tail-shadow
   rotate: false
-  xy: 636, 742
+  xy: 636, 230
   size: 189, 63
   orig: 189, 63
   offset: 0, 0
   index: -1
 raptor-tongue
   rotate: false
-  xy: 807, 813
+  xy: 807, 295
   size: 86, 64
   orig: 86, 64
   offset: 0, 0
   index: -1
 stirrup-back
-  rotate: false
-  xy: 411, 508
+  rotate: true
+  xy: 952, 151
   size: 44, 35
   orig: 44, 35
   offset: 0, 0
   index: -1
 stirrup-front
-  rotate: true
-  xy: 167, 291
+  rotate: false
+  xy: 902, 243
   size: 45, 50
   orig: 45, 50
   offset: 0, 0
   index: -1
 stirrup-strap
   rotate: false
-  xy: 962, 879
+  xy: 824, 147
   size: 49, 46
   orig: 49, 46
   offset: 0, 0
   index: -1
 torso
   rotate: false
-  xy: 304, 454
+  xy: 737, 137
   size: 54, 91
   orig: 54, 91
   offset: 0, 0
   index: -1
 visor
   rotate: false
-  xy: 2, 51
+  xy: 487, 191
   size: 131, 84
   orig: 131, 84
   offset: 0, 0

二进制
examples/raptor/export/raptor-pma.png


文件差异内容过多而无法显示
+ 0 - 0
examples/raptor/export/raptor-pro.json


二进制
examples/raptor/export/raptor-pro.skel


+ 65 - 93
examples/raptor/export/raptor.atlas

@@ -1,299 +1,271 @@
 
 raptor.png
-size: 1024,1024
+size: 1024,512
 format: RGBA8888
 filter: Linear,Linear
 repeat: none
 back-arm
-  rotate: true
-  xy: 274, 394
-  size: 46, 29
-  orig: 46, 29
+  rotate: false
+  xy: 895, 295
+  size: 46, 25
+  orig: 46, 25
   offset: 0, 0
   index: -1
 back-bracer
   rotate: true
-  xy: 140, 247
+  xy: 992, 216
   size: 39, 28
   orig: 39, 28
   offset: 0, 0
   index: -1
 back-hand
   rotate: false
-  xy: 824, 699
+  xy: 594, 58
   size: 36, 34
   orig: 36, 34
   offset: 0, 0
   index: -1
 back-knee
-  rotate: false
-  xy: 360, 507
+  rotate: true
+  xy: 729, 86
   size: 49, 67
   orig: 49, 67
   offset: 0, 0
   index: -1
 back-thigh
-  rotate: true
-  xy: 140, 206
+  rotate: false
+  xy: 379, 2
   size: 39, 24
   orig: 39, 24
   offset: 0, 0
   index: -1
-dust01
-  rotate: false
-  xy: 219, 299
-  size: 48, 37
-  orig: 48, 37
-  offset: 0, 0
-  index: -1
-dust02
-  rotate: false
-  xy: 895, 833
-  size: 43, 44
-  orig: 43, 44
-  offset: 0, 0
-  index: -1
-dust03
-  rotate: true
-  xy: 167, 445
-  size: 31, 26
-  orig: 31, 26
-  offset: 0, 0
-  index: -1
 eyes-open
   rotate: true
-  xy: 2, 2
+  xy: 902, 194
   size: 47, 45
   orig: 47, 45
   offset: 0, 0
   index: -1
 front-arm
   rotate: false
-  xy: 470, 544
-  size: 48, 30
-  orig: 48, 30
+  xy: 945, 306
+  size: 48, 26
+  orig: 48, 26
   offset: 0, 0
   index: -1
 front-bracer
-  rotate: true
-  xy: 274, 351
+  rotate: false
+  xy: 949, 197
   size: 41, 29
   orig: 41, 29
   offset: 0, 0
   index: -1
 front-hand
   rotate: false
-  xy: 827, 773
+  xy: 949, 266
   size: 41, 38
   orig: 41, 38
   offset: 0, 0
   index: -1
 front-open-hand
   rotate: false
-  xy: 360, 461
+  xy: 875, 148
   size: 43, 44
   orig: 43, 44
   offset: 0, 0
   index: -1
 front-thigh
-  rotate: false
-  xy: 411, 545
+  rotate: true
+  xy: 793, 171
   size: 57, 29
   orig: 57, 29
   offset: 0, 0
   index: -1
 gun
-  rotate: false
-  xy: 195, 442
+  rotate: true
+  xy: 379, 28
   size: 107, 103
   orig: 107, 103
   offset: 0, 0
   index: -1
 gun-nohand
   rotate: false
-  xy: 167, 338
+  xy: 487, 87
   size: 105, 102
   orig: 105, 102
   offset: 0, 0
   index: -1
 head
   rotate: false
-  xy: 2, 137
+  xy: 807, 361
   size: 136, 149
   orig: 136, 149
   offset: 0, 0
   index: -1
 lower-leg
-  rotate: true
-  xy: 648, 667
+  rotate: false
+  xy: 827, 195
   size: 73, 98
   orig: 73, 98
   offset: 0, 0
   index: -1
 mouth-grind
   rotate: true
-  xy: 49, 2
+  xy: 920, 145
   size: 47, 30
   orig: 47, 30
   offset: 0, 0
   index: -1
 mouth-smile
   rotate: true
-  xy: 81, 2
+  xy: 992, 257
   size: 47, 30
   orig: 47, 30
   offset: 0, 0
   index: -1
 neck
   rotate: false
-  xy: 626, 631
+  xy: 359, 114
   size: 18, 21
   orig: 18, 21
   offset: 0, 0
   index: -1
-raptor-arm-back
-  rotate: true
-  xy: 538, 570
+raptor-back-arm
+  rotate: false
+  xy: 653, 142
   size: 82, 86
   orig: 82, 86
   offset: 0, 0
   index: -1
 raptor-body
   rotate: false
-  xy: 2, 737
-  size: 632, 285
-  orig: 632, 285
+  xy: 2, 277
+  size: 632, 233
+  orig: 632, 233
   offset: 0, 0
   index: -1
 raptor-front-arm
   rotate: true
-  xy: 544, 654
+  xy: 484, 4
   size: 81, 102
   orig: 81, 102
   offset: 0, 0
   index: -1
 raptor-front-leg
   rotate: false
-  xy: 2, 478
+  xy: 2, 18
   size: 191, 257
   orig: 191, 257
   offset: 0, 0
   index: -1
 raptor-hindleg-back
   rotate: false
-  xy: 636, 807
+  xy: 636, 295
   size: 169, 215
   orig: 169, 215
   offset: 0, 0
   index: -1
 raptor-horn
   rotate: false
-  xy: 360, 655
+  xy: 195, 22
   size: 182, 80
   orig: 182, 80
   offset: 0, 0
   index: -1
 raptor-horn-back
-  rotate: false
-  xy: 360, 576
+  rotate: true
+  xy: 945, 334
   size: 176, 77
   orig: 176, 77
   offset: 0, 0
   index: -1
 raptor-jaw
   rotate: false
-  xy: 807, 879
-  size: 153, 143
-  orig: 153, 143
+  xy: 359, 137
+  size: 126, 138
+  orig: 126, 138
   offset: 0, 0
   index: -1
 raptor-jaw-tooth
   rotate: true
-  xy: 940, 840
+  xy: 895, 322
   size: 37, 48
   orig: 37, 48
   offset: 0, 0
   index: -1
 raptor-mouth-inside
   rotate: true
-  xy: 827, 735
+  xy: 949, 228
   size: 36, 41
   orig: 36, 41
   offset: 0, 0
   index: -1
-raptor-saddle-noshadow
-  rotate: false
-  xy: 2, 288
-  size: 163, 188
-  orig: 163, 188
+raptor-saddle-strap-back
+  rotate: true
+  xy: 653, 86
+  size: 54, 74
+  orig: 54, 74
   offset: 0, 0
   index: -1
 raptor-saddle-strap-front
   rotate: false
-  xy: 962, 927
+  xy: 594, 94
   size: 57, 95
   orig: 57, 95
   offset: 0, 0
   index: -1
-raptor-saddle-strap-rear
-  rotate: true
-  xy: 748, 686
-  size: 54, 74
-  orig: 54, 74
-  offset: 0, 0
-  index: -1
 raptor-saddle-w-shadow
   rotate: false
-  xy: 195, 547
-  size: 163, 188
-  orig: 163, 188
+  xy: 195, 104
+  size: 162, 171
+  orig: 162, 171
   offset: 0, 0
   index: -1
 raptor-tail-shadow
   rotate: false
-  xy: 636, 742
+  xy: 636, 230
   size: 189, 63
   orig: 189, 63
   offset: 0, 0
   index: -1
 raptor-tongue
   rotate: false
-  xy: 807, 813
+  xy: 807, 295
   size: 86, 64
   orig: 86, 64
   offset: 0, 0
   index: -1
 stirrup-back
-  rotate: false
-  xy: 411, 508
+  rotate: true
+  xy: 952, 151
   size: 44, 35
   orig: 44, 35
   offset: 0, 0
   index: -1
 stirrup-front
-  rotate: true
-  xy: 167, 291
+  rotate: false
+  xy: 902, 243
   size: 45, 50
   orig: 45, 50
   offset: 0, 0
   index: -1
 stirrup-strap
   rotate: false
-  xy: 962, 879
+  xy: 824, 147
   size: 49, 46
   orig: 49, 46
   offset: 0, 0
   index: -1
 torso
   rotate: false
-  xy: 304, 454
+  xy: 737, 137
   size: 54, 91
   orig: 54, 91
   offset: 0, 0
   index: -1
 visor
   rotate: false
-  xy: 2, 51
+  xy: 487, 191
   size: 131, 84
   orig: 131, 84
   offset: 0, 0

二进制
examples/raptor/export/raptor.png


二进制
examples/raptor/images/back-arm.png


二进制
examples/raptor/images/dust01.png


二进制
examples/raptor/images/dust02.png


二进制
examples/raptor/images/dust03.png


二进制
examples/raptor/images/front-arm.png


二进制
examples/raptor/images/lower-leg.png


+ 0 - 0
examples/raptor/images/raptor-arm-back.png → examples/raptor/images/raptor-back-arm.png


二进制
examples/raptor/images/raptor-body.png


二进制
examples/raptor/images/raptor-front-arm.png


二进制
examples/raptor/images/raptor-front-leg.png


二进制
examples/raptor/images/raptor-horn-back.png


二进制
examples/raptor/images/raptor-horn.png


二进制
examples/raptor/images/raptor-jaw.png


二进制
examples/raptor/images/raptor-saddle-noshadow.png


+ 0 - 0
examples/raptor/images/raptor-saddle-strap-rear.png → examples/raptor/images/raptor-saddle-strap-back.png


二进制
examples/raptor/images/raptor-saddle-w-shadow.png


二进制
examples/raptor/raptor-pro.spine


+ 21 - 0
examples/readme.txt

@@ -0,0 +1,21 @@
+These example projects show off many of Spine's features. Below are a number
+of other example resources that may prove useful.
+
+See our online demos, which render Spine animations right in your browser:
+http://esotericsoftware.com/spine-demos/
+
+Many companies around the world are doing great things with Spine:
+http://esotericsoftware.com/spine-showcase
+
+Tag your tweets using #madewithspine to show up on our Twitter page:
+http://esotericsoftware.com/madewithspine
+
+Learn how to use Spine with the Spine User Guide:
+http://esotericsoftware.com/spine-user-guide
+And the accompanying Spine User Guide videos:
+https://www.youtube.com/playlist?list=PLwGl7Ikd_6GRFo7d0uRu_fN2RIlvkxW7b
+And our other videos:
+https://www.youtube.com/user/EsotericSoftware/videos
+
+Super Spineboy is a full example game using Spine and libgdx:
+https://github.com/EsotericSoftware/spine-superspineboy

文件差异内容过多而无法显示
+ 0 - 0
examples/speedy/export/speedy-ess.json


二进制
examples/speedy/export/speedy-ess.skel


二进制
examples/speedy/speedy-ess.spine


二进制
examples/spineboy/audio/Footstep.wav


文件差异内容过多而无法显示
+ 0 - 0
examples/spineboy/export/spineboy-ess.json


二进制
examples/spineboy/export/spineboy-ess.skel


+ 74 - 95
examples/spineboy/export/spineboy-pma.atlas

@@ -1,306 +1,285 @@
 
 spineboy-pma.png
-size: 1024,512
+size: 1024,256
 format: RGBA8888
 filter: Linear,Linear
 repeat: none
 crosshair
   rotate: false
-  xy: 794, 167
+  xy: 352, 7
   size: 45, 45
   orig: 45, 45
   offset: 0, 0
   index: -1
-dust01
-  rotate: false
-  xy: 960, 190
-  size: 48, 37
-  orig: 48, 37
-  offset: 0, 0
-  index: -1
-dust02
-  rotate: false
-  xy: 392, 2
-  size: 43, 44
-  orig: 43, 44
-  offset: 0, 0
-  index: -1
-dust03
-  rotate: false
-  xy: 841, 163
-  size: 31, 26
-  orig: 31, 26
-  offset: 0, 0
-  index: -1
 eye-indifferent
   rotate: false
-  xy: 960, 229
+  xy: 862, 105
   size: 47, 45
   orig: 47, 45
   offset: 0, 0
   index: -1
 eye-surprised
   rotate: false
-  xy: 745, 167
+  xy: 505, 79
   size: 47, 45
   orig: 47, 45
   offset: 0, 0
   index: -1
 front-bracer
   rotate: false
-  xy: 547, 2
+  xy: 826, 66
   size: 29, 40
   orig: 29, 40
   offset: 0, 0
   index: -1
 front-fist-closed
   rotate: false
-  xy: 920, 190
+  xy: 786, 65
   size: 38, 41
   orig: 38, 41
   offset: 0, 0
   index: -1
 front-fist-open
-  rotate: false
-  xy: 437, 2
+  rotate: true
+  xy: 710, 51
   size: 43, 44
   orig: 43, 44
   offset: 0, 0
   index: -1
 front-foot
   rotate: false
-  xy: 482, 11
+  xy: 210, 6
   size: 63, 35
   orig: 63, 35
   offset: 0, 0
   index: -1
 front-shin
   rotate: true
-  xy: 866, 233
+  xy: 665, 128
   size: 41, 92
   orig: 41, 92
   offset: 0, 0
   index: -1
 front-thigh
-  rotate: false
-  xy: 719, 155
-  size: 24, 56
-  orig: 24, 56
+  rotate: true
+  xy: 2, 2
+  size: 23, 56
+  orig: 23, 56
   offset: 0, 0
   index: -1
 front-upper-arm
   rotate: false
-  xy: 719, 104
-  size: 27, 49
-  orig: 27, 49
+  xy: 250, 205
+  size: 23, 49
+  orig: 23, 49
   offset: 0, 0
   index: -1
 goggles
   rotate: false
-  xy: 881, 276
+  xy: 665, 171
   size: 131, 83
   orig: 131, 83
   offset: 0, 0
   index: -1
 gun
   rotate: false
-  xy: 612, 109
+  xy: 798, 152
   size: 105, 102
   orig: 105, 102
   offset: 0, 0
   index: -1
 head
   rotate: false
-  xy: 881, 361
+  xy: 2, 27
   size: 136, 149
   orig: 136, 149
   offset: 0, 0
   index: -1
 hoverboard-board
   rotate: false
-  xy: 2, 38
+  xy: 2, 178
   size: 246, 76
   orig: 246, 76
   offset: 0, 0
   index: -1
 hoverboard-thruster
   rotate: true
-  xy: 578, 12
+  xy: 722, 96
   size: 30, 32
   orig: 30, 32
   offset: 0, 0
   index: -1
 hoverglow-small
-  rotate: true
-  xy: 572, 44
+  rotate: false
+  xy: 275, 81
   size: 137, 38
   orig: 137, 38
   offset: 0, 0
   index: -1
 mouth-grind
-  rotate: true
-  xy: 713, 55
+  rotate: false
+  xy: 614, 97
   size: 47, 30
   orig: 47, 30
   offset: 0, 0
   index: -1
 mouth-oooo
-  rotate: true
-  xy: 713, 6
+  rotate: false
+  xy: 612, 65
   size: 47, 30
   orig: 47, 30
   offset: 0, 0
   index: -1
 mouth-smile
   rotate: false
-  xy: 748, 135
+  xy: 661, 64
   size: 47, 30
   orig: 47, 30
   offset: 0, 0
   index: -1
 muzzle-glow
   rotate: false
-  xy: 612, 8
-  size: 99, 99
-  orig: 99, 99
+  xy: 382, 54
+  size: 25, 25
+  orig: 25, 25
   offset: 0, 0
   index: -1
 muzzle-ring
-  rotate: false
-  xy: 302, 190
+  rotate: true
+  xy: 275, 54
   size: 25, 105
   orig: 25, 105
   offset: 0, 0
   index: -1
 muzzle01
-  rotate: false
-  xy: 336, 335
-  size: 271, 175
-  orig: 271, 175
+  rotate: true
+  xy: 911, 95
+  size: 67, 40
+  orig: 67, 40
   offset: 0, 0
   index: -1
 muzzle02
   rotate: false
-  xy: 609, 341
-  size: 270, 169
-  orig: 270, 169
+  xy: 792, 108
+  size: 68, 42
+  orig: 68, 42
   offset: 0, 0
   index: -1
 muzzle03
-  rotate: false
-  xy: 2, 297
-  size: 332, 213
-  orig: 332, 213
+  rotate: true
+  xy: 956, 171
+  size: 83, 53
+  orig: 83, 53
   offset: 0, 0
   index: -1
 muzzle04
   rotate: false
-  xy: 2, 116
-  size: 298, 179
-  orig: 298, 179
+  xy: 275, 7
+  size: 75, 45
+  orig: 75, 45
   offset: 0, 0
   index: -1
 muzzle05
   rotate: false
-  xy: 336, 183
-  size: 269, 150
-  orig: 269, 150
+  xy: 140, 3
+  size: 68, 38
+  orig: 68, 38
   offset: 0, 0
   index: -1
 neck
   rotate: false
-  xy: 841, 191
+  xy: 250, 182
   size: 18, 21
   orig: 18, 21
   offset: 0, 0
   index: -1
 portal-bg
   rotate: false
-  xy: 302, 48
+  xy: 140, 43
   size: 133, 133
   orig: 133, 133
   offset: 0, 0
   index: -1
 portal-flare1
   rotate: false
-  xy: 180, 6
+  xy: 554, 65
   size: 56, 30
   orig: 56, 30
   offset: 0, 0
   index: -1
 portal-flare2
-  rotate: false
-  xy: 2, 5
+  rotate: true
+  xy: 759, 112
   size: 57, 31
   orig: 57, 31
   offset: 0, 0
   index: -1
 portal-flare3
   rotate: false
-  xy: 61, 6
+  xy: 554, 97
   size: 58, 30
   orig: 58, 30
   offset: 0, 0
   index: -1
 portal-shade
   rotate: false
-  xy: 437, 48
+  xy: 275, 121
   size: 133, 133
   orig: 133, 133
   offset: 0, 0
   index: -1
 portal-streaks1
-  rotate: true
-  xy: 609, 213
+  rotate: false
+  xy: 410, 126
   size: 126, 128
   orig: 126, 128
   offset: 0, 0
   index: -1
-portsl-streaks2
+portal-streaks2
   rotate: false
-  xy: 739, 214
+  xy: 538, 129
   size: 125, 125
   orig: 125, 125
   offset: 0, 0
   index: -1
 rear-bracer
-  rotate: true
-  xy: 797, 137
+  rotate: false
+  xy: 857, 67
   size: 28, 36
   orig: 28, 36
   offset: 0, 0
   index: -1
 rear-foot
   rotate: false
-  xy: 121, 6
+  xy: 663, 96
   size: 57, 30
   orig: 57, 30
   offset: 0, 0
   index: -1
 rear-shin
   rotate: true
-  xy: 301, 8
+  xy: 414, 86
   size: 38, 89
   orig: 38, 89
   offset: 0, 0
   index: -1
 rear-thigh
-  rotate: true
-  xy: 866, 198
-  size: 33, 52
-  orig: 33, 52
+  rotate: false
+  xy: 756, 63
+  size: 28, 47
+  orig: 28, 47
   offset: 0, 0
   index: -1
 rear-upper-arm
   rotate: true
-  xy: 748, 109
-  size: 24, 44
-  orig: 24, 44
+  xy: 60, 5
+  size: 20, 44
+  orig: 20, 44
   offset: 0, 0
   index: -1
 torso
   rotate: false
-  xy: 250, 24
+  xy: 905, 164
   size: 49, 90
   orig: 49, 90
   offset: 0, 0

二进制
examples/spineboy/export/spineboy-pma.png


文件差异内容过多而无法显示
+ 0 - 0
examples/spineboy/export/spineboy-pro.json


二进制
examples/spineboy/export/spineboy-pro.skel


+ 74 - 95
examples/spineboy/export/spineboy.atlas

@@ -1,306 +1,285 @@
 
 spineboy.png
-size: 1024,512
+size: 1024,256
 format: RGBA8888
 filter: Linear,Linear
 repeat: none
 crosshair
   rotate: false
-  xy: 794, 167
+  xy: 352, 7
   size: 45, 45
   orig: 45, 45
   offset: 0, 0
   index: -1
-dust01
-  rotate: false
-  xy: 960, 190
-  size: 48, 37
-  orig: 48, 37
-  offset: 0, 0
-  index: -1
-dust02
-  rotate: false
-  xy: 392, 2
-  size: 43, 44
-  orig: 43, 44
-  offset: 0, 0
-  index: -1
-dust03
-  rotate: false
-  xy: 841, 163
-  size: 31, 26
-  orig: 31, 26
-  offset: 0, 0
-  index: -1
 eye-indifferent
   rotate: false
-  xy: 960, 229
+  xy: 862, 105
   size: 47, 45
   orig: 47, 45
   offset: 0, 0
   index: -1
 eye-surprised
   rotate: false
-  xy: 745, 167
+  xy: 505, 79
   size: 47, 45
   orig: 47, 45
   offset: 0, 0
   index: -1
 front-bracer
   rotate: false
-  xy: 547, 2
+  xy: 826, 66
   size: 29, 40
   orig: 29, 40
   offset: 0, 0
   index: -1
 front-fist-closed
   rotate: false
-  xy: 920, 190
+  xy: 786, 65
   size: 38, 41
   orig: 38, 41
   offset: 0, 0
   index: -1
 front-fist-open
-  rotate: false
-  xy: 437, 2
+  rotate: true
+  xy: 710, 51
   size: 43, 44
   orig: 43, 44
   offset: 0, 0
   index: -1
 front-foot
   rotate: false
-  xy: 482, 11
+  xy: 210, 6
   size: 63, 35
   orig: 63, 35
   offset: 0, 0
   index: -1
 front-shin
   rotate: true
-  xy: 866, 233
+  xy: 665, 128
   size: 41, 92
   orig: 41, 92
   offset: 0, 0
   index: -1
 front-thigh
-  rotate: false
-  xy: 719, 155
-  size: 24, 56
-  orig: 24, 56
+  rotate: true
+  xy: 2, 2
+  size: 23, 56
+  orig: 23, 56
   offset: 0, 0
   index: -1
 front-upper-arm
   rotate: false
-  xy: 719, 104
-  size: 27, 49
-  orig: 27, 49
+  xy: 250, 205
+  size: 23, 49
+  orig: 23, 49
   offset: 0, 0
   index: -1
 goggles
   rotate: false
-  xy: 881, 276
+  xy: 665, 171
   size: 131, 83
   orig: 131, 83
   offset: 0, 0
   index: -1
 gun
   rotate: false
-  xy: 612, 109
+  xy: 798, 152
   size: 105, 102
   orig: 105, 102
   offset: 0, 0
   index: -1
 head
   rotate: false
-  xy: 881, 361
+  xy: 2, 27
   size: 136, 149
   orig: 136, 149
   offset: 0, 0
   index: -1
 hoverboard-board
   rotate: false
-  xy: 2, 38
+  xy: 2, 178
   size: 246, 76
   orig: 246, 76
   offset: 0, 0
   index: -1
 hoverboard-thruster
   rotate: true
-  xy: 578, 12
+  xy: 722, 96
   size: 30, 32
   orig: 30, 32
   offset: 0, 0
   index: -1
 hoverglow-small
-  rotate: true
-  xy: 572, 44
+  rotate: false
+  xy: 275, 81
   size: 137, 38
   orig: 137, 38
   offset: 0, 0
   index: -1
 mouth-grind
-  rotate: true
-  xy: 713, 55
+  rotate: false
+  xy: 614, 97
   size: 47, 30
   orig: 47, 30
   offset: 0, 0
   index: -1
 mouth-oooo
-  rotate: true
-  xy: 713, 6
+  rotate: false
+  xy: 612, 65
   size: 47, 30
   orig: 47, 30
   offset: 0, 0
   index: -1
 mouth-smile
   rotate: false
-  xy: 748, 135
+  xy: 661, 64
   size: 47, 30
   orig: 47, 30
   offset: 0, 0
   index: -1
 muzzle-glow
   rotate: false
-  xy: 612, 8
-  size: 99, 99
-  orig: 99, 99
+  xy: 382, 54
+  size: 25, 25
+  orig: 25, 25
   offset: 0, 0
   index: -1
 muzzle-ring
-  rotate: false
-  xy: 302, 190
+  rotate: true
+  xy: 275, 54
   size: 25, 105
   orig: 25, 105
   offset: 0, 0
   index: -1
 muzzle01
-  rotate: false
-  xy: 336, 335
-  size: 271, 175
-  orig: 271, 175
+  rotate: true
+  xy: 911, 95
+  size: 67, 40
+  orig: 67, 40
   offset: 0, 0
   index: -1
 muzzle02
   rotate: false
-  xy: 609, 341
-  size: 270, 169
-  orig: 270, 169
+  xy: 792, 108
+  size: 68, 42
+  orig: 68, 42
   offset: 0, 0
   index: -1
 muzzle03
-  rotate: false
-  xy: 2, 297
-  size: 332, 213
-  orig: 332, 213
+  rotate: true
+  xy: 956, 171
+  size: 83, 53
+  orig: 83, 53
   offset: 0, 0
   index: -1
 muzzle04
   rotate: false
-  xy: 2, 116
-  size: 298, 179
-  orig: 298, 179
+  xy: 275, 7
+  size: 75, 45
+  orig: 75, 45
   offset: 0, 0
   index: -1
 muzzle05
   rotate: false
-  xy: 336, 183
-  size: 269, 150
-  orig: 269, 150
+  xy: 140, 3
+  size: 68, 38
+  orig: 68, 38
   offset: 0, 0
   index: -1
 neck
   rotate: false
-  xy: 841, 191
+  xy: 250, 182
   size: 18, 21
   orig: 18, 21
   offset: 0, 0
   index: -1
 portal-bg
   rotate: false
-  xy: 302, 48
+  xy: 140, 43
   size: 133, 133
   orig: 133, 133
   offset: 0, 0
   index: -1
 portal-flare1
   rotate: false
-  xy: 180, 6
+  xy: 554, 65
   size: 56, 30
   orig: 56, 30
   offset: 0, 0
   index: -1
 portal-flare2
-  rotate: false
-  xy: 2, 5
+  rotate: true
+  xy: 759, 112
   size: 57, 31
   orig: 57, 31
   offset: 0, 0
   index: -1
 portal-flare3
   rotate: false
-  xy: 61, 6
+  xy: 554, 97
   size: 58, 30
   orig: 58, 30
   offset: 0, 0
   index: -1
 portal-shade
   rotate: false
-  xy: 437, 48
+  xy: 275, 121
   size: 133, 133
   orig: 133, 133
   offset: 0, 0
   index: -1
 portal-streaks1
-  rotate: true
-  xy: 609, 213
+  rotate: false
+  xy: 410, 126
   size: 126, 128
   orig: 126, 128
   offset: 0, 0
   index: -1
-portsl-streaks2
+portal-streaks2
   rotate: false
-  xy: 739, 214
+  xy: 538, 129
   size: 125, 125
   orig: 125, 125
   offset: 0, 0
   index: -1
 rear-bracer
-  rotate: true
-  xy: 797, 137
+  rotate: false
+  xy: 857, 67
   size: 28, 36
   orig: 28, 36
   offset: 0, 0
   index: -1
 rear-foot
   rotate: false
-  xy: 121, 6
+  xy: 663, 96
   size: 57, 30
   orig: 57, 30
   offset: 0, 0
   index: -1
 rear-shin
   rotate: true
-  xy: 301, 8
+  xy: 414, 86
   size: 38, 89
   orig: 38, 89
   offset: 0, 0
   index: -1
 rear-thigh
-  rotate: true
-  xy: 866, 198
-  size: 33, 52
-  orig: 33, 52
+  rotate: false
+  xy: 756, 63
+  size: 28, 47
+  orig: 28, 47
   offset: 0, 0
   index: -1
 rear-upper-arm
   rotate: true
-  xy: 748, 109
-  size: 24, 44
-  orig: 24, 44
+  xy: 60, 5
+  size: 20, 44
+  orig: 20, 44
   offset: 0, 0
   index: -1
 torso
   rotate: false
-  xy: 250, 24
+  xy: 905, 164
   size: 49, 90
   orig: 49, 90
   offset: 0, 0

二进制
examples/spineboy/export/spineboy.png


二进制
examples/spineboy/images/dust01.png


二进制
examples/spineboy/images/dust02.png


二进制
examples/spineboy/images/dust03.png


二进制
examples/spineboy/images/front-foot.png


二进制
examples/spineboy/images/front-thigh.png


二进制
examples/spineboy/images/front-upper-arm.png


二进制
examples/spineboy/images/muzzle-glow.png


二进制
examples/spineboy/images/muzzle01.png


二进制
examples/spineboy/images/muzzle02.png


二进制
examples/spineboy/images/muzzle03.png


二进制
examples/spineboy/images/muzzle04.png


二进制
examples/spineboy/images/muzzle05.png


+ 0 - 0
examples/spineboy/images/portsl-streaks2.png → examples/spineboy/images/portal-streaks2.png


二进制
examples/spineboy/images/rear-bracer.png


二进制
examples/spineboy/images/rear-foot.png


二进制
examples/spineboy/images/rear-shin.png


二进制
examples/spineboy/images/rear-thigh.png


二进制
examples/spineboy/images/rear-upper-arm.png


二进制
examples/spineboy/spineboy-ess.spine


二进制
examples/spineboy/spineboy-pro.spine


部分文件因为文件数量过多而无法显示