Cocos2d-js 开发记录:骨骼动画载入

不得不说cocos2d-js的文档实在是少,骨骼动画的载入和C++版本的好像还有些不同不能直接依样画葫芦。

一个由cocos studio编辑生成的骨骼动画一般会包含如下几个文件:

  • .ExportJson文件
  • .plist文件
  • .png文件

ExportJson文件包含了骨骼动画的动作和所要用到的资源的名称,plist文件负责切分png图片的各个区域形成逻辑上的一张张图片,其实是把要用的图片打包的单个png文件中,然后把原来的文件名称和区域信息记录到plist中。ExportJson中包含了对plist文件的名称的描述体现在其config_file_path字段。那么照理来说导入骨骼动画只要显式加载一个ExportJson文件就行了剩下的让引擎去做吧?可惜不是这样,如果不在resource中指定骨骼动画配套的plist那么在加载骨骼动画的时候就会报错。下面记录一个骨骼动画使用的过程:

0. 修改项目配置文件添加extension模块

"modules" : ["cocos2d", "extensions"],

使用cocos studio工具生成的资源大部分都要把extensions模块也加入到项目中来,这些模块处于ccs命名空间中

1. 向resource.js文件添加骨骼动画资源描述

    wolf_animation: "res/monster/wolf/wolf.ExportJson",
    wolf_plist: "res/monster/wolf/wolf0.plist"

注意ExportJson和对应plist文件都要在这里写出

2. 加载骨骼动画资源

        var size = cc.winSize;
        var scale = 0.5;

        ccs.armatureDataManager.addArmatureFileInfo(res.wolf_animation);

        var wolfAnimation = new ccs.Armature("wolf");
        wolfAnimation.setScale(scale);
        wolfAnimation.setPosition(size.width / 2 + 150, size.height / 2);
        wolfAnimation.animation.play("Animation1");
        this.addChild(wolfAnimation);

这里addArmatureFileInfo是一个同步过程有对应的异步版本,要用骨骼动画前需要执行一次这个方法,它会读入骨骼动画数据并把要用到的资源缓存起来。这样执行多次

new ccs.Armature("wolf");

其实不要再执行addArmatureFileInfo了。new ccs.Armature()中的参数要和骨骼动画项目中ExportJson指定的名称一致即其armature_data.name

时间: 2025-01-18 10:53:14

Cocos2d-js 开发记录:骨骼动画载入的相关文章

Cocos2d-js 开发记录:Loading载入界面自定义

Loading界面是一个cc.Scene具体请看: http://blog.csdn.net/jonahzheng/article/details/38348255 如果仅仅是想把图片(cocos logo)换掉的话可以修改(frameworks/cocos2d-html5/Base64Images.js)中 cc._loaderImage 变量的值,该值为base64编码的图片数据,在css3中用这个字符串可以直接作为背景,图片到base64编码的转换可以通过这个网站(http://tool.

引擎设计跟踪(九.14) 更新记录和骨骼动画导出

骨骼动画是去年打算写的部分, 但是中间因为工作太忙, 已经拖了一年了. 期间也加了其他东西, 比如对UI做了部分完善.UI对toolbar button添加了drop down 支持, 一种是dropdown menu, 一种是dropdown property sheet 实现这些控件不难, 但是要做抽象和复用, 接口设计稍微有点复杂. 现在可以把一个IConfig对象绑定到toolbar的button里了. 这样保存这些配置的时候,直接使用IConfig接口就可以了.贴一个编辑器的配置文件,

火云开发课堂 - 《使用Cocos2d-x 开发3D游戏》系列 第十一节:骨骼动画模型播放控制

?? <使用Cocos2d-x 开发3D游戏>系列在线课程 第十一节:骨骼动画模型播放控制 视频地址:http://edu.csdn.net/course/attend/1330/20811 交流论坛:http://www.firestonegames.com/bbs/forum.php 工程下载地址:明天放出 课程截图: 实例工程演示: ?? ?? 版权声明:本文为博主原创文章,未经博主允许不得转载.

记录 Spine骨骼动画导入unity 步骤[unity3d 4.6.6版本 2d动画]

1:准备好unity使用Spine所需要的运行库,可到如下地址 https://github.com/EsotericSoftware/spine-runtimes/tree/master/spine-unity 使用git下载,或直接下载master.zip文件. 2:准备好Spine导出好的动画文件,正好最近偶尔玩一个游戏,里面使用了Spine制作的骨骼动画,我就直接使用它做好的资源记录一下步骤,仅作笔记使用.    我这里的动画文件资源如图: 这里需要提前做一个准备工作,把上图中的enem

关于Cocos Creator用js脚本代码播放骨骼动画的步骤和注意事项

1.用cc.find()方法找到相应的骨骼动画节点,并把这个对象赋值给一个var出来的新对象. 具体代码:var spineboy_anim = cc.find("UI_Root/anchor_lb/spineboy"); 2.用getComponent()方法找到相应骨骼动画节点的骨骼动画组件,并把这个对象赋值给一个var出来的新对象. 具体代码:var ske_anim_comp = spineboy_anim.getComponent(sp.Skeleton); 3.把第二点的新

引擎设计跟踪(九.14.2b) 骨骼动画基本完成

首先贴一个介绍max的sdk和骨骼动画的文章, 虽然很早的文章, 但是很有用, 感谢前辈们的贡献: 3Ds MAX骨骼动画导出插件编写 1.Dual Quaternion 关于Dual Quaternion, 这里不做太详细的介绍了,贴出来几个链接吧: http://en.wikipedia.org/wiki/Dual_quaternion http://www.seas.upenn.edu/~ladislav/kavan08geometric/kavan08geometric.pdf http

Cocos2d-x 3.8.1+Cocos Studio 2.3.2捉虫记之控制场景文件中的骨骼动画

Cocos2d-x 3.8.1+Cocos Studio 2.3.2捉虫记之控制场景文件中的骨骼动画 引子 这段时间一直努力在把早期版本的拇指接龙游戏(Cocos2d-x 2.2.3+CocoStudio 1.4.0.1)升级到当前相对稳定的高大上环境--Cocos2d-x 3.8.1+Cocos Studio 2.3.2.行程中遇到不少麻烦,时间不知不觉像流水一样悄然逝去(这正是我时不时酸酸地想起"程序猿"三字的主要原因).想之再三,还是努力记录下来,一来为自己可能逝去的记忆,二来为

cocos2dx骨骼动画Armature源码分析(三)

代码目录结构 cocos2dx里骨骼动画代码在cocos -> editor-support -> cocostudio文件夹中,win下通过筛选器,文件结构如下.(mac下没有分,是整个一坨) armature(目录): animation(目录):动画控制相关. CCProcessBase(文件): ProcessBase(类):CCTween和ArmatureAnimation的基类. CCTWeen(文件): Tween(类):控制flash里一个layer的动画. CCArmatur

个人知识管理系统Version1.0开发记录(06)

demo view 夜已深,我们先简单演示一下,完成一个小段落了.涉及工具及技术知识:图形处理软件photoshop cs6,js类库ext. 思路如下: 1.下载ps6,有破解版本的,dll文件覆盖即可,玩个把小时,看看文字.图片jpg.png.gif动画怎么玩的,实际用时找对应方法. 2.下载ext2,docs(这个就是API)-->examples-->HelloWorld.工具栏.菜单栏.表单.面板.布局.事件.类.DOM...... 3.整理结构,注释代码,记录日志. 4.管理员登陆