Dragonbones是一套由Egret团队制作的独立的骨骼动画编辑器,用来编辑骨骼动画可以运用到游戏中,这里简单介绍一下在unity中怎么使用dragonBones骨骼动画。
关于Dragonbones软件的动画制作学习,可以参考官网的学习网页,链接DragonBones学习,这里面有视频教学也有文档教学,很全面。
下载运行库(C#)
- 在GitHub中下载https://github.com/DragonBones,找到下图的文件,下载压缩包。

下载后找到下图中的DragonBones文件夹,拖到unity工程里即可

- DragonBones官方提供一个UnityPackage包DragonBonesUnityPackage,找到下图中文件下载,并把下载好的unityPackage包导入到unity工程里

导入的包里有很多教学场景,可以用来学习,但是一般在真正项目里这些都会删掉

DragonBones动画在unity里的使用
首先先在dragonbones里导出动画
这里我们数据类型选择json格式,版本使用5.5,涵盖的功能更全面一点。导出的纹理的类型这里选择纹理集,另一种格式是碎图

可以看到导出的有三个文件
XXXXX_ske.json //骨骼数据文件
XXXXX_tex.json //纹理集配置文件
XXXXX_tex.png //纹理集

我们在unity里新建一个场景用来测试加载动画,新建Resources文件夹,将刚刚导出的三个文件复制到Resources文件夹里

编辑器手动创建
在unity选中Dragon_ske.json文件(注意是_ske.json文件),右键Create->DragonBones->ArmatureObject,即可创建出动画物体,同时会自动生成一个UnityDragonBonesData文件和Dragon_tex_Mat文件

下图是控制动画的组件, 可以看到椭圆的地方就是刚刚自动生成的UnityDragonBonesData文件,矩形地方可以切换不同的动画,当然还可以设置层级播放次数等。

代码创建,每个项目只包含单个动画文件时
接下来使用代码创建测试一遍,当前是一个DragonBones项目里只有一个动画文件时,直接使用文件路径创建,先直接贴代码:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using DragonBones;
public class DragonBonesManager : MonoBehaviour
{
//创建动画实例之前,需要先把动画的三个文件加载缓存起来
//这里使用一个字典,记录一下哪些动画的数据已经加载过了,格式为 <骨架数据json文件路径,(动画的骨架名称ArmatureName,动画缓存实例名称)>
Dictionary<string, List<string>> datas = new Dictionary<string, List<string>>();
//记录的已缓存数据,<SkeJsonPath,(ArmatureName,CacheName)>
//SkeJsonPath是动画骨骼数据json文件的路径,在这里作为字典的key值
//ArmatureName是骨架名称,这个是在DragonBones软件里设置的,参考代码结束下的图
//CacheName就是我们指定的骨架和纹理集缓存实例名称,指定缓存实例名称的目的是防止在多个项目里存在相同骨架名称的动画文件时,创建动画实例出错
/// <summary>
/// 用来加载缓存动画数据
/// </summary>

本文介绍如何在Unity中使用DragonBones骨骼动画,包括下载运行库、动画数据导入、通过编辑器和代码创建动画实例的过程,以及如何在项目中管理多个动画文件。
最低0.47元/天 解锁文章
7441

被折叠的 条评论
为什么被折叠?



