博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[原]quick集成spine动画
阅读量:4684 次
发布时间:2019-06-09

本文共 1782 字,大约阅读时间需要 5 分钟。

更新说明:

新增了骨骼绑定node用法

参考:

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

密码:sr2o

 

播放效果:

1、去下载spine的runtime库 地址:

 

二、把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)

八 总体目录结构

 

转载于:https://www.cnblogs.com/U-tansuo/p/spine-quick.html

你可能感兴趣的文章
Linux常用命令
查看>>
JAVA多线程Thread VS Runnable详解
查看>>
springboot分布式数据源(Mysql)
查看>>
python安装numpy模块
查看>>
Lambda
查看>>
Java对byte数组压缩 解压缩 (zip,gzip,bzip2,jzlib)
查看>>
UDP用户数据报协议
查看>>
无聊到什么都不想做,只想写篇博客...
查看>>
Node实现websocket聊天室
查看>>
一天搞定CSS: 浮动(float)及文档流--10
查看>>
MSSQL游标和Fetch
查看>>
FFT最新卡常研究
查看>>
linux字符集的查看及修改
查看>>
php函数serialize()与unserialize()
查看>>
java时间操作三部曲之java.util.Calendar
查看>>
4_Selenium框架封装
查看>>
Oracle定义varchar2()类型存储汉字的长度问题
查看>>
[网络流24题#9] [cogs734] 方格取数 [网络流,最大流最小割]
查看>>
curl站外抓取第二发
查看>>
使用Eclipse制作可执行jar文件
查看>>