• QQ
  • nahooten@sina.com
  • 常州市九洲新世界花苑15-2

游戏开发

Spine动画导入COCOS2d和UNITY

原创内容,转载请注明原文网址:http://homeqin.cn/a/wenzhangboke/jishutiandi/youxikaifa/2019/0330/431.html

Spine动画导入COCOS2d和UNITY



项目中需求将SPINE动画导入UNITY3D和COCOS,固然网上关于这方面的教程也有一些,但是关于其中会碰到的问题引见的却不多。常州手游开发本篇文章就是在SPINE动画导入UNITY3D和COCOS的根底上,给大家分享一些可能会遇到的问题及相对应的处理方法。
 
一、COCOS LUA
 
1.播放Json动画
 
local Node_CarSpine = self:getResourceNode():getChildByName("Node_CarSpine")
spine_Car = sp.SkeletonAnimation:create("spine/chezi.json","spine/chezi.atlas",1)
spine_Car:setAnimation(0, "animation", false)
 
问题点: 运转时卡死,没有任何提示。缘由是:COCOS版本和SPINE动画的版本不匹配,我当时是COCOS3.17,能够播放3.6.50的动画,但是2点几的带骨骼的动画不行,非骨骼动画能够播放,我用COCOS3.10播放2点几的没问题,3.6.50又不行。网上有工具,大约叫:spine3.0导出文件转换成cocos3.8可运用文件工具
 
2.播放Skel动画
 
MainScene.spine_Man=sp.SkeletonAnimation:createWithBinaryFile("spine/pumpkin.skel","spine/pumpkin.atlas",1)
 
问题点: 运转奔溃,会弹个窗口,大约意义是骨骼信息错误,COCOS3.14以后才有比拟好的对Skel动画的支持,缘由是:COCOS版本和SPINE运时库不匹配,我的COCOS是3.17的,但是SPINE官方最多weih维护到COCOS 3.16,降级后胜利运转。
 
二、UNITY3D
 
1.播放Json动画
 
API常州游戏开发培训我就不写了,良久没用U3D了,网上一大堆教程,主要是把 atlas 文件,改名成 atlas.txt
 
2.播放Skel动画
 
主要是把 atlas 文件,改名成 atlas.txt    skel 文件,改名成 skel.bytes
 
问题点:加载的时分报错,大约提示数组越界,缘由是SPINE运转库和SPINE动画不匹配,改换SPINE库版本。
 
总结:Skel动画是二进制文件,Json是配置文件,网上有人测试过Skel动画大约快8倍,二进制的东西肯定是性能好的多,但是Skel文件无法明文晓得动画称号,U3D里加载就能看见,COCOS里也能够经过 spAnimation** animal = skeletonNode->getSkeleton()->data->animations  获取到动画名,但是COCOSLUA里不行,到data里就获取不到了,我看了下绑定文件没有绑到LUA里去,所以LUA调用不了,只能本人绑定,或者是导入到U3D里面去看了。
 
以上就是Spine动画导入COCOS和UNITY3D的办法以及遇到对应问题的处置方式,希望手机App外包能够帮到各位。

上篇:上一篇:Unity Shader场景切换过度效果完成
下篇:下一篇:U3D Shader之surface shader解密