龙骨

龙骨是Egret公司的一个用来做动画的软件,本文分享一下如何在Unity2D中使用龙骨导出的2D动画

导出动画



在龙骨中文件->导出,导出动画数据和纹理到Unity的项目中,如果打包了的话就在Unity的项目的目录下解压,解压后我们可以看到3个文件

Animation_ske.json(骨骼配置)

Animation_tke.json (图集配置)

Animation_tex.png (图集图片)

简单来讲,动画的数据在骨骼配置文件里,图集配置文件记录了图片的位置和路径

向Unity添加龙骨插件

要在Unity使用龙骨,必须要将龙骨的插件添加到项目里,这个插件是一个标准的UnityPackge,可以在龙骨官方博客下载,下载完成后,在Unity Editor中,Assets->import package->custom package,选择刚刚下载好的DragonBonesForUnity.unitypackage文件,导入

在Unity中使用龙骨动画

终于回到正题了,首先在场景中创建一个DragonBones Armature Object, 导入龙骨的插件后可以在Hierarchy视图中右键看到DragonkBones这个选项,点击Armature Object



创建成功,选中这个Armature对象,查看Inspector视图



可以看到,这个对象自带一个UnityArmatureComponent组件,这个组件下有一个叫做龙骨数据(DragonBonesData)的属性,我们刚刚导出到项目里的龙骨动画明明是三个文件,这要怎么办呢?

在Unity的文件管理器中找到我们导出的龙骨动画的三个文件,将三个文件选中,右键Create->DragonBones->Create Unity Date



然后就可以看到三个文件的目录下多了一个UnityData文件,将这个文件拖动到刚刚的UnityArmatureComponent组件中,并点击Create加载动画,就可以在Scene中看到你的动画角色了





至于UnityArmatureComponent中加载了龙骨数据后出现的属性都比较简单,就不一一讲解了,接下来讲一下播放动画的API

用脚本播放动画

创建一个脚本PlayerCtrl

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class PlayerCtl : MonoBehaviour
{
private DragonBones.UnityArmatureComponent unityArmature;//UnityArmatureComponent对象
void Start ()
{
unityArmature = GetComponent<DragonBones.UnityArmatureComponent>();//获得UnityArmatureComponent对象
unityArmature.Play("Idel");//播放动画
}
void Update()
{
}
}

将这个脚本绑定到角色上,角色就开始播放动画了,至于换装系统暂时还没接触到,这次先不讲吧

如何在unity中使用龙骨动画的更多相关文章

  1. 如何在Unity中分别实现Flat Shading(平面着色)、Gouraud Shading(高洛德着色)、Phong Shading(冯氏着色)

    写在前面: 先说一下为什么决定写这篇文章,我也是这两年开始学习3D物体的光照还有着色方式的,对这个特别感兴趣,在Wiki还有NVIDIA官网看了相关资料后,基本掌握了渲染物体时的渲染管道(The re ...

  2. 如何在pyqt中实现带动画的动态QMenu

    弹出菜单的视觉效果 QLineEdit 原生的菜单弹出效果十分生硬,而且样式很丑.所以照着Groove中单行输入框弹出菜单的样式和动画效果写了一个可以实现动态变化Item的弹出菜单,根据剪贴板的内容是 ...

  3. 如何在Unity中创造真实的水

    你将要创造什么 Unity是由Unity Technologies开发的多平台游戏引擎,用于为控制台,移动设备,计算机甚至网站等多种设备创建视频游戏和应用程序.Unity的核心优势在于其稳健性,可移植 ...

  4. 关于Unity中旧版动画系统的使用

    Unity在5.X以后,有一个旧版的动画系统和新版的动画系统. 新版的动画系统是使用Unity动画编辑器来调的,调动画和控制动画 旧版的动画系统是用其他的第三方软件调好后导出到一个FBX文件里面,就是 ...

  5. 关于Unity中的帧动画组件的编写

    一.帧动画 1: 美术准备好一个连续动作的离散图片;2: 程序在准确的时间来切换这个图片;3: 优点: 简单,速度快; 缺点:资源占用相对过大; 二.frame_anim组件编写 1: 代码里面强制要 ...

  6. 如何在Unity中播放影片

    Unity支援影片貼圖,也就是說可以匯入影片並附加到遊戲物件上,基本上您電腦上的Quick Time播放器能播的,大致上都能播,已知的支援的影片格式有下列幾種:.mov, .mpg, .mpeg, . ...

  7. 如何在React中使用CSS3动画

    一.需求 1.在页面添加item时要有渐变效果 2.单击item可删除,带渐变效果 二.代码 1.通过Reacat插件ReactCSSTransitionGroup实现 <!DOCTYPE ht ...

  8. 如何在Unity中开发Leap Motion桌面版(Non-VR)APP

    最近因需要,翻出几年前的Leapmotion感测器,准备用Unity3D做个互动APP,于是连上官网下载SDK.等下载下来一安装调试,瞬间傻眼,居然要求VR设备.我们Lab倒是不缺VR,有几套VIVE ...

  9. 如何在Unity中显示FPS

    using UnityEngine; using System.Collections; public class example : MonoBehaviour { public float upd ...

随机推荐

  1. Unity By Reflection Update Scripts

    App热更新需求 我正在使用Unity 3D开发一个Android的应用,它会下载AssetBundles并加载它们的内容,但由于AssetBundles不能包含脚本,我将使用预编译的C#脚本,并使用 ...

  2. 插入算法---java实现

    插入排序java代码实现 package algorithms.插入排序; import java.io.BufferedReader; import java.io.InputStreamReade ...

  3. [Spark Core] Spark 实现气温统计

    0. 说明 聚合气温数据,聚合出 MAX . MIN . AVG 1. Spark Shell 实现 1.1 MAX 分步实现 # 加载文档 val rdd1 = sc.textFile(" ...

  4. tp5多数据库配置

    1.在项目文件下建立extra文件夹,复制dadabase.php改名为database_foo.php,并将从数据库配置信息配置好,如下图: 2.调用 1)调用从数据库$data = Db::con ...

  5. php框架安装

    安装yii框架 跳转到composer.phar目录 cd C:\ProgramData\ComposerSetup\bin 安装yii2高级版 php composer.phar create-pr ...

  6. 《面向对象程序设计》六 GUI

    git传送门 我这无药可救的拖延症和懒癌orz 主界面 文件读取界面 提示界面 最初选择vs+mfc,发现许多自动生成的代码读不懂(不须懂),尝试qt后感觉人生迎来了希望,看了推荐的视频与教程稍微了解 ...

  7. django复习-2-配置、静态文件与路由

    一.配置文件 1. BASE_DIR BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) __file__指当 ...

  8. Eclipse 中怎样自动格式化代码?

    首先 有一个 检查代码风格的工具叫checkstyle,具体怎么下载,请自行百度.. 当你在eclipse安装好 checkstyle后,对于使用google标准的人来说,选择一个项目,右键,点击ch ...

  9. 流式套接字:基于TCP协议的Socket网络编程(案例3)

    案例:在案例1的基础上将传输的字符串换成具体的对象. 客户端代码: package com.yh.SocketObject; import java.io.IOException; import ja ...

  10. __init__函数

    初始化函数,类似于c++的构造函数 在创建一个对象时默认被调用,不需要手动调用.self后面接的形参,在类实例化的时候必须传递,__init__函数里的参数都属于成员变量