【咸鱼教程】DragonBones帧动画、骨骼json、极速、二进制

公司的人想用龙骨,但是同事在官网找不着二进制的资料...于是写了个简单demo。

demo中包含了帧动画、骨骼动画json、极速和二进制的资源和代码


测试环境:
DragonBonesPro 5.5   (5.6一直报错无法导出,后来据说是未注册登录...)
Egret Wing4.1.0
EgretEgnie 5.0.14

目录:一、代码运行效果图
二、效率和内存占用对比
三、二进制龙骨使用方法
四、Demo下载


一、  代码运行效果图:
demo中使用的龙骨动画来自打开dragonbone软件后首页的那条龙






二、  效率和内存占用对比:
这里帧动画的图没压缩哈,看上去5m真吓人,可以到tiny上压缩,压缩了是800多kb。






三、 二进制龙骨使用方法
一般都会使用最新的二进制格式,也是官方推荐的。
软件左上菜单  文件 -> 导出 -> 二进制




会得到3个文件,放到Egret项目resource资源文件夹下



将文件导入资源配置文件default.res.json中



二进制dbbin文件需要选择类型为bin




egretProperties.json文件中导入dragonBones库,并编译一遍引擎




代码中创建骨骼动画

[AppleScript] 纯文本查看 复制代码
1
2
3
4
5
6
7
8
let factory = dragonBones.EgretFactory.factory;
factory.parseDragonBonesData(RES.getRes("NewDragon_ske_bin"));
factory.parseTextureAtlasData(RES.getRes("NewDragon_tex2_json"), RES.getRes("NewDragon_tex3_png"));
 
this.armatureDisplay = factory.buildArmatureDisplay("armatureName");
this.armatureDisplay.animation.play("stand",0);
 
this.addChild(this.armatureDisplay);


补充:

关于龙骨的名字"armatureName"和动作"stand"的名字,可以查看dragonbones的工具里。我这里是补充,原来的图找不到了,所以名字是"Dragon"了。

也可以查看发布后的ske文件。名字一般在最前面。动作名一般在playTimes关键字后面。





四、 Demo下载

原文地址:https://www.cnblogs.com/gamedaybyday/p/9219888.html