17.FGUI基础-基础元件-动画-骨骼动画
17.1 知识点
FairyGUI支持的骨骼动画
- FairyGUI支持使用骨骼动画。
- 它目前只支持:
- Spine编辑器 3.8版本 导出的骨骼动画。
- DragonBones龙骨编辑器 所有版本 导出的骨骼动画。
将骨骼动画导入到FairyGUI中
- 在导入骨骼动画时,我们不需要导入贴图和图集描述文件。
- 只需要导入骨骼动画描述文件即可。
- Spine 只需导入 .json/.skel的描述文件。
- 龙骨 只需导入 .json/.dbbin的描述文件。
- 导入json文件后会自动生成其他两个文件。
骨骼动画资源相关设置
- 双击动画文件打开该窗口。
- 着色器:
- Default:骨骼动画库自带的着色器,如果要遮罩动画需要用自定义遮罩,常规遮罩无法裁剪骨骼动画。
- FGUI/Image:FGUI用于显示图片的默认着色器,常规遮罩可以裁剪骨骼动画。但是没有预乘处理,如果骨骼动画贴图是预乘的,那么不会显示正确。
- 预乘:预乘 就是提前把srcRGB*srcAlpha计算出来存在贴图的rgb通道中,这样在渲染时就能少做一次乘法。
- 贴图是否已预乘:要和骨骼动画软件发布时选项一样,否则动画显示不正确。
在Unity中使用骨骼动画
安装Spne动画和龙骨动画对应UnitySDK,拖入到Project窗口
在项目设置中添加脚本定义符号Scripting Define Symbols
- 在使用之前 都需要添加脚本定义符号Scripting Define Symbols。
- File——>Build Settings——>Player Settings——>Other Settings——>Scripting Define Symbols。
- Spine添加:FAIRYGUI_SPINE。
- 龙骨添加:FAIRYGUI_DRAGONBONES。
- 龙骨额外操作 创建Unity Data。
- Spine由于破解版问题 官方现在收费 直接在FGUI使用会报错。
设置组件并发布
基础包和组件面板的导入
//基础包和组件面板的导入
//设置适配相关
GRoot.inst.SetContentScaleFactor(1365, 768, UIContentScaler.ScreenMatchMode.MatchHeight);
//当前包和依赖包的加载
UIPackage package = UIPackage.AddPackage("UI/FGUI教程");
foreach (var item in package.dependencies)
{
UIPackage.AddPackage("UI/" + item["name"]);
}
//创建组件对象 要设置为导出
GComponent view = UIPackage.CreateObject("FGUI教程", "Lesson17_FGUI基础_基础元件_动画_骨骼动画").asCom;
//添加到根对象
GRoot.inst.AddChild(view);
获取龙骨组件对象
//获取到 对应的龙骨组件对象 后 得到对应的挂载游戏对象 在找子对象 找到龙骨对象 获取上面的龙骨代码 要操作龙骨动画要看龙骨sdk里的代码
//view.GetChild("").displayObject.gameObject
运行结果
17.2 知识点代码
using FairyGUI;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Lesson17_FGUI基础_基础元件_动画_骨骼动画 : MonoBehaviour
{
void Start()
{
#region 知识点一 FairyGUI支持的骨骼动画
//FairyGUI支持使用骨骼动画
//它目前只支持
//1.Spine编辑器 3.8版本 导出的骨骼动画
//2.DragonBones龙骨编辑器 所有版本 导出的骨骼动画
#endregion
#region 知识点二 将骨骼动画导入到FairyGUI中
//在导入骨骼动画时,我们不需要导入贴图和图集描述文件
//只需要导入骨骼动画描述文件即可
//1.Spine 只需导入 .json/.skel的描述文件
//2.龙骨 只需导入 .json/.dbbin的描述文件
#endregion
#region 知识点三 骨骼动画资源相关设置
#endregion
#region 知识点四 在Unity中使用骨骼动画
//第一步:安装对应UnitySDK
//第二步:导入后进行设置
//在使用之前 都需要添加脚本定义符号Scripting Define Symbols
//File——>Build Settings——>Player Settings——>Other Settings——>Scripting Define Symbols
//Spine添加:FAIRYGUI_SPINE
//龙骨添加:FAIRYGUI_DRAGONBONES
//龙骨额外操作 创建Unity Data
//Sine由于破解版问题 官方现在收费 直接在FGUI使用会报错
//第三步:显示组件
//基础包和组件面板的导入
//设置适配相关
GRoot.inst.SetContentScaleFactor(1365, 768, UIContentScaler.ScreenMatchMode.MatchHeight);
//当前包和依赖包的加载
UIPackage package = UIPackage.AddPackage("UI/FGUI教程");
foreach (var item in package.dependencies)
{
UIPackage.AddPackage("UI/" + item["name"]);
}
//创建组件对象 要设置为导出
GComponent view = UIPackage.CreateObject("FGUI教程", "Lesson17_FGUI基础_基础元件_动画_骨骼动画").asCom;
//添加到根对象
GRoot.inst.AddChild(view);
//获取到 对应的龙骨组件对象 后 得到对应的挂载游戏对象 在找子对象 找到龙骨对象 获取上面的龙骨代码 要操作龙骨动画要看龙骨sdk里的代码
//view.GetChild("").displayObject.gameObject
#endregion
}
}
转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 785293209@qq.com