diff --git a/spine-cocos2dx/example/Classes/AppDelegate.cpp b/spine-cocos2dx/example/Classes/AppDelegate.cpp index dc5ae02d3..2d41d604f 100644 --- a/spine-cocos2dx/example/Classes/AppDelegate.cpp +++ b/spine-cocos2dx/example/Classes/AppDelegate.cpp @@ -4,36 +4,91 @@ #include #include "ExampleScene.h" +#include "AppMacros.h" USING_NS_CC; using namespace std; AppDelegate::AppDelegate() { + } -AppDelegate::~AppDelegate() { +AppDelegate::~AppDelegate() +{ } bool AppDelegate::applicationDidFinishLaunching() { - CCDirector* director = CCDirector::sharedDirector(); + // initialize director + CCDirector* pDirector = CCDirector::sharedDirector(); + CCEGLView* pEGLView = CCEGLView::sharedOpenGLView(); + + pDirector->setOpenGLView(pEGLView); + + // Set the design resolution + pEGLView->setDesignResolutionSize(designResolutionSize.width, designResolutionSize.height, kResolutionNoBorder); + + CCSize frameSize = pEGLView->getFrameSize(); + + vector searchPath; + + // In this demo, we select resource according to the frame's height. + // If the resource size is different from design resolution size, you need to set contentScaleFactor. + // We use the ratio of resource's height to the height of design resolution, + // this can make sure that the resource's height could fit for the height of design resolution. + + // if the frame's height is larger than the height of medium resource size, select large resource. + if (frameSize.height > mediumResource.size.height) + { + searchPath.push_back(largeResource.directory); + + pDirector->setContentScaleFactor(MIN(largeResource.size.height/designResolutionSize.height, largeResource.size.width/designResolutionSize.width)); + } + // if the frame's height is larger than the height of small resource size, select medium resource. + else if (frameSize.height > smallResource.size.height) + { + searchPath.push_back(mediumResource.directory); + + pDirector->setContentScaleFactor(MIN(mediumResource.size.height/designResolutionSize.height, mediumResource.size.width/designResolutionSize.width)); + } + // if the frame's height is smaller than the height of medium resource size, select small resource. + else + { + searchPath.push_back(smallResource.directory); + + pDirector->setContentScaleFactor(MIN(smallResource.size.height/designResolutionSize.height, smallResource.size.width/designResolutionSize.width)); + } + + searchPath.push_back("common"); + // set searching path + CCFileUtils::sharedFileUtils()->setSearchPaths(searchPath); - CCEGLView* view = CCEGLView::sharedOpenGLView(); - director->setOpenGLView(view); - view->setViewName("Spine Example"); - view->setFrameSize(640, 480); - view->setDesignResolutionSize(640, 480, kResolutionNoBorder); - - director->setDisplayStats(true); - director->runWithScene(ExampleScene::scene()); - return true; + // turn on display FPS + pDirector->setDisplayStats(true); + + // set FPS. the default value is 1.0/60 if you don't call this + pDirector->setAnimationInterval(1.0 / 60); + + // create a scene. it's an autorelease object + CCScene *pScene = ExampleScene::scene(); + + // run + pDirector->runWithScene(pScene); + + return true; } +// This function will be called when the app is inactive. When comes a phone call,it's be invoked too void AppDelegate::applicationDidEnterBackground() { - CCDirector::sharedDirector()->stopAnimation(); - // SimpleAudioEngine::sharedEngine()->pauseBackgroundMusic(); + CCDirector::sharedDirector()->stopAnimation(); + + // if you use SimpleAudioEngine, it must be pause + // SimpleAudioEngine::sharedEngine()->pauseBackgroundMusic(); } +// this function will be called when the app is active again void AppDelegate::applicationWillEnterForeground() { - CCDirector::sharedDirector()->startAnimation(); - // SimpleAudioEngine::sharedEngine()->resumeBackgroundMusic(); + CCDirector::sharedDirector()->startAnimation(); + + // if you use SimpleAudioEngine, it must resume here + // SimpleAudioEngine::sharedEngine()->resumeBackgroundMusic(); } diff --git a/spine-cocos2dx/example/Classes/AppDelegate.h b/spine-cocos2dx/example/Classes/AppDelegate.h index ae5de0b34..bd229c03f 100644 --- a/spine-cocos2dx/example/Classes/AppDelegate.h +++ b/spine-cocos2dx/example/Classes/AppDelegate.h @@ -1,16 +1,38 @@ -#ifndef _APPDELEGATE_H_ -#define _APPDELEGATE_H_ +#ifndef _APP_DELEGATE_H_ +#define _APP_DELEGATE_H_ #include "cocos2d.h" -class AppDelegate : private cocos2d::CCApplication { +/** + @brief The cocos2d Application. + + The reason for implement as private inheritance is to hide some interface call by CCDirector. + */ +class AppDelegate : private cocos2d::CCApplication +{ public: - AppDelegate(); - virtual ~AppDelegate(); - - virtual bool applicationDidFinishLaunching(); - virtual void applicationDidEnterBackground(); - virtual void applicationWillEnterForeground(); + AppDelegate(); + virtual ~AppDelegate(); + + /** + @brief Implement CCDirector and CCScene init code here. + @return true Initialize success, app continue. + @return false Initialize failed, app terminate. + */ + virtual bool applicationDidFinishLaunching(); + + /** + @brief The function be called when the application enter background + @param the pointer of the application + */ + virtual void applicationDidEnterBackground(); + + /** + @brief The function be called when the application enter foreground + @param the pointer of the application + */ + virtual void applicationWillEnterForeground(); }; -#endif // _APPDELEGATE_H_ +#endif // _APP_DELEGATE_H_ + diff --git a/spine-cocos2dx/example/Classes/AppMacros.h b/spine-cocos2dx/example/Classes/AppMacros.h index 9e1743b21..2bd7f11f3 100755 --- a/spine-cocos2dx/example/Classes/AppMacros.h +++ b/spine-cocos2dx/example/Classes/AppMacros.h @@ -24,8 +24,9 @@ */ #define DESIGN_RESOLUTION_480X320 0 -#define DESIGN_RESOLUTION_1024X768 1 -#define DESIGN_RESOLUTION_2048X1536 2 +#define DESIGN_RESOLUTION_960x640 1 +#define DESIGN_RESOLUTION_1024X768 2 +#define DESIGN_RESOLUTION_2048X1536 3 /* If you want to switch design resolution, change next line */ #define TARGET_DESIGN_RESOLUTION_SIZE DESIGN_RESOLUTION_480X320 @@ -37,11 +38,14 @@ typedef struct tagResource }Resource; static Resource smallResource = { cocos2d::CCSizeMake(480, 320), "iphone" }; -static Resource mediumResource = { cocos2d::CCSizeMake(1024, 768), "ipad" }; -static Resource largeResource = { cocos2d::CCSizeMake(2048, 1536), "ipadhd" }; +static Resource mediumResource = { cocos2d::CCSizeMake(960, 640), "iphone-retina" }; +static Resource largeResource = { cocos2d::CCSizeMake(1024, 768), "ipad" }; +static Resource extralargeResource = { cocos2d::CCSizeMake(2048, 1536), "ipadhd" }; #if (TARGET_DESIGN_RESOLUTION_SIZE == DESIGN_RESOLUTION_480X320) static cocos2d::CCSize designResolutionSize = cocos2d::CCSizeMake(480, 320); +#elif (TARGET_DESIGN_RESOLUTION_SIZE == DESIGN_RESOLUTION_960x640) +static cocos2d::CCSize designResolutionSize = cocos2d::CCSizeMake(960, 640); #elif (TARGET_DESIGN_RESOLUTION_SIZE == DESIGN_RESOLUTION_1024X768) static cocos2d::CCSize designResolutionSize = cocos2d::CCSizeMake(1024, 768); #elif (TARGET_DESIGN_RESOLUTION_SIZE == DESIGN_RESOLUTION_2048X1536) diff --git a/spine-cocos2dx/example/Classes/ExampleScene.cpp b/spine-cocos2dx/example/Classes/ExampleScene.cpp index 4162a0208..51a90332c 100644 --- a/spine-cocos2dx/example/Classes/ExampleScene.cpp +++ b/spine-cocos2dx/example/Classes/ExampleScene.cpp @@ -17,10 +17,10 @@ CCScene* ExampleScene::scene() { bool ExampleScene::init() { if (!CCLayer::init()) return false; - Atlas *atlas = new Atlas("data/spineboy.atlas"); + Atlas *atlas = new Atlas("spineboy.txt"); SkeletonJson json(atlas); - SkeletonData *skeletonData = json.readSkeletonDataFile("data/spineboy-skeleton.json"); - Animation *animation = json.readAnimationFile("data/spineboy-walk.json", skeletonData); + SkeletonData *skeletonData = json.readSkeletonDataFile("spineboy-skeleton.json"); + Animation *animation = json.readAnimationFile("spineboy-walk.json", skeletonData); CCSkeleton* skeletonNode = new CCSkeleton(skeletonData); skeletonNode->state->setAnimation(animation, true); diff --git a/spine-cocos2dx/example/Resources/common/spineboy-bow.json b/spine-cocos2dx/example/Resources/common/spineboy-bow.json new file mode 100644 index 000000000..7807e29a1 --- /dev/null +++ b/spine-cocos2dx/example/Resources/common/spineboy-bow.json @@ -0,0 +1,204 @@ +{ +"bones": { + "torso": { + "rotate": [ + { + "time": 0, + "angle": -16.96, + "curve": [ 0.356, 0.01, 0.827, 0.82 ] + }, + { + "time": 0.7333, + "angle": -33.3, + "curve": [ 0.137, 0.2, 0.652, 0.86 ] + }, + { "time": 1.6, "angle": -8.18 }, + { "time": 2.3333, "angle": 1.82 } + ], + "translate": [ + { "time": 0, "x": 0, "y": 0 } + ] + }, + "neck": { + "rotate": [ + { "time": 0, "angle": 10.71 }, + { + "time": 0.7333, + "angle": -12.37, + "curve": [ 0.137, 0.2, 0.652, 0.86 ] + }, + { "time": 2.3333, "angle": 12.74 } + ], + "translate": [ + { "time": 0, "x": 0, "y": 0 }, + { + "time": 0.7333, + "x": -1.67, + "y": -3.3, + "curve": [ 0.137, 0.2, 0.652, 0.86 ] + }, + { "time": 2.3333, "x": -1.04, "y": -0.38 } + ] + }, + "head": { + "rotate": [ + { "time": 0, "angle": 12.63 }, + { + "time": 0.7333, + "angle": 10.39, + "curve": [ 0.137, 0.2, 0.652, 0.86 ] + }, + { "time": 2.3333, "angle": -11.41 } + ], + "translate": [ + { "time": 0, "x": 0, "y": 0 }, + { "time": 0.7333, "x": -0.85, "y": -5.38 }, + { "time": 2.3333, "x": 1.02, "y": 4.99 } + ] + }, + "right shoulder": { + "rotate": [ + { "time": 0, "angle": -7.36 }, + { "time": 0.7333, "angle": -229.15 }, + { "time": 1.9666, "angle": -12.04 }, + { "time": 2.5666, "angle": -39.4 } + ], + "translate": [ + { "time": 0, "x": 0, "y": 0 }, + { "time": 0.7333, "x": -3.78, "y": -8.32 }, + { + "time": 1.2666, + "x": -2.26, + "y": 1.26, + "curve": [ 0.08, 0.08, 0.75, 1 ] + }, + { "time": 1.9666, "x": -5.25, "y": 7.6 }, + { "time": 2.5666, "x": -5.58, "y": 13.32 } + ] + }, + "right arm": { + "rotate": [ + { "time": 0, "angle": 6.19 }, + { "time": 0.7333, "angle": 19.54 }, + { + "time": 1.2666, + "angle": 90.5, + "curve": [ 0.08, 0.08, 0.75, 1 ] + }, + { "time": 1.9666, "angle": 124.15 }, + { "time": 2.5666, "angle": 133.59 } + ], + "translate": [ + { "time": 0, "x": 0, "y": 0 } + ] + }, + "left shoulder": { + "rotate": [ + { "time": 0, "angle": -21.47 }, + { "time": 0.7333, "angle": 94.34 }, + { + "time": 1.4333, + "angle": 60.17, + "curve": [ 0.08, 0.08, 0.75, 1 ] + }, + { "time": 1.8666, "angle": 78.57 }, + { "time": 2.3333, "angle": 68.5 } + ], + "translate": [ + { "time": 0, "x": 0, "y": 0 }, + { "time": 0.7333, "x": -8.29, "y": 5.93 }, + { "time": 1.8666, "x": -4.3, "y": -5.12 } + ] + }, + "left arm": { + "rotate": [ + { "time": 0, "angle": 56.2 }, + { "time": 0.7333, "angle": -28.44 }, + { + "time": 1.2666, + "angle": -10.8, + "curve": [ 0.08, 0.08, 0.75, 1 ] + }, + { "time": 1.8666, "angle": -43.07 } + ], + "translate": [ + { "time": 0, "x": 0, "y": 0 }, + { "time": 1.8666, "x": 2.71, "y": 0.13 } + ] + }, + "right hand": { + "rotate": [ + { "time": 0, "angle": 0 }, + { "time": 0.7333, "angle": -18.22 }, + { + "time": 1.2666, + "angle": -33.49, + "curve": [ 0.08, 0.08, 0.75, 1 ] + }, + { "time": 1.9666, "angle": -3.98 }, + { "time": 2.5666, "angle": 1.45 } + ], + "translate": [ + { "time": 0, "x": 0, "y": 0 } + ] + }, + "left hand": { + "rotate": [ + { "time": 0, "angle": 0 }, + { "time": 0.7333, "angle": -30.39 }, + { "time": 1.9666, "angle": -11.61 } + ], + "translate": [ + { "time": 0, "x": 0, "y": 0 }, + { "time": 1.8666, "x": 2.71, "y": -0.04 } + ] + }, + "hip": { + "translate": [ + { "time": 0, "x": 0, "y": 0 } + ] + }, + "left upper leg": { + "translate": [ + { "time": 0, "x": 0, "y": 0 } + ] + }, + "left lower leg": { + "translate": [ + { "time": 0, "x": 0, "y": 0 } + ] + }, + "left foot": { + "translate": [ + { "time": 0, "x": 0, "y": 0 } + ] + }, + "right upper leg": { + "translate": [ + { "time": 0, "x": 0, "y": 0 } + ] + }, + "right lower leg": { + "translate": [ + { "time": 0, "x": 0, "y": 0 } + ] + }, + "right foot": { + "translate": [ + { "time": 0, "x": 0, "y": 0 } + ] + } +}, +"slots": { + "left hand item": { + "attachment": [ + { "time": 0, "name": "bow" } + ] + }, + "left hand": { + "attachment": [ + { "time": 0, "name": null } + ] + } +} +} \ No newline at end of file diff --git a/spine-cocos2dx/example/Resources/common/spineboy-jump.json b/spine-cocos2dx/example/Resources/common/spineboy-jump.json new file mode 100644 index 000000000..82a6f47be --- /dev/null +++ b/spine-cocos2dx/example/Resources/common/spineboy-jump.json @@ -0,0 +1,372 @@ +{ +"bones": { + "hip": { + "rotate": [ + { "time": 0, "angle": 0, "curve": "stepped" }, + { "time": 0.9333, "angle": 0, "curve": "stepped" }, + { "time": 1.3666, "angle": 0 } + ], + "translate": [ + { "time": 0, "x": -11.57, "y": -3 }, + { "time": 0.2333, "x": -16.2, "y": -19.43 }, + { "time": 0.3333, "x": 7.66, "y": -8.47 }, + { "time": 0.3666, "x": 15.38, "y": 5.01 }, + { "time": 0.4666, "x": -7.84, "y": 57.22 }, + { "time": 0.6, "x": -10.81, "y": 96.34 }, + { "time": 0.7332, "x": -7.01, "y": 54.7 }, + { "time": 0.8, "x": -10.58, "y": 32.2 }, + { "time": 0.9333, "x": -31.99, "y": 0.45 }, + { "time": 1.0666, "x": -12.48, "y": -29.47 }, + { "time": 1.3666, "x": -11.57, "y": -3 } + ], + "scale": [ + { "time": 0, "x": 1, "y": 1, "curve": "stepped" }, + { "time": 0.9333, "x": 1, "y": 1, "curve": "stepped" }, + { "time": 1.3666, "x": 1, "y": 1 } + ] + }, + "left upper leg": { + "rotate": [ + { "time": 0, "angle": 17.12 }, + { "time": 0.2333, "angle": 44.35 }, + { "time": 0.3333, "angle": 16.45 }, + { "time": 0.4, "angle": -9.88 }, + { "time": 0.4666, "angle": -11.42 }, + { "time": 0.5666, "angle": 23.46 }, + { "time": 0.7666, "angle": 71.82 }, + { "time": 0.9333, "angle": 65.53 }, + { "time": 1.0666, "angle": 51.01 }, + { "time": 1.3666, "angle": 17.12 } + ], + "translate": [ + { "time": 0, "x": -3, "y": -2.25, "curve": "stepped" }, + { "time": 0.9333, "x": -3, "y": -2.25, "curve": "stepped" }, + { "time": 1.3666, "x": -3, "y": -2.25 } + ], + "scale": [ + { "time": 0, "x": 1, "y": 1, "curve": "stepped" }, + { "time": 0.9333, "x": 1, "y": 1, "curve": "stepped" }, + { "time": 1.3666, "x": 1, "y": 1 } + ] + }, + "left lower leg": { + "rotate": [ + { "time": 0, "angle": -16.25 }, + { "time": 0.2333, "angle": -52.21 }, + { "time": 0.4, "angle": 15.04 }, + { "time": 0.4666, "angle": -8.95 }, + { "time": 0.5666, "angle": -39.53 }, + { "time": 0.7666, "angle": -27.27 }, + { "time": 0.9333, "angle": -3.52 }, + { "time": 1.0666, "angle": -61.92 }, + { "time": 1.3666, "angle": -16.25 } + ], + "translate": [ + { "time": 0, "x": 0, "y": 0, "curve": "stepped" }, + { "time": 0.9333, "x": 0, "y": 0, "curve": "stepped" }, + { "time": 1.3666, "x": 0, "y": 0 } + ], + "scale": [ + { "time": 0, "x": 1, "y": 1, "curve": "stepped" }, + { "time": 0.9333, "x": 1, "y": 1, "curve": "stepped" }, + { "time": 1.3666, "x": 1, "y": 1 } + ] + }, + "left foot": { + "rotate": [ + { "time": 0, "angle": 0.33 }, + { "time": 0.2333, "angle": 6.2 }, + { "time": 0.3333, "angle": 14.73 }, + { "time": 0.4, "angle": -15.54 }, + { "time": 0.4333, "angle": -21.2 }, + { "time": 0.5666, "angle": -7.55 }, + { "time": 0.7666, "angle": -0.67 }, + { "time": 0.9333, "angle": -0.58 }, + { "time": 1.0666, "angle": 14.64 }, + { "time": 1.3666, "angle": 0.33 } + ], + "translate": [ + { "time": 0, "x": 0, "y": 0, "curve": "stepped" }, + { "time": 0.9333, "x": 0, "y": 0, "curve": "stepped" }, + { "time": 1.3666, "x": 0, "y": 0 } + ], + "scale": [ + { "time": 0, "x": 1, "y": 1, "curve": "stepped" }, + { "time": 0.9333, "x": 1, "y": 1, "curve": "stepped" }, + { "time": 1.3666, "x": 1, "y": 1 } + ] + }, + "right upper leg": { + "rotate": [ + { "time": 0, "angle": 25.97 }, + { "time": 0.2333, "angle": 46.43 }, + { "time": 0.3333, "angle": 22.61 }, + { "time": 0.4, "angle": 2.13 }, + { "time": 0.4666, "angle": 0.04 }, + { "time": 0.6, "angle": 65.55 }, + { "time": 0.7666, "angle": 64.93 }, + { "time": 0.9333, "angle": 41.08 }, + { "time": 1.0666, "angle": 66.25 }, + { "time": 1.3666, "angle": 25.97 } + ], + "translate": [ + { "time": 0, "x": 5.74, "y": 0.61 }, + { "time": 0.2333, "x": 4.79, "y": 1.79 }, + { "time": 0.3333, "x": 6.05, "y": -4.55 }, + { "time": 0.9333, "x": 4.79, "y": 1.79, "curve": "stepped" }, + { "time": 1.0666, "x": 4.79, "y": 1.79 }, + { "time": 1.3666, "x": 5.74, "y": 0.61 } + ], + "scale": [ + { "time": 0, "x": 1, "y": 1, "curve": "stepped" }, + { "time": 0.9333, "x": 1, "y": 1, "curve": "stepped" }, + { "time": 1.3666, "x": 1, "y": 1 } + ] + }, + "right lower leg": { + "rotate": [ + { "time": 0, "angle": -27.46 }, + { "time": 0.2333, "angle": -64.03 }, + { "time": 0.4, "angle": -48.36 }, + { "time": 0.5666, "angle": -76.86 }, + { "time": 0.7666, "angle": -26.89 }, + { "time": 0.9, "angle": -18.96 }, + { "time": 0.9333, "angle": -14.18 }, + { "time": 1.0666, "angle": -80.44 }, + { "time": 1.3666, "angle": -27.46 } + ], + "translate": [ + { "time": 0, "x": 0, "y": 0, "curve": "stepped" }, + { "time": 0.9333, "x": 0, "y": 0, "curve": "stepped" }, + { "time": 1.3666, "x": 0, "y": 0 } + ], + "scale": [ + { "time": 0, "x": 1, "y": 1, "curve": "stepped" }, + { "time": 0.9333, "x": 1, "y": 1, "curve": "stepped" }, + { "time": 1.3666, "x": 1, "y": 1 } + ] + }, + "right foot": { + "rotate": [ + { "time": 0, "angle": 1.08 }, + { "time": 0.2333, "angle": 16.02 }, + { "time": 0.3, "angle": 12.94 }, + { "time": 0.3333, "angle": 15.16 }, + { "time": 0.4, "angle": -14.7 }, + { "time": 0.4333, "angle": -12.85 }, + { "time": 0.4666, "angle": -19.18 }, + { "time": 0.5666, "angle": -15.82 }, + { "time": 0.6, "angle": -3.59 }, + { "time": 0.7666, "angle": -3.56 }, + { "time": 0.9333, "angle": 1.86 }, + { "time": 1.0666, "angle": 16.02 }, + { "time": 1.3666, "angle": 1.08 } + ], + "translate": [ + { "time": 0, "x": 0, "y": 0, "curve": "stepped" }, + { "time": 0.9333, "x": 0, "y": 0, "curve": "stepped" }, + { "time": 1.3666, "x": 0, "y": 0 } + ], + "scale": [ + { "time": 0, "x": 1, "y": 1, "curve": "stepped" }, + { "time": 0.9333, "x": 1, "y": 1, "curve": "stepped" }, + { "time": 1.3666, "x": 1, "y": 1 } + ] + }, + "torso": { + "rotate": [ + { "time": 0, "angle": -13.35 }, + { "time": 0.2333, "angle": -48.95 }, + { "time": 0.4333, "angle": -35.77 }, + { "time": 0.6, "angle": -4.59 }, + { "time": 0.7666, "angle": 14.61 }, + { "time": 0.9333, "angle": 15.74 }, + { "time": 1.0666, "angle": -32.43 }, + { "time": 1.3666, "angle": -13.35 } + ], + "translate": [ + { "time": 0, "x": -3.67, "y": 1.68, "curve": "stepped" }, + { "time": 0.9333, "x": -3.67, "y": 1.68, "curve": "stepped" }, + { "time": 1.3666, "x": -3.67, "y": 1.68 } + ], + "scale": [ + { "time": 0, "x": 1, "y": 1, "curve": "stepped" }, + { "time": 0.9333, "x": 1, "y": 1, "curve": "stepped" }, + { "time": 1.3666, "x": 1, "y": 1 } + ] + }, + "neck": { + "rotate": [ + { "time": 0, "angle": 12.78 }, + { "time": 0.2333, "angle": 16.45 }, + { "time": 0.4, "angle": 26.49 }, + { "time": 0.6, "angle": 15.51 }, + { "time": 0.7666, "angle": 1.34 }, + { "time": 0.9333, "angle": 2.34 }, + { "time": 1.0666, "angle": 6.08 }, + { "time": 1.3, "angle": 21.23 }, + { "time": 1.3666, "angle": 12.78 } + ], + "translate": [ + { "time": 0, "x": 0, "y": 0, "curve": "stepped" }, + { "time": 0.9333, "x": 0, "y": 0, "curve": "stepped" }, + { "time": 1.3666, "x": 0, "y": 0 } + ], + "scale": [ + { "time": 0, "x": 1, "y": 1, "curve": "stepped" }, + { "time": 0.9333, "x": 1, "y": 1, "curve": "stepped" }, + { "time": 1.3666, "x": 1, "y": 1 } + ] + }, + "head": { + "rotate": [ + { "time": 0, "angle": 5.19 }, + { "time": 0.2333, "angle": 20.27 }, + { "time": 0.4, "angle": 15.27 }, + { "time": 0.6, "angle": -24.69 }, + { "time": 0.7666, "angle": -11.02 }, + { "time": 0.9333, "angle": -24.38 }, + { "time": 1.0666, "angle": 11.99 }, + { "time": 1.3, "angle": 4.86 }, + { "time": 1.3666, "angle": 5.19 } + ], + "translate": [ + { "time": 0, "x": 0, "y": 0, "curve": "stepped" }, + { "time": 0.9333, "x": 0, "y": 0, "curve": "stepped" }, + { "time": 1.3666, "x": 0, "y": 0 } + ], + "scale": [ + { "time": 0, "x": 1, "y": 1, "curve": "stepped" }, + { "time": 0.9333, "x": 1, "y": 1, "curve": "stepped" }, + { "time": 1.3666, "x": 1, "y": 1 } + ] + }, + "left shoulder": { + "rotate": [ + { "time": 0, "angle": 0.05 }, + { "time": 0.2333, "angle": 279.66 }, + { "time": 0.5, "angle": 62.27 }, + { "time": 0.9333, "angle": 28.91 }, + { "time": 1.0666, "angle": -8.62 }, + { "time": 1.1666, "angle": -18.43 }, + { "time": 1.3666, "angle": 0.05 } + ], + "translate": [ + { "time": 0, "x": -1.76, "y": 0.56, "curve": "stepped" }, + { "time": 0.9333, "x": -1.76, "y": 0.56, "curve": "stepped" }, + { "time": 1.3666, "x": -1.76, "y": 0.56 } + ], + "scale": [ + { "time": 0, "x": 1, "y": 1, "curve": "stepped" }, + { "time": 0.9333, "x": 1, "y": 1, "curve": "stepped" }, + { "time": 1.3666, "x": 1, "y": 1 } + ] + }, + "left hand": { + "rotate": [ + { "time": 0, "angle": 11.58, "curve": "stepped" }, + { "time": 0.9333, "angle": 11.58, "curve": "stepped" }, + { "time": 1.3666, "angle": 11.58 } + ], + "translate": [ + { "time": 0, "x": 0, "y": 0, "curve": "stepped" }, + { "time": 0.9333, "x": 0, "y": 0, "curve": "stepped" }, + { "time": 1.3666, "x": 0, "y": 0 } + ], + "scale": [ + { "time": 0, "x": 1, "y": 1, "curve": "stepped" }, + { "time": 0.9333, "x": 1, "y": 1, "curve": "stepped" }, + { "time": 1.3666, "x": 1, "y": 1 } + ] + }, + "left arm": { + "rotate": [ + { "time": 0, "angle": 0.51 }, + { "time": 0.4333, "angle": 12.82 }, + { "time": 0.6, "angle": 47.55 }, + { "time": 0.9333, "angle": 12.82 }, + { "time": 1.1666, "angle": -6.5 }, + { "time": 1.3666, "angle": 0.51 } + ], + "translate": [ + { "time": 0, "x": 0, "y": 0, "curve": "stepped" }, + { "time": 0.9333, "x": 0, "y": 0, "curve": "stepped" }, + { "time": 1.3666, "x": 0, "y": 0 } + ], + "scale": [ + { "time": 0, "x": 1, "y": 1, "curve": "stepped" }, + { "time": 0.9333, "x": 1, "y": 1, "curve": "stepped" }, + { "time": 1.3666, "x": 1, "y": 1 } + ] + }, + "right shoulder": { + "rotate": [ + { "time": 0, "angle": 43.82 }, + { "time": 0.2333, "angle": -8.74 }, + { "time": 0.5333, "angle": -208.02 }, + { "time": 0.9333, "angle": -246.72 }, + { "time": 1.0666, "angle": -307.13 }, + { "time": 1.1666, "angle": 37.15 }, + { "time": 1.3666, "angle": 43.82 } + ], + "translate": [ + { "time": 0, "x": -7.84, "y": 7.19, "curve": "stepped" }, + { "time": 0.9333, "x": -7.84, "y": 7.19, "curve": "stepped" }, + { "time": 1.3666, "x": -7.84, "y": 7.19 } + ], + "scale": [ + { "time": 0, "x": 1, "y": 1, "curve": "stepped" }, + { "time": 0.9333, "x": 1, "y": 1, "curve": "stepped" }, + { "time": 1.3666, "x": 1, "y": 1 } + ] + }, + "right arm": { + "rotate": [ + { "time": 0, "angle": -4.02 }, + { "time": 0.6, "angle": 17.5 }, + { "time": 0.9333, "angle": -4.02 }, + { "time": 1.1666, "angle": -16.71 }, + { "time": 1.3666, "angle": -4.02 } + ], + "translate": [ + { "time": 0, "x": 0, "y": 0, "curve": "stepped" }, + { "time": 0.9333, "x": 0, "y": 0, "curve": "stepped" }, + { "time": 1.3666, "x": 0, "y": 0 } + ], + "scale": [ + { "time": 0, "x": 1, "y": 1, "curve": "stepped" }, + { "time": 0.9333, "x": 1, "y": 1, "curve": "stepped" }, + { "time": 1.3666, "x": 1, "y": 1 } + ] + }, + "right hand": { + "rotate": [ + { "time": 0, "angle": 22.92, "curve": "stepped" }, + { "time": 0.9333, "angle": 22.92, "curve": "stepped" }, + { "time": 1.3666, "angle": 22.92 } + ], + "translate": [ + { "time": 0, "x": 0, "y": 0, "curve": "stepped" }, + { "time": 0.9333, "x": 0, "y": 0, "curve": "stepped" }, + { "time": 1.3666, "x": 0, "y": 0 } + ], + "scale": [ + { "time": 0, "x": 1, "y": 1, "curve": "stepped" }, + { "time": 0.9333, "x": 1, "y": 1, "curve": "stepped" }, + { "time": 1.3666, "x": 1, "y": 1 } + ] + }, + "root": { + "rotate": [ + { "time": 0, "angle": 0 }, + { "time": 0.4333, "angle": -14.52 }, + { "time": 0.8, "angle": 9.85 }, + { "time": 1.3666, "angle": 0 } + ], + "scale": [ + { "time": 0, "x": 1, "y": 1, "curve": "stepped" }, + { "time": 1.3666, "x": 1, "y": 1 } + ] + } +} +} \ No newline at end of file diff --git a/spine-cocos2dx/example/Resources/data/spineboy-skeleton.json b/spine-cocos2dx/example/Resources/common/spineboy-skeleton.json similarity index 93% rename from spine-cocos2dx/example/Resources/data/spineboy-skeleton.json rename to spine-cocos2dx/example/Resources/common/spineboy-skeleton.json index e6df6f99a..41acd6d28 100644 --- a/spine-cocos2dx/example/Resources/data/spineboy-skeleton.json +++ b/spine-cocos2dx/example/Resources/common/spineboy-skeleton.json @@ -1,7 +1,7 @@ { "bones": [ - { "name": "root", "length": 0 }, - { "name": "hip", "parent": "root", "length": 0, "x": 0.64, "y": 114.41 }, + { "name": "root" }, + { "name": "hip", "parent": "root", "x": 0.64, "y": 114.41 }, { "name": "left upper leg", "parent": "hip", "length": 50.39, "x": 14.45, "y": 2.81, "rotation": -89.09 }, { "name": "left lower leg", "parent": "left upper leg", "length": 56.45, "x": 51.78, "y": 3.46, "rotation": -16.65 }, { "name": "left foot", "parent": "left lower leg", "length": 46.5, "x": 64.02, "y": -8.67, "rotation": 102.43 }, @@ -15,16 +15,15 @@ { "name": "right arm", "parent": "right shoulder", "length": 36.74, "x": 49.95, "y": -0.12, "rotation": 40.12 }, { "name": "right hand", "parent": "right arm", "length": 15.32, "x": 36.9, "y": 0.34, "rotation": 2.35 }, { "name": "left shoulder", "parent": "torso", "length": 44.19, "x": 78.96, "y": -15.75, "rotation": -156.96 }, - { "name": "left arm", "parent": "left shoulder", "length": 35.62, "x": 44.19, "y": -0.01, "rotation": 28.16 }, + { "name": "left arm", "parent": "left shoulder", "length": 35.62, "x": 44.19, "y": -0.01, "rotation": 44.77 }, { "name": "left hand", "parent": "left arm", "length": 11.52, "x": 35.62, "y": 0.07, "rotation": 2.7 }, - { "name": "pelvis", "parent": "hip", "length": 0, "x": 1.41, "y": -6.57 } + { "name": "pelvis", "parent": "hip", "x": 1.41, "y": -6.57 } ], "slots": [ - { "name": "template", "bone": "root", "color": "ff898c86" }, { "name": "left shoulder", "bone": "left shoulder", "attachment": "left-shoulder" }, { "name": "left arm", "bone": "left arm", "attachment": "left-arm" }, - { "name": "left hand", "bone": "left hand", "attachment": "left-hand" }, { "name": "left foot", "bone": "left foot", "attachment": "left-foot" }, + { "name": "left hand", "bone": "left hand", "attachment": "left-hand" }, { "name": "left lower leg", "bone": "left lower leg", "attachment": "left-lower-leg" }, { "name": "left upper leg", "bone": "left upper leg", "attachment": "left-upper-leg" }, { "name": "pelvis", "bone": "pelvis", "attachment": "pelvis" }, @@ -37,7 +36,8 @@ { "name": "eyes", "bone": "head", "attachment": "eyes" }, { "name": "right shoulder", "bone": "right shoulder", "attachment": "right-shoulder" }, { "name": "right arm", "bone": "right arm", "attachment": "right-arm" }, - { "name": "right hand", "bone": "right hand", "attachment": "right-hand" } + { "name": "right hand", "bone": "right hand", "attachment": "right-hand" }, + { "name": "left hand item", "bone": "left hand" } ], "skins": { "default": { @@ -47,12 +47,12 @@ "left arm": { "left-arm": { "x": 15.11, "y": -0.44, "rotation": 33.84, "width": 35, "height": 29 } }, - "left hand": { - "left-hand": { "x": 0.75, "y": 1.86, "rotation": 31.14, "width": 35, "height": 38 } - }, "left foot": { "left-foot": { "x": 24.35, "y": 8.88, "rotation": 3.32, "width": 65, "height": 30 } }, + "left hand": { + "left-hand": { "x": 0.75, "y": 1.86, "rotation": 31.14, "width": 35, "height": 38 } + }, "left lower leg": { "left-lower-leg": { "x": 24.55, "y": -1.92, "rotation": 105.75, "width": 49, "height": 64 } }, @@ -92,6 +92,9 @@ }, "right hand": { "right-hand": { "x": 6.82, "y": 1.25, "rotation": 91.96, "width": 32, "height": 32 } + }, + "left hand item": { + "bow": { "x": -20.35, "y": 9.68, "rotation": 4.85, "width": 65, "height": 261 } } } } diff --git a/spine-cocos2dx/example/Resources/data/spineboy-walk.json b/spine-cocos2dx/example/Resources/common/spineboy-walk.json similarity index 100% rename from spine-cocos2dx/example/Resources/data/spineboy-walk.json rename to spine-cocos2dx/example/Resources/common/spineboy-walk.json diff --git a/spine-cocos2dx/example/Resources/data/spineboy.png b/spine-cocos2dx/example/Resources/data/spineboy.png deleted file mode 100644 index b8b493dfd..000000000 Binary files a/spine-cocos2dx/example/Resources/data/spineboy.png and /dev/null differ diff --git a/spine-cocos2dx/example/Resources/iphone-retina/spineboy.png b/spine-cocos2dx/example/Resources/iphone-retina/spineboy.png new file mode 100644 index 000000000..3efcfccee Binary files /dev/null and b/spine-cocos2dx/example/Resources/iphone-retina/spineboy.png differ diff --git a/spine-cocos2dx/example/Resources/data/spineboy.atlas b/spine-cocos2dx/example/Resources/iphone-retina/spineboy.txt similarity index 69% rename from spine-cocos2dx/example/Resources/data/spineboy.atlas rename to spine-cocos2dx/example/Resources/iphone-retina/spineboy.txt index 84a06f292..5c0da8511 100644 --- a/spine-cocos2dx/example/Resources/data/spineboy.atlas +++ b/spine-cocos2dx/example/Resources/iphone-retina/spineboy.txt @@ -1,165 +1,171 @@ - -data/spineboy.png +spineboy.png format: RGBA8888 -filter: Nearest,Nearest +filter: Linear,Linear repeat: none -head - rotate: false - xy: 1, 122 - size: 121, 132 - orig: 121, 132 - offset: 0, 0 - index: -1 -torso - rotate: false - xy: 1, 28 - size: 68, 92 - orig: 68, 92 - offset: 0, 0 - index: -1 -left-pant-bottom - rotate: false - xy: 1, 4 - size: 44, 22 - orig: 44, 22 - offset: 0, 0 - index: -1 -right-pant-bottom - rotate: false - xy: 47, 8 - size: 46, 18 - orig: 46, 18 - offset: 0, 0 - index: -1 -right-upper-leg - rotate: false - xy: 71, 50 - size: 44, 70 - orig: 44, 70 - offset: 0, 0 - index: -1 -pelvis - rotate: false - xy: 95, 1 - size: 63, 47 - orig: 63, 47 - offset: 0, 0 - index: -1 -left-upper-leg - rotate: false - xy: 117, 53 - size: 33, 67 - orig: 33, 67 - offset: 0, 0 - index: -1 -right-foot - rotate: false - xy: 160, 224 - size: 67, 30 - orig: 67, 30 - offset: 0, 0 - index: -1 -left-shoulder - rotate: false - xy: 124, 201 - size: 34, 53 - orig: 34, 53 - offset: 0, 0 - index: -1 left-ankle rotate: false - xy: 229, 222 + xy: 67, 644 size: 25, 32 orig: 25, 32 offset: 0, 0 index: -1 +left-lower-leg + rotate: false + xy: 74, 208 + size: 49, 64 + orig: 49, 64 + offset: 0, 0 + index: -1 +left-pant-bottom + rotate: false + xy: 69, 567 + size: 44, 22 + orig: 44, 22 + offset: 0, 0 + index: -1 +right-shoulder + rotate: false + xy: 71, 274 + size: 52, 51 + orig: 52, 51 + offset: 0, 0 + index: -1 +right-ankle + rotate: false + xy: 94, 628 + size: 25, 30 + orig: 25, 30 + offset: 0, 0 + index: -1 +right-pant-bottom + rotate: false + xy: 69, 524 + size: 46, 18 + orig: 46, 18 + offset: 0, 0 + index: -1 +head + rotate: false + xy: 2, 2 + size: 121, 132 + orig: 121, 132 + offset: 0, 0 + index: -1 +eyes + rotate: true + xy: 96, 136 + size: 27, 34 + orig: 34, 27 + offset: 0, 0 + index: -1 +eyes-closed + rotate: true + xy: 96, 172 + size: 27, 34 + orig: 34, 27 + offset: 0, 0 + index: -1 +torso + rotate: true + xy: 2, 136 + size: 92, 68 + orig: 68, 92 + offset: 0, 0 + index: -1 left-foot rotate: false - xy: 160, 192 + xy: 2, 582 size: 65, 30 orig: 65, 30 offset: 0, 0 index: -1 neck rotate: false - xy: 124, 171 + xy: 33, 614 size: 34, 28 orig: 34, 28 offset: 0, 0 index: -1 -right-arm +right-foot rotate: false - xy: 124, 124 - size: 21, 45 - orig: 21, 45 + xy: 2, 287 + size: 67, 30 + orig: 67, 30 offset: 0, 0 index: -1 -right-ankle - rotate: false - xy: 227, 190 - size: 25, 30 - orig: 25, 30 +left-shoulder + rotate: true + xy: 69, 327 + size: 53, 34 + orig: 34, 53 offset: 0, 0 index: -1 -left-hand - rotate: false - xy: 147, 131 - size: 35, 38 - orig: 35, 38 +right-upper-leg + rotate: true + xy: 2, 206 + size: 70, 44 + orig: 44, 70 offset: 0, 0 index: -1 left-arm - rotate: false - xy: 184, 161 - size: 35, 29 + rotate: true + xy: 2, 628 + size: 29, 35 orig: 35, 29 offset: 0, 0 index: -1 -eyes-closed - rotate: false - xy: 221, 161 - size: 34, 27 - orig: 34, 27 +left-hand + rotate: true + xy: 69, 591 + size: 38, 35 + orig: 35, 38 offset: 0, 0 index: -1 -right-lower-leg +bow rotate: false - xy: 152, 65 - size: 51, 64 - orig: 51, 64 + xy: 2, 319 + size: 65, 261 + orig: 65, 261 + offset: 0, 0 + index: -1 +right-arm + rotate: true + xy: 69, 544 + size: 45, 21 + orig: 21, 45 offset: 0, 0 index: -1 right-foot-idle rotate: false - xy: 184, 131 + xy: 69, 363 size: 53, 28 orig: 53, 28 offset: 0, 0 index: -1 -left-lower-leg +right-lower-leg rotate: false - xy: 205, 65 - size: 49, 64 - orig: 49, 64 + xy: 69, 393 + size: 51, 64 + orig: 51, 64 offset: 0, 0 index: -1 -right-shoulder - rotate: false - xy: 160, 12 - size: 52, 51 - orig: 52, 51 +pelvis + rotate: true + xy: 69, 459 + size: 47, 63 + orig: 63, 47 offset: 0, 0 index: -1 -eyes - rotate: false - xy: 214, 36 - size: 34, 27 - orig: 34, 27 +left-upper-leg + rotate: true + xy: 2, 252 + size: 67, 33 + orig: 33, 67 offset: 0, 0 index: -1 right-hand rotate: false - xy: 214, 2 + xy: 33, 644 size: 32, 32 orig: 32, 32 offset: 0, 0 diff --git a/spine-cocos2dx/example/Resources/iphone/spineboy.png b/spine-cocos2dx/example/Resources/iphone/spineboy.png new file mode 100644 index 000000000..c43543727 Binary files /dev/null and b/spine-cocos2dx/example/Resources/iphone/spineboy.png differ diff --git a/spine-cocos2dx/example/Resources/iphone/spineboy.txt b/spine-cocos2dx/example/Resources/iphone/spineboy.txt new file mode 100644 index 000000000..7be5a2100 --- /dev/null +++ b/spine-cocos2dx/example/Resources/iphone/spineboy.txt @@ -0,0 +1,172 @@ +spineboy.png +format: RGBA8888 +filter: Linear,Linear +repeat: none +left-ankle + rotate: true + xy: 168, 92 + size: 16, 13 + orig: 13, 16 + offset: 0, 0 + index: -1 +left-lower-leg + rotate: false + xy: 101, 37 + size: 25, 32 + orig: 25, 32 + offset: 0, 0 + index: -1 +left-pant-bottom + rotate: false + xy: 152, 61 + size: 22, 11 + orig: 22, 11 + offset: 0, 0 + index: -1 +right-shoulder + rotate: false + xy: 127, 74 + size: 26, 26 + orig: 26, 26 + offset: 0, 0 + index: -1 +right-ankle + rotate: false + xy: 148, 107 + size: 13, 15 + orig: 13, 15 + offset: 0, 0 + index: -1 +right-pant-bottom + rotate: true + xy: 152, 36 + size: 9, 23 + orig: 23, 9 + offset: 0, 0 + index: -1 +head + rotate: false + xy: 2, 37 + size: 61, 66 + orig: 61, 66 + offset: 0, 0 + index: -1 +eyes + rotate: true + xy: 112, 105 + size: 14, 17 + orig: 17, 14 + offset: 0, 0 + index: -1 +eyes-closed + rotate: false + xy: 163, 107 + size: 17, 14 + orig: 17, 14 + offset: 0, 0 + index: -1 +torso + rotate: false + xy: 65, 37 + size: 34, 46 + orig: 34, 46 + offset: 0, 0 + index: -1 +left-foot + rotate: true + xy: 163, 2 + size: 15, 33 + orig: 33, 15 + offset: 0, 0 + index: -1 +neck + rotate: true + xy: 96, 105 + size: 14, 17 + orig: 17, 14 + offset: 0, 0 + index: -1 +right-foot + rotate: false + xy: 65, 85 + size: 34, 15 + orig: 34, 15 + offset: 0, 0 + index: -1 +left-shoulder + rotate: true + xy: 38, 105 + size: 27, 17 + orig: 17, 27 + offset: 0, 0 + index: -1 +right-upper-leg + rotate: false + xy: 128, 37 + size: 22, 35 + orig: 22, 35 + offset: 0, 0 + index: -1 +left-arm + rotate: true + xy: 163, 37 + size: 15, 18 + orig: 18, 15 + offset: 0, 0 + index: -1 +left-hand + rotate: false + xy: 128, 102 + size: 18, 19 + orig: 18, 19 + offset: 0, 0 + index: -1 +bow + rotate: true + xy: 2, 2 + size: 131, 33 + orig: 33, 131 + offset: 0, 0 + index: -1 +right-arm + rotate: false + xy: 155, 74 + size: 11, 23 + orig: 11, 23 + offset: 0, 0 + index: -1 +right-foot-idle + rotate: false + xy: 67, 102 + size: 27, 14 + orig: 27, 14 + offset: 0, 0 + index: -1 +right-lower-leg + rotate: false + xy: 135, 2 + size: 26, 32 + orig: 26, 32 + offset: 0, 0 + index: -1 +pelvis + rotate: true + xy: 101, 71 + size: 24, 32 + orig: 32, 24 + offset: 0, 0 + index: -1 +left-upper-leg + rotate: true + xy: 2, 105 + size: 34, 17 + orig: 17, 34 + offset: 0, 0 + index: -1 +right-hand + rotate: false + xy: 168, 74 + size: 16, 16 + orig: 16, 16 + offset: 0, 0 + index: -1 diff --git a/spine-cocos2dx/example/proj.ios/ExampleSpine.xcodeproj/project.pbxproj b/spine-cocos2dx/example/proj.ios/ExampleSpine.xcodeproj/project.pbxproj index e53c54ece..4b8cb3a1a 100755 --- a/spine-cocos2dx/example/proj.ios/ExampleSpine.xcodeproj/project.pbxproj +++ b/spine-cocos2dx/example/proj.ios/ExampleSpine.xcodeproj/project.pbxproj @@ -11,6 +11,9 @@ 1D60589F0D05DD5A006BFB54 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1D30AB110D05D00D00671497 /* Foundation.framework */; }; 1DF5F4E00D08C38300B7A737 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1DF5F4DF0D08C38300B7A737 /* UIKit.framework */; }; 288765A50DF7441C002DB57D /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 288765A40DF7441C002DB57D /* CoreGraphics.framework */; }; + 2FC812261700449A00A93590 /* iphone in Resources */ = {isa = PBXBuildFile; fileRef = 2FC812241700449A00A93590 /* iphone */; }; + 2FC812271700449A00A93590 /* iphone-retina in Resources */ = {isa = PBXBuildFile; fileRef = 2FC812251700449A00A93590 /* iphone-retina */; }; + 2FC812291700479600A93590 /* common in Resources */ = {isa = PBXBuildFile; fileRef = 2FC812281700479600A93590 /* common */; }; 2FEE8527170030A20013E4C9 /* AppDelegate.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2FEE8522170030A20013E4C9 /* AppDelegate.cpp */; }; 2FEE8528170030A20013E4C9 /* ExampleScene.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2FEE8525170030A20013E4C9 /* ExampleScene.cpp */; }; 2FEE85931700331D0013E4C9 /* Atlas.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2FEE858D1700331D0013E4C9 /* Atlas.cpp */; }; @@ -38,7 +41,6 @@ 2FEE85D6170033410013E4C9 /* Skin.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2FEE85C9170033410013E4C9 /* Skin.cpp */; }; 2FEE85D7170033410013E4C9 /* Slot.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2FEE85CA170033410013E4C9 /* Slot.cpp */; }; 2FEE85D8170033410013E4C9 /* SlotData.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2FEE85CB170033410013E4C9 /* SlotData.cpp */; }; - 2FEE85DE170033BC0013E4C9 /* data in Resources */ = {isa = PBXBuildFile; fileRef = 2FEE85DD170033BC0013E4C9 /* data */; }; BF1373EF128A898400D9F789 /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BF492D4B1289302400A09262 /* OpenGLES.framework */; }; BF1373F0128A899500D9F789 /* libxml2.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = BF492C21128924A800A09262 /* libxml2.dylib */; }; BF1373F1128A899E00D9F789 /* libz.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = BF492B6912891AC600A09262 /* libz.dylib */; }; @@ -78,6 +80,9 @@ 1D6058910D05DD3D006BFB54 /* ExampleSpine.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = ExampleSpine.app; sourceTree = BUILT_PRODUCTS_DIR; }; 1DF5F4DF0D08C38300B7A737 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; }; 288765A40DF7441C002DB57D /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = System/Library/Frameworks/CoreGraphics.framework; sourceTree = SDKROOT; }; + 2FC812241700449A00A93590 /* iphone */ = {isa = PBXFileReference; lastKnownFileType = folder; path = iphone; sourceTree = ""; }; + 2FC812251700449A00A93590 /* iphone-retina */ = {isa = PBXFileReference; lastKnownFileType = folder; path = "iphone-retina"; sourceTree = ""; }; + 2FC812281700479600A93590 /* common */ = {isa = PBXFileReference; lastKnownFileType = folder; path = common; sourceTree = ""; }; 2FEE8522170030A20013E4C9 /* AppDelegate.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AppDelegate.cpp; sourceTree = ""; }; 2FEE8523170030A20013E4C9 /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = ""; }; 2FEE8524170030A20013E4C9 /* AppMacros.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AppMacros.h; sourceTree = ""; }; @@ -139,7 +144,6 @@ 2FEE85C9170033410013E4C9 /* Skin.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = Skin.cpp; path = "../../../spine-cpp/src/spine/Skin.cpp"; sourceTree = ""; }; 2FEE85CA170033410013E4C9 /* Slot.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = Slot.cpp; path = "../../../spine-cpp/src/spine/Slot.cpp"; sourceTree = ""; }; 2FEE85CB170033410013E4C9 /* SlotData.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SlotData.cpp; path = "../../../spine-cpp/src/spine/SlotData.cpp"; sourceTree = ""; }; - 2FEE85DD170033BC0013E4C9 /* data */ = {isa = PBXFileReference; lastKnownFileType = folder; path = data; sourceTree = ""; }; 781C33B11547F06B00633F88 /* OpenAL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenAL.framework; path = System/Library/Frameworks/OpenAL.framework; sourceTree = SDKROOT; }; 781C33B31547F06B00633F88 /* AudioToolbox.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioToolbox.framework; path = System/Library/Frameworks/AudioToolbox.framework; sourceTree = SDKROOT; }; 781C33B51547F06B00633F88 /* AVFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AVFoundation.framework; path = System/Library/Frameworks/AVFoundation.framework; sourceTree = SDKROOT; }; @@ -324,7 +328,9 @@ 784521C214EBA449009D533B /* Resources */ = { isa = PBXGroup; children = ( - 2FEE85DD170033BC0013E4C9 /* data */, + 2FC812281700479600A93590 /* common */, + 2FC812241700449A00A93590 /* iphone */, + 2FC812251700449A00A93590 /* iphone-retina */, D4EF94ED15BD319D00D803EB /* Icon-144.png */, D4EF94EB15BD319B00D803EB /* Icon-72.png */, D4EF94E915BD319500D803EB /* Icon-114.png */, @@ -442,7 +448,9 @@ 2FEE85B91700333C0013E4C9 /* json_internalarray.inl in Resources */, 2FEE85BA1700333C0013E4C9 /* json_internalmap.inl in Resources */, 2FEE85BD1700333C0013E4C9 /* json_valueiterator.inl in Resources */, - 2FEE85DE170033BC0013E4C9 /* data in Resources */, + 2FC812261700449A00A93590 /* iphone in Resources */, + 2FC812271700449A00A93590 /* iphone-retina in Resources */, + 2FC812291700479600A93590 /* common in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; diff --git a/spine-cocos2dx/example/proj.ios/ExampleSpine.xcodeproj/project.xcworkspace/xcuserdata/pancake.xcuserdatad/UserInterfaceState.xcuserstate b/spine-cocos2dx/example/proj.ios/ExampleSpine.xcodeproj/project.xcworkspace/xcuserdata/pancake.xcuserdatad/UserInterfaceState.xcuserstate index 9b1d2f755..98ef9cdcc 100644 Binary files a/spine-cocos2dx/example/proj.ios/ExampleSpine.xcodeproj/project.xcworkspace/xcuserdata/pancake.xcuserdatad/UserInterfaceState.xcuserstate and b/spine-cocos2dx/example/proj.ios/ExampleSpine.xcodeproj/project.xcworkspace/xcuserdata/pancake.xcuserdatad/UserInterfaceState.xcuserstate differ diff --git a/spine-cocos2dx/example/proj.ios/ExampleSpine.xcodeproj/xcuserdata/pancake.xcuserdatad/xcdebugger/Breakpoints.xcbkptlist b/spine-cocos2dx/example/proj.ios/ExampleSpine.xcodeproj/xcuserdata/pancake.xcuserdatad/xcdebugger/Breakpoints.xcbkptlist new file mode 100644 index 000000000..05301bc25 --- /dev/null +++ b/spine-cocos2dx/example/proj.ios/ExampleSpine.xcodeproj/xcuserdata/pancake.xcuserdatad/xcdebugger/Breakpoints.xcbkptlist @@ -0,0 +1,5 @@ + + + diff --git a/spine-cocos2dx/example/raw/images/bow.png b/spine-cocos2dx/example/raw/images/bow.png new file mode 100755 index 000000000..df8994bce Binary files /dev/null and b/spine-cocos2dx/example/raw/images/bow.png differ diff --git a/spine-cocos2dx/example/raw/images/eyes-closed.png b/spine-cocos2dx/example/raw/images/eyes-closed.png new file mode 100755 index 000000000..60718e101 Binary files /dev/null and b/spine-cocos2dx/example/raw/images/eyes-closed.png differ diff --git a/spine-cocos2dx/example/raw/images/eyes.png b/spine-cocos2dx/example/raw/images/eyes.png new file mode 100755 index 000000000..707c91b72 Binary files /dev/null and b/spine-cocos2dx/example/raw/images/eyes.png differ diff --git a/spine-cocos2dx/example/raw/images/head.png b/spine-cocos2dx/example/raw/images/head.png new file mode 100755 index 000000000..5a98aa37a Binary files /dev/null and b/spine-cocos2dx/example/raw/images/head.png differ diff --git a/spine-cocos2dx/example/raw/images/left-ankle.png b/spine-cocos2dx/example/raw/images/left-ankle.png new file mode 100755 index 000000000..fcf9a2813 Binary files /dev/null and b/spine-cocos2dx/example/raw/images/left-ankle.png differ diff --git a/spine-cocos2dx/example/raw/images/left-arm.png b/spine-cocos2dx/example/raw/images/left-arm.png new file mode 100755 index 000000000..4447dec8a Binary files /dev/null and b/spine-cocos2dx/example/raw/images/left-arm.png differ diff --git a/spine-cocos2dx/example/raw/images/left-foot.png b/spine-cocos2dx/example/raw/images/left-foot.png new file mode 100755 index 000000000..9b8768277 Binary files /dev/null and b/spine-cocos2dx/example/raw/images/left-foot.png differ diff --git a/spine-cocos2dx/example/raw/images/left-hand.png b/spine-cocos2dx/example/raw/images/left-hand.png new file mode 100755 index 000000000..b95a3523c Binary files /dev/null and b/spine-cocos2dx/example/raw/images/left-hand.png differ diff --git a/spine-cocos2dx/example/raw/images/left-lower-leg.png b/spine-cocos2dx/example/raw/images/left-lower-leg.png new file mode 100755 index 000000000..f316b6500 Binary files /dev/null and b/spine-cocos2dx/example/raw/images/left-lower-leg.png differ diff --git a/spine-cocos2dx/example/raw/images/left-pant-bottom.png b/spine-cocos2dx/example/raw/images/left-pant-bottom.png new file mode 100755 index 000000000..29a05bc4f Binary files /dev/null and b/spine-cocos2dx/example/raw/images/left-pant-bottom.png differ diff --git a/spine-cocos2dx/example/raw/images/left-shoulder.png b/spine-cocos2dx/example/raw/images/left-shoulder.png new file mode 100755 index 000000000..7fd429dc3 Binary files /dev/null and b/spine-cocos2dx/example/raw/images/left-shoulder.png differ diff --git a/spine-cocos2dx/example/raw/images/left-upper-leg.png b/spine-cocos2dx/example/raw/images/left-upper-leg.png new file mode 100755 index 000000000..f076d5c91 Binary files /dev/null and b/spine-cocos2dx/example/raw/images/left-upper-leg.png differ diff --git a/spine-cocos2dx/example/raw/images/neck.png b/spine-cocos2dx/example/raw/images/neck.png new file mode 100755 index 000000000..c7b938863 Binary files /dev/null and b/spine-cocos2dx/example/raw/images/neck.png differ diff --git a/spine-cocos2dx/example/raw/images/pack.json b/spine-cocos2dx/example/raw/images/pack.json new file mode 100755 index 000000000..4e702ea9b --- /dev/null +++ b/spine-cocos2dx/example/raw/images/pack.json @@ -0,0 +1,8 @@ +{ + pot: true, + paddingX: 2, + paddingY: 2, + duplicatePadding: false, + filterMin: Linear, + filterMag: Linear, +} \ No newline at end of file diff --git a/spine-cocos2dx/example/raw/images/pelvis.png b/spine-cocos2dx/example/raw/images/pelvis.png new file mode 100755 index 000000000..f52c33cdd Binary files /dev/null and b/spine-cocos2dx/example/raw/images/pelvis.png differ diff --git a/spine-cocos2dx/example/raw/images/right-ankle.png b/spine-cocos2dx/example/raw/images/right-ankle.png new file mode 100755 index 000000000..92fc568cf Binary files /dev/null and b/spine-cocos2dx/example/raw/images/right-ankle.png differ diff --git a/spine-cocos2dx/example/raw/images/right-arm.png b/spine-cocos2dx/example/raw/images/right-arm.png new file mode 100755 index 000000000..cac970f4b Binary files /dev/null and b/spine-cocos2dx/example/raw/images/right-arm.png differ diff --git a/spine-cocos2dx/example/raw/images/right-foot-idle.png b/spine-cocos2dx/example/raw/images/right-foot-idle.png new file mode 100755 index 000000000..aaf609f4e Binary files /dev/null and b/spine-cocos2dx/example/raw/images/right-foot-idle.png differ diff --git a/spine-cocos2dx/example/raw/images/right-foot.png b/spine-cocos2dx/example/raw/images/right-foot.png new file mode 100755 index 000000000..7a06bf2de Binary files /dev/null and b/spine-cocos2dx/example/raw/images/right-foot.png differ diff --git a/spine-cocos2dx/example/raw/images/right-hand.png b/spine-cocos2dx/example/raw/images/right-hand.png new file mode 100755 index 000000000..17c62bf4a Binary files /dev/null and b/spine-cocos2dx/example/raw/images/right-hand.png differ diff --git a/spine-cocos2dx/example/raw/images/right-lower-leg.png b/spine-cocos2dx/example/raw/images/right-lower-leg.png new file mode 100755 index 000000000..1f00e8ec9 Binary files /dev/null and b/spine-cocos2dx/example/raw/images/right-lower-leg.png differ diff --git a/spine-cocos2dx/example/raw/images/right-pant-bottom.png b/spine-cocos2dx/example/raw/images/right-pant-bottom.png new file mode 100755 index 000000000..73309c05d Binary files /dev/null and b/spine-cocos2dx/example/raw/images/right-pant-bottom.png differ diff --git a/spine-cocos2dx/example/raw/images/right-shoulder.png b/spine-cocos2dx/example/raw/images/right-shoulder.png new file mode 100755 index 000000000..23e9a2fd1 Binary files /dev/null and b/spine-cocos2dx/example/raw/images/right-shoulder.png differ diff --git a/spine-cocos2dx/example/raw/images/right-upper-leg.png b/spine-cocos2dx/example/raw/images/right-upper-leg.png new file mode 100755 index 000000000..df0b11661 Binary files /dev/null and b/spine-cocos2dx/example/raw/images/right-upper-leg.png differ diff --git a/spine-cocos2dx/example/raw/images/torso.png b/spine-cocos2dx/example/raw/images/torso.png new file mode 100755 index 000000000..d5a318e72 Binary files /dev/null and b/spine-cocos2dx/example/raw/images/torso.png differ diff --git a/spine-cocos2dx/example/raw/spineboy.project b/spine-cocos2dx/example/raw/spineboy.project new file mode 100755 index 000000000..562b34880 Binary files /dev/null and b/spine-cocos2dx/example/raw/spineboy.project differ diff --git a/spine-cocos2dx/example/raw/spineboy.tps b/spine-cocos2dx/example/raw/spineboy.tps new file mode 100644 index 000000000..d5d8c92e8 --- /dev/null +++ b/spine-cocos2dx/example/raw/spineboy.tps @@ -0,0 +1,171 @@ + + + + fileFormatVersion + 1 + variation + main + verbose + + autoSDSettings + + + scale + 0.5 + extension + /iphone/ + acceptFractionalValues + + maxTextureSize + + width + 2048 + height + 2048 + + + + allowRotation + + quiet + + premultiplyAlpha + + shapeDebug + + dpi + 72 + dataFormat + libgdx + textureFileName + ../Resources/iphone-retina/spineboy.png + flipPVR + + ditherType + NearestNeighbour + backgroundColor + 0 + libGdx + + filtering + + x + Linear + y + Linear + + + shapePadding + 2 + jpgQuality + 80 + pngOptimizationLevel + 0 + textureSubPath + + textureFormat + png + borderPadding + 2 + maxTextureSize + + width + 2048 + height + 2048 + + fixedTextureSize + + width + -1 + height + -1 + + reduceBorderArtifacts + + algorithmSettings + + algorithm + MaxRects + freeSizeMode + Best + sizeConstraints + NPOT + forceSquared + + forceWordAligned + + maxRects + + heuristic + Best + + basic + + sortBy + Best + order + Ascending + + + andEngine + + minFilter + Linear + packageName + Texture + javaFileName + ../Resources/data/spineboy2.java + wrap + + s + Clamp + t + Clamp + + magFilter + MagLinear + + dataFileName + ../Resources/iphone-retina/spineboy.txt + mainExtension + /iphone-retina/ + forceIdenticalLayout + + outputFormat + RGBA8888 + autoAliasEnabled + + trimSpriteNames + + globalSpriteSettings + + scale + 1 + scaleMode + Smooth + innerPadding + 0 + extrude + 0 + trimThreshold + 1 + trimMode + Trim + heuristicMask + + + fileList + + images + + ignoreFileList + + replaceList + + commonDivisorX + 1 + commonDivisorY + 1 + +