Updated example project exports.
@ -1,26 +1,54 @@
|
||||
|
||||
coin.png
|
||||
size: 1024,256
|
||||
size: 1024,1024
|
||||
format: RGBA8888
|
||||
filter: Linear,Linear
|
||||
repeat: none
|
||||
coin
|
||||
coin-front-logo
|
||||
rotate: false
|
||||
xy: 2, 2
|
||||
size: 259, 245
|
||||
orig: 259, 245
|
||||
xy: 2, 609
|
||||
size: 305, 302
|
||||
orig: 305, 302
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
coin-invert
|
||||
coin-front-shine-logo
|
||||
rotate: false
|
||||
xy: 263, 2
|
||||
size: 259, 245
|
||||
orig: 259, 245
|
||||
xy: 309, 629
|
||||
size: 282, 282
|
||||
orig: 282, 282
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
coin-front-shine-spineboy
|
||||
rotate: false
|
||||
xy: 2, 21
|
||||
size: 282, 282
|
||||
orig: 282, 282
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
coin-front-spineboy
|
||||
rotate: false
|
||||
xy: 2, 305
|
||||
size: 305, 302
|
||||
orig: 305, 302
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
coin-side-round
|
||||
rotate: false
|
||||
xy: 309, 345
|
||||
size: 144, 282
|
||||
orig: 144, 282
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
coin-side-straight
|
||||
rotate: true
|
||||
xy: 2, 2
|
||||
size: 17, 282
|
||||
orig: 17, 282
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
shine
|
||||
rotate: false
|
||||
xy: 524, 2
|
||||
xy: 593, 666
|
||||
size: 72, 245
|
||||
orig: 72, 245
|
||||
offset: 0, 0
|
||||
|
||||
|
Before Width: | Height: | Size: 61 KiB After Width: | Height: | Size: 393 KiB |
@ -44,9 +44,9 @@ bool CoinExample::init () {
|
||||
if (!LayerColor::initWithColor(Color4B(128, 128, 128, 255))) return false;
|
||||
|
||||
skeletonNode = SkeletonAnimation::createWithBinaryFile("coin-pro.skel", "coin.atlas", 1);
|
||||
skeletonNode->setAnimation(0, "rotate", true);
|
||||
skeletonNode->setAnimation(0, "animation", true);
|
||||
|
||||
skeletonNode->setPosition(Vec2(_contentSize.width / 2, 100));
|
||||
skeletonNode->setPosition(Vec2(_contentSize.width / 2, _contentSize.height / 2));
|
||||
addChild(skeletonNode);
|
||||
|
||||
scheduleUpdate();
|
||||
@ -54,8 +54,8 @@ bool CoinExample::init () {
|
||||
EventListenerTouchOneByOne* listener = EventListenerTouchOneByOne::create();
|
||||
listener->onTouchBegan = [this] (Touch* touch, Event* event) -> bool {
|
||||
if (!skeletonNode->getDebugBonesEnabled()) {
|
||||
skeletonNode->setDebugBonesEnabled(true);
|
||||
skeletonNode->setDebugBoundingRectEnabled(true);
|
||||
skeletonNode->setDebugBonesEnabled(true);
|
||||
skeletonNode->setDebugBoundingRectEnabled(true);
|
||||
}
|
||||
else if (skeletonNode->getTimeScale() == 1)
|
||||
skeletonNode->setTimeScale(0.3f);
|
||||
|
||||
@ -1,26 +1,54 @@
|
||||
|
||||
coin.png
|
||||
size: 1024,256
|
||||
size: 1024,1024
|
||||
format: RGBA8888
|
||||
filter: Linear,Linear
|
||||
repeat: none
|
||||
coin
|
||||
coin-front-logo
|
||||
rotate: false
|
||||
xy: 2, 2
|
||||
size: 259, 245
|
||||
orig: 259, 245
|
||||
xy: 2, 609
|
||||
size: 305, 302
|
||||
orig: 305, 302
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
coin-invert
|
||||
coin-front-shine-logo
|
||||
rotate: false
|
||||
xy: 263, 2
|
||||
size: 259, 245
|
||||
orig: 259, 245
|
||||
xy: 309, 629
|
||||
size: 282, 282
|
||||
orig: 282, 282
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
coin-front-shine-spineboy
|
||||
rotate: false
|
||||
xy: 2, 21
|
||||
size: 282, 282
|
||||
orig: 282, 282
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
coin-front-spineboy
|
||||
rotate: false
|
||||
xy: 2, 305
|
||||
size: 305, 302
|
||||
orig: 305, 302
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
coin-side-round
|
||||
rotate: false
|
||||
xy: 309, 345
|
||||
size: 144, 282
|
||||
orig: 144, 282
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
coin-side-straight
|
||||
rotate: true
|
||||
xy: 2, 2
|
||||
size: 17, 282
|
||||
orig: 17, 282
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
shine
|
||||
rotate: false
|
||||
xy: 524, 2
|
||||
xy: 593, 666
|
||||
size: 72, 245
|
||||
orig: 72, 245
|
||||
offset: 0, 0
|
||||
|
||||
|
Before Width: | Height: | Size: 61 KiB After Width: | Height: | Size: 393 KiB |
@ -1,26 +1,54 @@
|
||||
|
||||
coin.png
|
||||
size: 1024,256
|
||||
size: 1024,1024
|
||||
format: RGBA8888
|
||||
filter: Linear,Linear
|
||||
repeat: none
|
||||
coin
|
||||
coin-front-logo
|
||||
rotate: false
|
||||
xy: 2, 2
|
||||
size: 259, 245
|
||||
orig: 259, 245
|
||||
xy: 2, 609
|
||||
size: 305, 302
|
||||
orig: 305, 302
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
coin-invert
|
||||
coin-front-shine-logo
|
||||
rotate: false
|
||||
xy: 263, 2
|
||||
size: 259, 245
|
||||
orig: 259, 245
|
||||
xy: 309, 629
|
||||
size: 282, 282
|
||||
orig: 282, 282
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
coin-front-shine-spineboy
|
||||
rotate: false
|
||||
xy: 2, 21
|
||||
size: 282, 282
|
||||
orig: 282, 282
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
coin-front-spineboy
|
||||
rotate: false
|
||||
xy: 2, 305
|
||||
size: 305, 302
|
||||
orig: 305, 302
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
coin-side-round
|
||||
rotate: false
|
||||
xy: 309, 345
|
||||
size: 144, 282
|
||||
orig: 144, 282
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
coin-side-straight
|
||||
rotate: true
|
||||
xy: 2, 2
|
||||
size: 17, 282
|
||||
orig: 17, 282
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
shine
|
||||
rotate: false
|
||||
xy: 524, 2
|
||||
xy: 593, 666
|
||||
size: 72, 245
|
||||
orig: 72, 245
|
||||
offset: 0, 0
|
||||
|
||||
|
Before Width: | Height: | Size: 61 KiB After Width: | Height: | Size: 393 KiB |
@ -83,7 +83,7 @@ end
|
||||
|
||||
table.insert(skeletons, loadSkeleton("spineboy.atlas", "spineboy-pro.json", 240, 300, 0.4, "walk"))
|
||||
table.insert(skeletons, loadSkeleton("stretchyman.atlas", "stretchyman-stretchy-ik-pro.json", 40, 300, 0.5, "sneak"))
|
||||
table.insert(skeletons, loadSkeleton("coin.atlas", "coin-pro.json", 240, 300, 0.4, "rotate"))
|
||||
table.insert(skeletons, loadSkeleton("coin.atlas", "coin-pro.json", 240, 160, 0.4, "animation"))
|
||||
table.insert(skeletons, loadSkeleton("raptor.atlas", "raptor-pro.json", 200, 300, 0.25, "walk"))
|
||||
table.insert(skeletons, loadSkeleton("goblins.atlas", "goblins-pro.json", 240, 300, 0.8, "walk", "goblin"))
|
||||
table.insert(skeletons, loadSkeleton("stretchyman.atlas", "stretchyman-pro.json", 40, 300, 0.5, "sneak"))
|
||||
|
||||
@ -1,26 +1,54 @@
|
||||
|
||||
coin-pma.png
|
||||
size: 1024,256
|
||||
size: 1024,1024
|
||||
format: RGBA8888
|
||||
filter: Linear,Linear
|
||||
repeat: none
|
||||
coin
|
||||
coin-front-logo
|
||||
rotate: false
|
||||
xy: 2, 2
|
||||
size: 259, 245
|
||||
orig: 259, 245
|
||||
xy: 2, 609
|
||||
size: 305, 302
|
||||
orig: 305, 302
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
coin-invert
|
||||
coin-front-shine-logo
|
||||
rotate: false
|
||||
xy: 263, 2
|
||||
size: 259, 245
|
||||
orig: 259, 245
|
||||
xy: 309, 629
|
||||
size: 282, 282
|
||||
orig: 282, 282
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
coin-front-shine-spineboy
|
||||
rotate: false
|
||||
xy: 2, 21
|
||||
size: 282, 282
|
||||
orig: 282, 282
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
coin-front-spineboy
|
||||
rotate: false
|
||||
xy: 2, 305
|
||||
size: 305, 302
|
||||
orig: 305, 302
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
coin-side-round
|
||||
rotate: false
|
||||
xy: 309, 345
|
||||
size: 144, 282
|
||||
orig: 144, 282
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
coin-side-straight
|
||||
rotate: true
|
||||
xy: 2, 2
|
||||
size: 17, 282
|
||||
orig: 17, 282
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
shine
|
||||
rotate: false
|
||||
xy: 524, 2
|
||||
xy: 593, 666
|
||||
size: 72, 245
|
||||
orig: 72, 245
|
||||
offset: 0, 0
|
||||
|
||||
|
Before Width: | Height: | Size: 55 KiB After Width: | Height: | Size: 334 KiB |
@ -1,26 +1,54 @@
|
||||
|
||||
coin.png
|
||||
size: 1024,256
|
||||
size: 1024,1024
|
||||
format: RGBA8888
|
||||
filter: Linear,Linear
|
||||
repeat: none
|
||||
coin
|
||||
coin-front-logo
|
||||
rotate: false
|
||||
xy: 2, 2
|
||||
size: 259, 245
|
||||
orig: 259, 245
|
||||
xy: 2, 609
|
||||
size: 305, 302
|
||||
orig: 305, 302
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
coin-invert
|
||||
coin-front-shine-logo
|
||||
rotate: false
|
||||
xy: 263, 2
|
||||
size: 259, 245
|
||||
orig: 259, 245
|
||||
xy: 309, 629
|
||||
size: 282, 282
|
||||
orig: 282, 282
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
coin-front-shine-spineboy
|
||||
rotate: false
|
||||
xy: 2, 21
|
||||
size: 282, 282
|
||||
orig: 282, 282
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
coin-front-spineboy
|
||||
rotate: false
|
||||
xy: 2, 305
|
||||
size: 305, 302
|
||||
orig: 305, 302
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
coin-side-round
|
||||
rotate: false
|
||||
xy: 309, 345
|
||||
size: 144, 282
|
||||
orig: 144, 282
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
coin-side-straight
|
||||
rotate: true
|
||||
xy: 2, 2
|
||||
size: 17, 282
|
||||
orig: 17, 282
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
shine
|
||||
rotate: false
|
||||
xy: 524, 2
|
||||
xy: 593, 666
|
||||
size: 72, 245
|
||||
orig: 72, 245
|
||||
offset: 0, 0
|
||||
|
||||
|
Before Width: | Height: | Size: 61 KiB After Width: | Height: | Size: 393 KiB |
@ -98,7 +98,7 @@ function love.load(arg)
|
||||
skeletonRenderer = spine.SkeletonRenderer.new(true)
|
||||
table.insert(skeletons, loadSkeleton("spineboy-pro", "spineboy", "walk", nil, 0.5, 400, 500))
|
||||
table.insert(skeletons, loadSkeleton("stretchyman-pro", "stretchyman", "sneak", nil, 0.3, 200, 500))
|
||||
table.insert(skeletons, loadSkeleton("coin-pro", "coin", "rotate", nil, 0.5, 400, 500))
|
||||
table.insert(skeletons, loadSkeleton("coin-pro", "coin", "animation", nil, 0.5, 400, 300))
|
||||
table.insert(skeletons, loadSkeleton("raptor-pro", "raptor", "walk", nil, 0.3, 400, 500))
|
||||
table.insert(skeletons, loadSkeleton("goblins-pro", "goblins", "walk", "goblin", 1, 400, 500))
|
||||
table.insert(skeletons, loadSkeleton("tank-pro", "tank", "drive", nil, 0.2, 600, 500))
|
||||
|
||||
@ -1,26 +1,54 @@
|
||||
|
||||
coin-pma.png
|
||||
size: 1024,256
|
||||
size: 1024,1024
|
||||
format: RGBA8888
|
||||
filter: Linear,Linear
|
||||
repeat: none
|
||||
coin
|
||||
coin-front-logo
|
||||
rotate: false
|
||||
xy: 2, 2
|
||||
size: 259, 245
|
||||
orig: 259, 245
|
||||
xy: 2, 609
|
||||
size: 305, 302
|
||||
orig: 305, 302
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
coin-invert
|
||||
coin-front-shine-logo
|
||||
rotate: false
|
||||
xy: 263, 2
|
||||
size: 259, 245
|
||||
orig: 259, 245
|
||||
xy: 309, 629
|
||||
size: 282, 282
|
||||
orig: 282, 282
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
coin-front-shine-spineboy
|
||||
rotate: false
|
||||
xy: 2, 21
|
||||
size: 282, 282
|
||||
orig: 282, 282
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
coin-front-spineboy
|
||||
rotate: false
|
||||
xy: 2, 305
|
||||
size: 305, 302
|
||||
orig: 305, 302
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
coin-side-round
|
||||
rotate: false
|
||||
xy: 309, 345
|
||||
size: 144, 282
|
||||
orig: 144, 282
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
coin-side-straight
|
||||
rotate: true
|
||||
xy: 2, 2
|
||||
size: 17, 282
|
||||
orig: 17, 282
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
shine
|
||||
rotate: false
|
||||
xy: 524, 2
|
||||
xy: 593, 666
|
||||
size: 72, 245
|
||||
orig: 72, 245
|
||||
offset: 0, 0
|
||||
|
||||
|
Before Width: | Height: | Size: 55 KiB After Width: | Height: | Size: 334 KiB |
@ -341,10 +341,10 @@ void coin (SkeletonData* skeletonData, Atlas* atlas) {
|
||||
|
||||
Skeleton* skeleton = drawable->skeleton;
|
||||
skeleton->x = 320;
|
||||
skeleton->y = 590;
|
||||
skeleton->y = 320;
|
||||
Skeleton_updateWorldTransform(skeleton);
|
||||
|
||||
AnimationState_setAnimationByName(drawable->state, 0, "rotate", true);
|
||||
AnimationState_setAnimationByName(drawable->state, 0, "animation", true);
|
||||
|
||||
sf::RenderWindow window(sf::VideoMode(640, 640), "Spine SFML - vine");
|
||||
window.setFramerateLimit(60);
|
||||
|
||||
@ -1,26 +1,54 @@
|
||||
|
||||
coin-pma.png
|
||||
size: 1024,256
|
||||
size: 1024,1024
|
||||
format: RGBA8888
|
||||
filter: Linear,Linear
|
||||
repeat: none
|
||||
coin
|
||||
coin-front-logo
|
||||
rotate: false
|
||||
xy: 2, 2
|
||||
size: 259, 245
|
||||
orig: 259, 245
|
||||
xy: 2, 609
|
||||
size: 305, 302
|
||||
orig: 305, 302
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
coin-invert
|
||||
coin-front-shine-logo
|
||||
rotate: false
|
||||
xy: 263, 2
|
||||
size: 259, 245
|
||||
orig: 259, 245
|
||||
xy: 309, 629
|
||||
size: 282, 282
|
||||
orig: 282, 282
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
coin-front-shine-spineboy
|
||||
rotate: false
|
||||
xy: 2, 21
|
||||
size: 282, 282
|
||||
orig: 282, 282
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
coin-front-spineboy
|
||||
rotate: false
|
||||
xy: 2, 305
|
||||
size: 305, 302
|
||||
orig: 305, 302
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
coin-side-round
|
||||
rotate: false
|
||||
xy: 309, 345
|
||||
size: 144, 282
|
||||
orig: 144, 282
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
coin-side-straight
|
||||
rotate: true
|
||||
xy: 2, 2
|
||||
size: 17, 282
|
||||
orig: 17, 282
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
shine
|
||||
rotate: false
|
||||
xy: 524, 2
|
||||
xy: 593, 666
|
||||
size: 72, 245
|
||||
orig: 72, 245
|
||||
offset: 0, 0
|
||||
|
||||
|
Before Width: | Height: | Size: 55 KiB After Width: | Height: | Size: 334 KiB |
@ -363,11 +363,10 @@ void coin (SkeletonData* skeletonData, Atlas* atlas) {
|
||||
drawable.setUsePremultipliedAlpha(true);
|
||||
|
||||
Skeleton* skeleton = drawable.skeleton;
|
||||
skeleton->setPosition(320, 590);
|
||||
skeleton->setPosition(320, 320);
|
||||
skeleton->updateWorldTransform();
|
||||
|
||||
drawable.state->setAnimation(0, "rotate", true);
|
||||
drawable.update(1);
|
||||
drawable.state->setAnimation(0, "animation", true);
|
||||
|
||||
sf::RenderWindow window(sf::VideoMode(640, 640), "Spine SFML - coin");
|
||||
window.setFramerateLimit(60);
|
||||
@ -375,14 +374,12 @@ void coin (SkeletonData* skeletonData, Atlas* atlas) {
|
||||
sf::Clock deltaClock;
|
||||
float swirlTime = 0;
|
||||
while (window.isOpen()) {
|
||||
float delta = 0;
|
||||
while (window.pollEvent(event)) {
|
||||
if (event.type == sf::Event::Closed) window.close();
|
||||
if (event.type == sf::Event::MouseButtonPressed) delta += 0.1f;
|
||||
}
|
||||
|
||||
// float delta = deltaClock.getElapsedTime().asSeconds();
|
||||
// deltaClock.restart();
|
||||
float delta = deltaClock.getElapsedTime().asSeconds();
|
||||
deltaClock.restart();
|
||||
|
||||
drawable.update(delta);
|
||||
|
||||
|
||||
@ -1,26 +1,54 @@
|
||||
|
||||
coin.png
|
||||
size: 1024,256
|
||||
size: 1024,1024
|
||||
format: RGBA8888
|
||||
filter: Linear,Linear
|
||||
repeat: none
|
||||
coin
|
||||
coin-front-logo
|
||||
rotate: false
|
||||
xy: 2, 2
|
||||
size: 259, 245
|
||||
orig: 259, 245
|
||||
xy: 2, 609
|
||||
size: 305, 302
|
||||
orig: 305, 302
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
coin-invert
|
||||
coin-front-shine-logo
|
||||
rotate: false
|
||||
xy: 263, 2
|
||||
size: 259, 245
|
||||
orig: 259, 245
|
||||
xy: 309, 629
|
||||
size: 282, 282
|
||||
orig: 282, 282
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
coin-front-shine-spineboy
|
||||
rotate: false
|
||||
xy: 2, 21
|
||||
size: 282, 282
|
||||
orig: 282, 282
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
coin-front-spineboy
|
||||
rotate: false
|
||||
xy: 2, 305
|
||||
size: 305, 302
|
||||
orig: 305, 302
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
coin-side-round
|
||||
rotate: false
|
||||
xy: 309, 345
|
||||
size: 144, 282
|
||||
orig: 144, 282
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
coin-side-straight
|
||||
rotate: true
|
||||
xy: 2, 2
|
||||
size: 17, 282
|
||||
orig: 17, 282
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
shine
|
||||
rotate: false
|
||||
xy: 524, 2
|
||||
xy: 593, 666
|
||||
size: 72, 245
|
||||
orig: 72, 245
|
||||
offset: 0, 0
|
||||
|
||||
|
Before Width: | Height: | Size: 61 KiB After Width: | Height: | Size: 393 KiB |