From c97553474e8635e29c7137b732d3ef0478fa5bed Mon Sep 17 00:00:00 2001 From: badlogic Date: Thu, 12 Apr 2018 10:24:42 +0200 Subject: [PATCH] Added new assets for libGDX tests. --- examples/export/runtimes.sh | 1 + .../example/Resources/common/coin-pro.skel | Bin 0 -> 5922 bytes .../assets/coin/coin-pma.atlas | 27 +++ .../assets/coin/coin-pma.png | Bin 0 -> 53839 bytes .../assets/coin/coin-pro.json | 178 ++++++++++++++++++ .../assets/coin/coin-pro.skel | Bin 0 -> 5922 bytes .../esotericsoftware/spine/TestHarness.java | 99 ++++++++++ 7 files changed, 305 insertions(+) create mode 100644 spine-cocos2dx/example/Resources/common/coin-pro.skel create mode 100644 spine-libgdx/spine-libgdx-tests/assets/coin/coin-pma.atlas create mode 100644 spine-libgdx/spine-libgdx-tests/assets/coin/coin-pma.png create mode 100644 spine-libgdx/spine-libgdx-tests/assets/coin/coin-pro.json create mode 100644 spine-libgdx/spine-libgdx-tests/assets/coin/coin-pro.skel create mode 100644 spine-libgdx/spine-libgdx-tests/src/com/esotericsoftware/spine/TestHarness.java diff --git a/examples/export/runtimes.sh b/examples/export/runtimes.sh index 8a04b1393..48beb9ba9 100755 --- a/examples/export/runtimes.sh +++ b/examples/export/runtimes.sh @@ -57,6 +57,7 @@ echo "spine-cocos2dx" rm -f ../../spine-cocos2dx/example/Resources/common/* cp -f ../coin/export/coin-pro.json ../../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/ diff --git a/spine-cocos2dx/example/Resources/common/coin-pro.skel b/spine-cocos2dx/example/Resources/common/coin-pro.skel new file mode 100644 index 0000000000000000000000000000000000000000..b5f1965fd61dc41afb2735bf20369c7c54cbe81f GIT binary patch literal 5922 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 literal 0 HcmV?d00001 diff --git a/spine-libgdx/spine-libgdx-tests/assets/coin/coin-pma.atlas b/spine-libgdx/spine-libgdx-tests/assets/coin/coin-pma.atlas new file mode 100644 index 000000000..2fa9c3293 --- /dev/null +++ b/spine-libgdx/spine-libgdx-tests/assets/coin/coin-pma.atlas @@ -0,0 +1,27 @@ + +coin-pma.png +size: 1024,256 +format: RGBA8888 +filter: Linear,Linear +repeat: none +coin + rotate: false + xy: 2, 2 + size: 259, 245 + orig: 259, 245 + offset: 0, 0 + index: -1 +coin-invert + rotate: false + xy: 263, 2 + size: 259, 245 + orig: 259, 245 + offset: 0, 0 + index: -1 +shine + rotate: false + xy: 524, 2 + size: 72, 245 + orig: 72, 245 + offset: 0, 0 + index: -1 diff --git a/spine-libgdx/spine-libgdx-tests/assets/coin/coin-pma.png b/spine-libgdx/spine-libgdx-tests/assets/coin/coin-pma.png new file mode 100644 index 0000000000000000000000000000000000000000..3a7984c6268a6cd3969578577face81d1a902b54 GIT binary patch literal 53839 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 literal 0 HcmV?d00001 diff --git a/spine-libgdx/spine-libgdx-tests/assets/coin/coin-pro.json b/spine-libgdx/spine-libgdx-tests/assets/coin/coin-pro.json new file mode 100644 index 000000000..c3abaf5f0 --- /dev/null +++ b/spine-libgdx/spine-libgdx-tests/assets/coin/coin-pro.json @@ -0,0 +1,178 @@ +{ +"skeleton": { + "hash": "lfmnIwRt8cjfHaBQWvT0v4odYdY", + "spine": "3.7.08-beta", + "width": 260, + "height": 359.92, + "images": "./images/", + "audio": "" +}, +"bones": [ + { "name": "root" }, + { "name": "coin-root", "parent": "root", "y": 300, "color": "ff0000ff" }, + { "name": "coin", "parent": "coin-root", "color": "ffe037ff" }, + { "name": "clipping", "parent": "coin", "x": 7.25, "scaleX": 0.96, "scaleY": 0.967, "color": "ffe037ff" }, + { "name": "shine", "parent": "coin-root", "rotation": -24.17, "scaleY": 1.478, "color": "ffffffff" } +], +"slots": [ + { "name": "images/coin", "bone": "coin", "attachment": "coin" }, + { "name": "clipping", "bone": "clipping", "attachment": "clipping" }, + { "name": "images/shine", "bone": "shine", "color": "ffffff93", "attachment": "shine", "blend": "additive" } +], +"skins": { + "default": { + "clipping": { + "clipping": { + "type": "clipping", + "end": "images/coin", + "vertexCount": 36, + "vertices": [ 0.82, 120.87, 25.27, 118.4, 49.23, 110.99, 71.46, 98.15, 88.25, 83.08, 102.58, 64.8, 112.21, 46.03, 117.89, 28, 121.35, 9.23, 120.61, -11.52, 117.65, -30.29, 111.72, -48.08, 102.33, -65.61, 89.47, -82.23, 76.24, -94.71, 61.33, -105.13, 46.26, -112.54, 28.73, -118.22, 8.73, -120.89, -12.27, -120.89, -32.03, -116.94, -51.04, -110.27, -67.59, -101.63, -82.91, -88.78, -96.25, -74.21, -108.35, -55.68, -116.5, -35.43, -120.7, -14.19, -121.69, 5.57, -118.97, 27.56, -111.56, 49.04, -100.43, 69.69, -84.38, 87.47, -66.1, 102.29, -45.6, 112.67, -23.62, 118.59 ], + "color": "ce3a3aff" + } + }, + "images/coin": { + "coin": { + "type": "mesh", + "uvs": [ 1, 1, 0.51662, 0.99661, 0.38311, 0.99567, 0.29957, 0.96664, 0.22817, 0.93237, 0.16736, 0.88777, 0.11597, 0.83202, 0.06732, 0.76058, 0.03288, 0.69072, 0.00816, 0.61391, 0, 0.52843, 0, 0.43778, 0.02307, 0.33992, 0.06544, 0.24204, 0.11924, 0.16659, 0.17691, 0.10919, 0.24399, 0.06252, 0.31853, 0.02742, 0.41818, 0.0076, 0.52609, 1.0E-5, 1, 0, 0.45994, 0.99066, 0.37873, 0.97119, 0.30719, 0.94057, 0.24626, 0.89841, 0.19491, 0.85157, 0.14893, 0.79961, 0.11299, 0.73943, 0.08595, 0.67565, 0.06609, 0.60105, 0.05753, 0.52647, 0.05856, 0.44906, 0.07176, 0.36094, 0.10407, 0.28078, 0.15657, 0.19211, 0.22811, 0.1162, 0.29907, 0.0658, 0.38388, 0.02814, 0.46119, 0.00993 ], + "triangles": [ 38, 18, 19, 37, 17, 18, 37, 18, 38, 36, 16, 17, 36, 17, 37, 35, 15, 16, 35, 16, 36, 34, 14, 15, 34, 15, 35, 34, 33, 13, 34, 13, 14, 12, 13, 33, 32, 12, 33, 11, 12, 32, 31, 11, 32, 31, 10, 11, 30, 10, 31, 31, 33, 30, 29, 30, 33, 29, 9, 10, 29, 10, 30, 32, 33, 31, 34, 28, 29, 8, 9, 29, 8, 29, 28, 33, 34, 29, 25, 26, 27, 7, 8, 28, 7, 28, 27, 27, 28, 25, 26, 7, 27, 6, 7, 26, 34, 36, 28, 28, 36, 25, 6, 26, 25, 5, 6, 25, 34, 35, 36, 37, 24, 25, 5, 25, 24, 4, 5, 24, 36, 37, 25, 22, 23, 24, 4, 24, 23, 3, 4, 23, 24, 21, 22, 3, 23, 22, 38, 24, 37, 24, 1, 21, 2, 22, 21, 3, 22, 2, 1, 38, 19, 1, 24, 38, 2, 21, 1, 19, 20, 0, 1, 19, 0 ], + "vertices": [ 130, -123.5, 4.32, -122.66, -30.39, -122.43, -52.11, -115.26, -70.68, -106.8, -86.49, -95.78, -99.85, -82.01, -112.5, -64.36, -121.45, -47.11, -127.88, -28.14, -130, -7.02, -130, 15.37, -124, 39.54, -112.99, 63.72, -99, 82.35, -84, 96.53, -66.56, 108.06, -47.18, 116.73, -21.27, 121.62, 6.78, 123.5, 130, 123.5, -10.42, -121.19, -31.53, -116.39, -50.13, -108.82, -65.97, -98.41, -79.32, -86.84, -91.28, -74, -100.62, -59.14, -107.65, -43.39, -112.82, -24.96, -115.04, -6.54, -114.77, 12.58, -111.34, 34.35, -102.94, 54.15, -89.29, 76.05, -70.69, 94.8, -52.24, 107.25, -30.19, 116.55, -10.09, 121.05 ], + "hull": 21, + "edges": [ 0, 40, 42, 44, 44, 46, 46, 48, 48, 50, 50, 52, 52, 54, 54, 56, 56, 58, 58, 60, 60, 62, 62, 64, 64, 66, 66, 68, 68, 70, 70, 72, 72, 74, 74, 76, 36, 34, 34, 32, 32, 30, 30, 28, 28, 26, 26, 24, 24, 22, 20, 22, 20, 18, 18, 16, 16, 14, 14, 12, 12, 10, 10, 8, 8, 6, 6, 4, 0, 2, 2, 4, 42, 2, 38, 40, 36, 38, 76, 38, 2, 38 ], + "width": 259, + "height": 245 + }, + "coin-invert": { + "type": "mesh", + "uvs": [ 0.61921, 0.00932, 0.70137, 0.03058, 0.76675, 0.06301, 0.82357, 0.10192, 0.86533, 0.14084, 0.90128, 0.1866, 0.92763, 0.22768, 0.95707, 0.28353, 0.97795, 0.33937, 0.99074, 0.38663, 1, 0.45194, 1, 0.50671, 1, 0.56148, 0.98993, 0.62238, 0.97282, 0.6757, 0.95125, 0.73083, 0.91771, 0.78704, 0.88283, 0.83498, 0.84141, 0.87966, 0.79349, 0.91785, 0.73701, 0.95172, 0.65999, 0.98127, 0.60659, 0.991, 0.51662, 0.99661, 0, 1, 0, 0, 0.52609, 1.0E-5, 0.57849, 0.98348, 0.64806, 0.96162, 0.70899, 0.92882, 0.75987, 0.89639, 0.80219, 0.85685, 0.83745, 0.81722, 0.86381, 0.77794, 0.89445, 0.72582, 0.9167, 0.67213, 0.93142, 0.61628, 0.94164, 0.56011, 0.94506, 0.50823, 0.9437, 0.45454, 0.93514, 0.39905, 0.91905, 0.34031, 0.89748, 0.28194, 0.8691, 0.2284, 0.83932, 0.18768, 0.79995, 0.143, 0.76298, 0.10841, 0.71814, 0.07598, 0.66748, 0.04824, 0.61408, 0.0277, 0.5665, 0.01437 ], + "triangles": [ 50, 26, 0, 49, 50, 0, 48, 0, 1, 49, 0, 48, 47, 1, 2, 48, 1, 47, 46, 47, 2, 46, 2, 3, 45, 46, 3, 45, 3, 4, 44, 45, 4, 44, 4, 5, 43, 44, 5, 43, 5, 6, 42, 43, 6, 42, 6, 7, 41, 42, 7, 41, 7, 8, 40, 41, 8, 40, 8, 9, 39, 40, 9, 10, 39, 9, 39, 10, 11, 38, 39, 11, 41, 40, 38, 38, 40, 39, 38, 11, 12, 37, 38, 12, 38, 36, 41, 37, 36, 38, 13, 37, 12, 36, 37, 13, 36, 43, 41, 41, 43, 42, 14, 36, 13, 35, 36, 14, 44, 43, 36, 35, 34, 36, 15, 35, 14, 34, 35, 15, 44, 36, 45, 34, 33, 36, 16, 34, 15, 33, 34, 16, 48, 47, 49, 36, 33, 45, 17, 33, 16, 32, 33, 17, 32, 31, 33, 18, 32, 17, 31, 32, 18, 33, 29, 45, 45, 47, 46, 31, 30, 33, 19, 30, 31, 19, 31, 18, 49, 47, 45, 30, 29, 33, 20, 29, 30, 20, 30, 19, 50, 49, 29, 45, 29, 49, 21, 28, 29, 21, 29, 20, 29, 27, 50, 28, 27, 29, 22, 27, 28, 22, 28, 21, 23, 25, 26, 23, 26, 50, 23, 50, 27, 23, 27, 22, 24, 25, 23 ], + "vertices": [ 42.18, 121.2, 63.54, 115.95, 80.54, 107.94, 95.31, 98.32, 106.17, 88.71, 115.51, 77.41, 122.37, 67.26, 130.02, 53.47, 135.45, 39.68, 138.77, 28, 141.18, 11.87, 141.18, -1.66, 141.18, -15.19, 138.56, -30.23, 134.11, -43.4, 128.51, -57.02, 119.79, -70.9, 110.72, -82.74, 99.95, -93.78, 87.49, -103.21, 72.8, -111.58, 52.78, -118.87, 38.9, -121.28, 15.5, -122.66, -118.82, -123.5, -118.82, 123.5, 17.97, 123.5, 31.59, -119.42, 49.68, -114.02, 65.52, -105.92, 78.75, -97.91, 89.75, -88.14, 98.92, -78.35, 105.77, -68.65, 113.74, -55.78, 119.52, -42.52, 123.35, -28.72, 126.01, -14.85, 126.9, -2.03, 126.54, 11.23, 124.32, 24.94, 120.13, 39.44, 114.53, 53.86, 107.15, 67.09, 99.4, 77.14, 89.17, 88.18, 79.56, 96.72, 67.9, 104.73, 54.73, 111.59, 40.84, 116.66, 28.47, 119.95 ], + "hull": 27, + "edges": [ 46, 52, 46, 54, 54, 56, 56, 58, 58, 60, 60, 62, 62, 64, 64, 66, 66, 68, 68, 70, 70, 72, 72, 74, 74, 76, 76, 78, 78, 80, 80, 82, 82, 84, 84, 86, 86, 88, 88, 90, 90, 92, 92, 94, 94, 96, 96, 98, 98, 100, 100, 52, 52, 0, 0, 2, 2, 4, 4, 6, 6, 8, 8, 10, 10, 12, 12, 14, 14, 16, 20, 22, 22, 24, 24, 26, 26, 28, 28, 30, 30, 32, 32, 34, 34, 36, 36, 38, 38, 40, 40, 42, 42, 44, 44, 46, 48, 50, 50, 52, 46, 48, 16, 18, 18, 20 ], + "width": 259, + "height": 245 + } + }, + "images/shine": { + "shine": { "width": 72, "height": 245 } + } + } +}, +"animations": { + "rotate": { + "slots": { + "images/coin": { + "attachment": [ + { "time": 0.5, "name": "coin-invert" } + ] + }, + "images/shine": { + "color": [ + { "time": 0, "color": "ffffff00" }, + { "time": 0.2667, "color": "ffffffbc" }, + { "time": 0.5, "color": "ffffff00" }, + { "time": 0.7333, "color": "ffffffbc" }, + { "time": 1, "color": "ffffff00" } + ] + } + }, + "bones": { + "shine": { + "translate": [ + { + "time": 0, + "x": 175.08, + "y": 0, + "curve": [ 0.213, 0.65, 0.931, 0.67 ] + }, + { + "time": 0.5, + "x": -127.2, + "y": 0, + "curve": [ 0.55, 0.09, 0.931, 0.67 ] + }, + { "time": 1, "x": 175.08, "y": 0 } + ], + "scale": [ + { + "time": 0, + "x": 1, + "y": 1, + "curve": [ 0.213, 0.65, 0.931, 0.67 ] + }, + { + "time": 0.5, + "x": 2, + "y": 1, + "curve": [ 0.55, 0.09, 0.931, 0.67 ] + }, + { "time": 1, "x": 1, "y": 1 } + ] + }, + "coin": { + "translate": [ + { "time": 0, "x": 0, "y": 0 }, + { "time": 0.5, "x": 0.93, "y": 0 }, + { "time": 0.5011, "x": -9.18, "y": 0 }, + { "time": 1, "x": 2, "y": 0 } + ] + }, + "clipping": { + "translate": [ + { "time": 0, "x": -0.41, "y": 0 }, + { "time": 0.2667, "x": 1.2, "y": 1.21 }, + { "time": 0.5, "x": 0, "y": 0 }, + { "time": 0.7333, "x": -4.15, "y": 0 }, + { "time": 1, "x": -3.16, "y": 0 } + ], + "scale": [ + { "time": 0, "x": 1, "y": 1 }, + { "time": 0.2667, "x": 0.464, "y": 1.014 }, + { "time": 0.4667, "x": 0.067, "y": 1.002 }, + { "time": 0.5, "x": 0.033, "y": 1 }, + { "time": 0.7333, "x": 0.492, "y": 1.014 }, + { "time": 1, "x": 1, "y": 1 } + ] + } + }, + "deform": { + "default": { + "images/coin": { + "coin": [ + { + "time": 0, + "offset": 4, + "vertices": [ 15.75598, 0, 15.75598, 0, 15.75598, 0, 15.75598, 0, 15.75598, 0, 15.75598, 0, 15.75598, 0, 15.75598, 0, 15.75598, 0, 15.75598, 0, 15.75598, 0, 15.75598, 0, 15.75598, 0, 15.75598, 0, 15.75598, 0, 15.75598, 0, 15.75598 ] + }, + { + "time": 0.2333, + "vertices": [ -57.61087, 0, 1.15225, 0, 15.20888, 0, 24.26007, 0, 31.99586, 0, 38.58396, 0, 44.15197, 0, 49.42246, 0, 53.15465, 0, 55.83239, 0, 56.71656, 0, 56.71656, 0, 54.21722, 0, 49.62682, 0, 43.79747, 0, 37.5494, 0, 30.28123, 0, 22.2055, 0, 11.40953, 0, 0, 0, -57.61087, 0, 8.04186, 0, 17.91416, 0, 26.61125, 0, 34.01835, 0, 40.26029, 0, 45.85036, 0, 50.21972, 0, 53.50714, 0, 55.9207, 0, 56.96101, 0, 56.83617, 0, 55.23131, 0, 51.30379, 0, 44.9216, 0, 36.22496, 0, 27.59846, 0, 17.28874, 0, 7.89076 ] + }, + { + "time": 0.4667, + "vertices": [ -115.22174, 0, 2.3045, 0, 20.08046, 0, 40.51821, 0, 57.98577, 0, 72.86182, 0, 85.43448, 0, 97.33535, 0, 105.76271, 0, 111.80908, 0, 113.80557, 0, 113.80557, 0, 108.16202, 0, 97.7968, 0, 84.63402, 0, 70.52576, 0, 54.11411, 0, 35.87894, 0, 11.50145, 1.74997, 0, 0, -115.22174, 0, 16.08371, 0, 35.82832, 0, 53.2225, 0, 68.0367, 0, 80.52058, 0, 91.70073, 0, 100.43944, 0, 107.01427, 0, 111.84139, 0, 113.92201, 0, 113.67234, 0, 110.46262, 0, 102.60757, 0, 89.84319, 0, 72.44992, 0, 55.19692, 0, 34.57748, 0, 15.78153 ] + }, + { + "time": 0.5, + "vertices": [ -123.45187, 0, 2.46911, 0, 21.49595, 0, 43.40345, 0, 62.12716, 0, 78.07299, 0, 91.54979, 0, 104.3065, 0, 113.33989, 0, 119.82108, 0, 121.96114, 0, 121.96114, 0, 115.91174, 0, 104.80113, 0, 90.69177, 0, 75.56894, 0, 57.97707, 0, 38.43056, 0, 12.3, 0, 0, 0, -123.45187, 0, 17.23255, 0, 38.38749, 0, 57.02411, 0, 72.89646, 0, 86.27205, 0, 98.25078, 0, 107.61369, 0, 114.65815, 0, 119.83006, 0, 122.0593, 0, 121.79179, 0, 118.35281, 0, 109.93669, 0, 96.26056, 0, 77.62492, 0, 59.13956, 0, 37.0473, 0, 16.90878 ] + } + ], + "coin-invert": [ + { + "time": 0.5, + "vertices": [ -23.47706, 1.27002, -43.40744, 0, -59.7846, 0, -74.77602, 0, -85.79382, 0, -95.27632, 0, -102.23021, 0, -109.99683, 0, -115.50598, 0, -118.87909, 0, -121.32259, 0, -121.32259, 0, -121.32258, 0, -118.66653, 0, -114.15101, 0, -108.4615, 0, -99.61115, 0, -90.41013, 0, -79.48267, 0, -66.83928, 0, -51.93813, 0, -31.61855, 0, -19.56224, -1.52396, -12.52719, 0, 120.72772, 0, 120.72777, 0, -14.97203, 0, -28.48602, 0, -46.43241, 0, -62.14667, 0, -75.27165, 0, -86.18799, 0, -95.28229, 0, -102.08092, 0, -109.98608, 0, -115.7252, 0, -119.52184, 0, -122.15746, 0, -123.04041, 0, -122.68725, 0, -120.4799, 0, -116.33008, 0, -110.76754, 0, -103.44593, 0, -95.76433, 0, -85.61052, 0, -76.07477, 0, -64.50826, 0, -51.44074, 0, -37.66688, 0, -25.39402 ] + }, + { + "time": 0.7667, + "vertices": [ -12.2558, 0, -21.82668, 0, -29.4435, 0, -36.06335, 0, -40.92855, 0, -45.1158, 0, -48.18647, 0, -51.61602, 0, -54.04874, 0, -55.53822, 0, -56.61722, 0, -56.61722, 0, -56.61721, 0, -55.44436, 0, -53.45041, 0, -50.93806, 0, -47.02994, 0, -42.967, 0, -38.1417, 0, -32.55868, 0, -25.97868, 0, -17.00604, 0, -10.78498, 0, -5.84602, 0, 56.33961, 0, 56.33963, 0, -6.98695, 0, -13.29348, 0, -21.66846, 0, -29.00178, 0, -35.12677, 0, -40.22107, 0, -44.46507, 0, -47.63776, 0, -51.32684, 0, -54.0051, 0, -55.77686, 0, -57.00682, 0, -57.41886, 0, -57.25405, 0, -56.22396, 0, -54.28737, 0, -51.69152, 0, -48.27477, 0, -44.69002, 0, -39.95158, 0, -35.50156, 0, -30.10386, 0, -24.00568, 0, -17.57788, 0, -11.85054 ] + }, + { + "time": 1, + "vertices": [ -17.76001, 0, -17.76001, 0, -17.76001, 0, -17.76001, 0, -17.76001, 0, -17.76001, 0, -17.76001, 0, -17.76001, 0, -17.76001, 0, -17.76001, 0, -17.76001, 0, -17.76001, 0, -17.76001, 0, -17.76001, 0, -17.76001, 0, -17.76001, 0, -17.76001, 0, -17.76001, 0, -17.76001, 0, -17.76001, 0, -17.76001, 0, -17.76001, 0, -17.76001 ] + } + ] + } + } + } + } +} +} \ No newline at end of file diff --git a/spine-libgdx/spine-libgdx-tests/assets/coin/coin-pro.skel b/spine-libgdx/spine-libgdx-tests/assets/coin/coin-pro.skel new file mode 100644 index 0000000000000000000000000000000000000000..b5f1965fd61dc41afb2735bf20369c7c54cbe81f GIT binary patch literal 5922 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 literal 0 HcmV?d00001 diff --git a/spine-libgdx/spine-libgdx-tests/src/com/esotericsoftware/spine/TestHarness.java b/spine-libgdx/spine-libgdx-tests/src/com/esotericsoftware/spine/TestHarness.java new file mode 100644 index 000000000..4e4121536 --- /dev/null +++ b/spine-libgdx/spine-libgdx-tests/src/com/esotericsoftware/spine/TestHarness.java @@ -0,0 +1,99 @@ +package com.esotericsoftware.spine; + +import com.badlogic.gdx.ApplicationAdapter; +import com.badlogic.gdx.Gdx; +import com.badlogic.gdx.backends.lwjgl.LwjglApplication; +import com.badlogic.gdx.graphics.GL20; +import com.badlogic.gdx.graphics.OrthographicCamera; +import com.badlogic.gdx.graphics.g2d.PolygonSpriteBatch; +import com.badlogic.gdx.graphics.g2d.TextureAtlas; +import com.badlogic.gdx.graphics.glutils.ShapeRenderer; +import com.badlogic.gdx.math.Interpolation; +import com.esotericsoftware.spine.vertexeffects.JitterEffect; +import com.esotericsoftware.spine.vertexeffects.SwirlEffect; + +public class TestHarness extends ApplicationAdapter { +// static String JSON = "coin/coin-pro.json"; +// static String ATLAS = "coin/coin-pma.atlas"; + + static String JSON = "raptor/raptor-pro.json"; + static String ATLAS = "raptor/raptor-pma.atlas"; + + OrthographicCamera camera; + PolygonSpriteBatch batch; + SkeletonRenderer renderer; + + ShapeRenderer shapes; + + TextureAtlas atlas; + Skeleton skeleton; + AnimationState state; + + SwirlEffect swirl; + float swirlTime; + + public void create () { + camera = new OrthographicCamera(); + camera.setToOrtho(true); + batch = new PolygonSpriteBatch(); + renderer = new SkeletonRenderer(); + renderer.setPremultipliedAlpha(true); + shapes = new ShapeRenderer(); + + swirl = new SwirlEffect(400); + swirl.setCenterY(-200); + renderer.setVertexEffect(swirl); + + atlas = new TextureAtlas(Gdx.files.internal(ATLAS)); + SkeletonJson json = new SkeletonJson(atlas); + json.setScale(0.5f); + SkeletonData skeletonData = json.readSkeletonData(Gdx.files.internal(JSON)); + + skeleton = new Skeleton(skeletonData); + skeleton.setPosition(320, 590); + skeleton.flipY = true; + + AnimationStateData stateData = new AnimationStateData(skeletonData); + state = new AnimationState(stateData); + // state.setAnimation(0, "rotate", false); + state.update(0); + state.apply(skeleton); + skeleton.updateWorldTransform(); + } + + public void render () { + if (Gdx.input.justTouched()) { + state.update(0.25f); // Update the animation time. + } + state.apply(skeleton); // Poses skeleton using current animations. This sets the bones' local SRT. + skeleton.updateWorldTransform(); // Uses the bones' local SRT to compute their world SRT. + + Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT); + + swirlTime += Gdx.graphics.getDeltaTime(); + float percent = swirlTime % 2; + if (percent > 1) percent = 1 - (percent - 1); + swirl.setAngle(Interpolation.pow2.apply(-60, 60, percent)); + + + // Configure the camera, SpriteBatch, and SkeletonRendererDebug. + camera.update(); + batch.getProjectionMatrix().set(camera.combined); + + batch.begin(); + renderer.draw(batch, skeleton); // Draw the skeleton images. + batch.end(); + } + + public void resize (int width, int height) { + camera.setToOrtho(true); // Update camera with new size. + } + + public void dispose () { + atlas.dispose(); + } + + public static void main (String[] args) throws Exception { + new LwjglApplication(new TestHarness(), "", 640, 640); + } +} \ No newline at end of file