更新说明:

新增了骨骼绑定node用法

参考:http://blog.csdn.net/n5/article/details/21795265

在SkeletonRenderer.h 和cpp里面新加了以上链接的内容,在SkeletonRenderer_luabinding.tolua需要新添CCNode* SkeletonRenderer::getNodeForSlot(const char* slotName)

下载地址:http://pan.baidu.com/s/1bnyJw1h 密码:sr2o

播放效果:

1、去下载spine的runtime库 地址:https://github.com/EsotericSoftware/spine-runtimes 文件结构

二、把spine-c下的include和src 统一整理到spine文件夹,将spine-cocos2d-x/2/src/spine下源码拷贝到之前的spine目录:

三、将spine文件拷贝到quick-2.2.5-plus\lib\cocos2d-x\extensions目录下,引入到vs工程。特别注意 DragonBones下的一些文件 和spine文件同名,需要修改spine里面对应的名字

四、需要导出SkeletonAnimation和SkeletonRenderer类供lua使用。

SkeletonAnimation.h和SkeletonRenderer.h制作好tolua文件,SkeletonAnimation_luabinding.tolua 和SkeletonRenderer_luabinding.tolua放到quick-2.25+plus\quick-cocos2d-x-master\lib\cocos2d-x\external\extra\luabinding下

在build.bat后面添加

call %MAKE_LUABINDING% -d %OUTPUT_DIR% SkeletonAnimation_luabinding.tolua
call %MAKE_LUABINDING% -d %OUTPUT_DIR% SkeletonRenderer_luabinding.tolua

执行 build.bat生成C++绑定,生成的文件引入vs

五 C+调用导出函数

在CCLuaStack.cpp 引入导出的C++类,

#include "SkeletonAnimation_luabinding.h"

#include "SkeletonRenderer_luabinding.h"。

初始化函数调用

luaopen_SkeletonRenderer_luabinding(m_state);
luaopen_SkeletonAnimation_luabinding(m_state);

注意一定先调SkeletonRenderer再调SkeletonAnimation,也就是先调父类再调子类,反了回报 addchild错误之类的

六 lua调用spine动画

local skeletonNode1 = SkeletonAnimation:createWithFile("spineboy.json", "spineboy.atlas", 0.6);
     skeletonNode1:setAnimation(0, "walk", true);
     skeletonNode1:setPosition(ccp(display.width/2,display.height/2))
     self:addChild(skeletonNode1);

  新增骨骼绑定node用法

  local slot = skeletonNode1:getNodeForSlot("muzzle") --需要绑定骨骼的名字
   slot:addChild(sp) --需要绑定的node

七:android下使用注意事项

1、quick-2.2.5-plus\lib\cocos2d-x\extensions下的android.mk里面添加spine下的.c和.cpp文件

2、quick-2.2.5-plus\lib\cocos2d-x\external下android.mk添加导出的两个cpp文件(SkeletonAnimation_luabinding和SkeletonRenderer_luabinding)

八 总体目录结构

[原]quick集成spine动画的更多相关文章

  1. HTML5骨骼动画Demo | 使用min2d、createjs、pixi播放spine动画

    Spine做骨骼动画是比较流行的,使用起来可能相对复杂,但功能毕竟强大,所以市场占有率较大. 在unity.cocos2d.starling中使用spine已经很成熟了,而HTML5这一块可能刚刚起步 ...

  2. spine动画融合与动画叠加

    spine动画融合与动画叠加 一.动画融合setMix 1.概述:两个动作之间的平滑过渡 参数duration为需要多少时间从fromAnimation过渡到toAnimation,过渡时间为动画重叠 ...

  3. 使用lua实现Spine动画的预加载

    创建spine动画有两种方法,分别是createwithfile和createwithdata. createWithFile是通过加载动作数据马上进行创建,如果spine动画中的json文件大小超过 ...

  4. 谈谈Spine动画在产品中的应用

    笔者介绍:姜雪伟,IT公司技术合伙人.IT高级讲师,CSDN社区专家,特邀编辑,畅销书作者,国家专利发明人;已出版书籍:<手把手教你架构3D游戏引擎>电子工业出版社和<Unity3D ...

  5. Spine应用--使用Spine动画制作动作游戏

    在前面的文章中,已经陆陆续续的讲解了一些使用Spine动画的细节,有了这些细节,我们已经满足了在unity中使用Spine动画制作动作游戏的技术基础. 那么,要使用Spine动画在unity中制作一款 ...

  6. Spine学习七 - spine动画资源+ Unity Mecanim动画系统

    前面已经讲过 Spine自己动画状态机的动画融合,但是万一有哥们就是想要使用Unity的动画系统,那有没有办法呢?答案是肯定的,接下来,就说说如何实现: 1. 在project面板找打你导入的Spin ...

  7. Spine学习二 -播放Spine动画

    要想播放一个Spine动画,必须要在一个物体上绑定一个Spine播放的组件,这里暂时使用SkeletonAnimation组件. 然后就是编写动画的控制脚本. 这里提一个特性: [SpineAnima ...

  8. SpineRuntime-Presentation - 基于 spine-libgdx 实现在 AndroidPresentation 上展示 Spine 动画

    SpineRuntime-Presentation 基于 spine-libgdx 实现在 AndroidPresentation 上展示 Spine 动画 Github地址 效果 可以在 Andro ...

  9. 集成骨骼动画Spine的几点经验

    最近开始用cantk做些复杂的游戏,其中一个游戏的DragonBones骨骼动画的JSON文件就达600K,导出之后显示各种不正常,可能是太复杂了,有些方面达到了DragonBones的极限.拿到官方 ...

随机推荐

  1. jquery 编码解码

    中文转Unicode:HttpUtility.UrlEncodeUnicode(string str); 转换后中文格式:"%uxxxx" 举例:"柳_abc123&qu ...

  2. ASP.NET MVC学习之模型绑定(2)

    3.手工调用模型绑定 很多情况下我们都是通过形参的方式接收来自http流中的数据,这看似是完美的,但是缺少了很多过程中的控制,所以我们就需要使用手工的方式进行绑定.下面我们通过一个例子来说明,首先打开 ...

  3. GCC选项

    -g: Debugging Option. 提供给GDB的debugging信息的选项: -fno-omit-frame-pointer: Optimization Option: -Wstrict- ...

  4. [ACM_数据结构] 竞赛排名

    比赛排名 Time Limit:1000MS  Memory Limit:32768K Description: 欢迎参加浙江工业大学“亚信联创杯”程序设计大赛,本次竞赛采用与 ACM/ICPC 相同 ...

  5. jenkins 插件开发资料

    jenkins plugin 开发:documenthttp://hudson-ci.org/docs/index.htmlhttps://wiki.jenkins-ci.org/display/JE ...

  6. [BTS] Exception occurred when persisting state to the database

    Error 1 Uncaught exception (see the 'inner exception' below) has suspended an instance of service 'J ...

  7. [Python爬虫] Selenium自动访问Firefox和Chrome并实现搜索截图

    前两篇文章介绍了安装,此篇文章算是一个简单的进阶应用吧!它是在Windows下通过Selenium+Python实现自动访问Firefox和Chrome并实现搜索截图的功能.        [Pyth ...

  8. Atitit.常用的gc算法

    Atitit.常用的gc算法 1.1. 记-清除算法1 1.2. 复制算法1 1.3. 标记-整理算法2 1.4. 分代收集算法2 1.1. 记-清除算法 最基础的收集算法,算法分为标记和清除两个阶段 ...

  9. paip.批处理清理java项目冗余jar的方法

    paip.批处理清理java项目冗余jar的方法 在myeclipse中开发的java项目遇到jar包冗余情况,如何删除项目中的冗余jar包啊?项目很大jar包一百多个. 2010-09-14 14: ...

  10. Maven学习总结(五)——聚合与继承

    一.聚合 如果我们想一次构建多个项目模块,那我们就需要对多个项目模块进行聚合 1.1.聚合配置代码 <modules> <module>模块一</module> & ...