Fairy下载和使用

写在最前:本系列中将会涉及到 Unity,C#,Lua和FairyGUI(FGUI)。

FairyGUI介绍

官网: FairyGUI

编辑器下载: FairyGUI

截至文档记录最新版: https://res.fairygui.com/FairyGUI-Editor_2022.1.0p1.zip

编辑器使用教程: FairyGUI

Unity版教程配套示例资源下载:

Master:https://github.com/fairygui/FairyGUI-unity/archive/refs/heads/master.zip

Release:https://github.com/fairygui/FairyGUI-unity/archive/refs/tags/4.3.0.zip

FairyGUI是游戏开发领域中制作UI的一个利器。它支持Unity,Cocos2dx,Egret,LayaAir,Cocos Creator等,基本上国内主流的引擎都支持了。而且使用FGUI编辑器制作UI的效率非常高,它有很多独特的功能,比如控制器,关联系统,分包,分支等,全部零代码,方便策划或者美术快速上手搭建UI。

获取FairyGUI Unity SDK

        下载配套的示例资源并解压到合适的位置。使用Unity打开示例demo,工程Unity版本:2018.4.29f1,建议使用对应Unity的版本或更高的版本打开。我手头目前使用的是Unity2021.3.26f1。打开后可以看到如下图所示的目录结构:

        将“Extensions”,“Resources”和“Scripts”拷贝到自己项目Assets下的一个空文件夹下如“FGUI”,即可为自己的项目引入FairyGUI库。

注意:FairyGUI支持TextMeshPro,所以在“FairyGUI-TMP.shader”文件中要注意“TextMesh Pro Shaders”的引用。

FairyGUI编辑器的概念词

1、包:FairyGUI是以包为单位组织资源的。包在文件系统中体现为一个目录。assets目录下每个子目录都表示一个包。默认情况下包和包之间无法建立依赖关系,需要包下面的资源设置为“导出”,才可以被其他包使用。包的定义

2、舞台:舞台是组件的编辑区域。中间区域就是舞台

 

3、元件:每个舞台中的组成元素我们称之为元件,元件的类型有很多,他们是:

  • 基础元件:图片、图形、动画、装载器、文本、富文本、组、组件。
  • 组合型元件:标签、按钮、下拉框、滚动条、滑动条、进度条。
  • 特殊元件:列表。
  • 在舞台上选中任意一个元件,右边的属性栏(检测器)会出现当前元件的属性数据。元件详情

4、组件:组件是FairyGUI中的一个基础容器。组件可以包含一个或多个基础显示对象(元件),也可以包含组件。组件详情

  • 组件的创建:在资源库中右键“xx包”,即可在当前包下面创建组件。

5、右键导出:资源库中的资源设置为导出后,才能被其他包引用,以及在代码中动态的获取。设置为导出的资源会有红点提示。右键导出

6、发布:发布有三种方式:全部发布,仅发布定义和发布。全部发布和发布就字面意思,发布全部包和发布当前活跃包。而当资源越来愈多的时候,一个包的发布时间会越来越长,这时如果我们只是修改了界面参数,那就可以使用仅发布定义来跳过资源纹理集的重新生成。这样子可以提高发布速度。详情在主工具栏

7、更多的请阅读更加具体的编辑器使用教程

创建Unity工程

1、创建一个Unity,导入FairyGUISDK。

注意:在导入FairyGUISDK后如果出现Shader报错,请检查“Window→TextMeshPro”是否存在,如果不存在尝试导入TextMeshPro支持库。

如果存在,请尝试查找工程中是否存在“TMPro_Properties”文件,找不到的话请执行“Window→TextMeshPro→Import TMP Essential Resources”,之后修改报错的位置,将TMPro_Properties和TMPro的引用指向正确位置。

FairyGUI项目创建、配置和发布

1、下载并解压FairyGUI编辑器,双击“FairyGUI-Editor.exe”打开。

 

2、(可选)点击“文件→切换颜色空间”,将UI编辑器的颜色空间和引擎中的设置一样。Linear 和 Gamma 两种,后面也可以切换。

3、点击“创建新项目”,会弹出创建项目窗口,这里可以设置项目的名字、位置和类型。这里我使用的引擎是Unity,项目位置建议放置到工程的Assets同级目录中,方便后期管理。点击“创建”进入正式的UI编辑窗口中。

 4、编辑窗口中,“资源库”存放所有的资源和UI,毕竟UI也是资源。资源库中默认会有个“Package1”包,“Package1”包下存在一个被导出的组件“Component1”。按照项目的习惯重命名包和组件。比如我习惯在组件名字前使用UI来表示这个组件是UI界面,Comp开头表示这是个UI中的自定义组件需要代码操作,其他命名则为默认,之后的发布代码插件会详细说明。这里使用Test作为测试示例。

改之前的:

改之后的:

 5、点击“文件→发布设置”菜单,可以设置项目资源包的发布路径,发布路径分为包设置和全局设置,包设置中可以为当前选中活跃包设置单独的发布路径,默认“使用全局配置”。

 

6、点击“全局设置”。

        发布路径中支持相对路径,如果你的FGUI工程和Assets同级目录,那你的发布路径可以设置为“../Assets/UI存放路径”,这时候点击发布或全部发布,就可以在你UI存放路径的文件夹下发现一堆FGUI生成出来的二进制文件和相关的纹理集等,UI存放路径根据自己的项目文件结构来。这里我测试在Resources下新建一个UI文件夹来存放所有的UI,发布路径:../Assets/Resources/UI

        发现一堆资源后,想将一堆的资源按包分类可以在发布路径后面加{publish_file_name},这时候再次点击发布后,生成文件就会按钮当前文件所在的包进行划分。发布路径:../Assets/Resources/UI/{publish_file_name}

注意:发布出来的资源只会同名覆盖,而不会删除。也就是说如果文件A被你在FGUI工程中删除了,之前在UI存放路径下的文件A还是存在的。

 7、回到Unity中,在“Hierarchy”面板中右键点击“FairyGUI→UI Panel”,创建UI面板。

 8、选中UIPanel,点击“Inspector”面板中的“Package Name”会出现之前导出的UI资源,依次点选“Test”和“UITest”后点击OK即可在场景中查看UITest。

注意:

1、如果这时候Game窗口出现了双重UI,请检查是否有多个相机同时渲染了UI层级。建议使用默认FairyGUI相机“Stage Camera”渲染UI即可。

2、如果Game窗口没有显示UI,运行后也没有显示,则排查一下UI界面是否有内容显示,以及当前Unity版本中是否需要将UI相机加入到主相机的“Stack”列表中。

这篇文章只是粗略的概括一下FGUI的UI导出和展示流程,详细的UI制作可以查看编辑器使用教程

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/1380353.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

小游戏开发引擎CocosCreator

小游戏 六彩跳棋 已经通过审核并且发布了好几天了,对跳棋感兴趣的朋友可以去看看,在微信游戏里搜索 六彩跳棋 ,点击 立即玩 吧!进去游戏后,需要点击 获取头像昵称 才能得到玩家数据,然后 划动屏幕 选择游戏…

制作打怪小游戏Kill Bill

使用construct2制作游戏Kill Bill construct2适合新手小菜鸟(比如我)进行游戏制作,以下的游戏Kill Bill就是由它制成。 制作步骤如下。 寻找素材,新建工程并插入对象对游戏对象添加行为构建事件以完成对游戏规则的设置完善细节 寻…

第二个Flash小游戏制作(打飞机)

帧一的动作 import flash.events.MouseEvent;import flash.events.Event; stop(); btn.addEventListener(MouseEvent.CLICK, btn_click); function btn_click(event:Event):void{ gotoAndStop("fire"); } 帧二的动作 atartPlaneAir(); package{ import fla…

flash游戏和HTML5游戏,Flash动画和H5小游戏哪个更好?

原标题:Flash动画和H5小游戏哪个更好? 大家都知道现在H5小游戏很火,但是flash动画也有其历史渊源和优势。下面本文就重点带大家看看flash动画和H5小游戏哪个更好。 1、制造本钱上看,flash动画如同比较复杂一点的H5动画的价格差不多…

第一个Flash小游戏制作(1)

目标:是制作一个类似连连看的游戏(如下图)。 素材可以在附件中下载,包括: 1.图片的MovieClip 2.两个自定义按钮(也可以使用自己的按钮) 3.一些声音文件 第一步: 我们先新建一个(…

制作flash cs的简单小游戏

以flash cs6为例制作小游戏。 文件素材可以从图片上截图下来之后,稍微用ps处理下就行了。 需要的有: 1.一个背景板。2.气球。3.齿轮。 新建一个Game.as文件。把下面代码放进去。 package{ import flash.display.MovieClip; import flash.events.Event; i…

AIStudio扫描王实现与原理详解

★★★ 本文源自AI Studio社区精品项目,【点击此处】查看更多精品内容 >>> AIStudio扫描王实现与原理详解 一、前言 大家经常有需要使用扫描件的时候,如果是要求不太高的场景,我们通常会使用手机拍照,再经过一些APP应用…

基于 requests 的全能扫描王爬虫实践

投稿人:Alan 摘要:全能扫描王是文件扫描留档的重要工具,本文利用requests爬虫将手机客户端的扫描文件,同步至电脑端。 一、背景 在审计工作中,需要大批量扫描文件留档,全能扫描王成为主流的手机端扫描工具。…

【OpenCV】基于Qt的“破产版”全能扫描王

功能介绍 图片打开和保存图片矫正(证件扫描、文字纠正…)图片锐化增强图片清空阈值设置 项目实现 基本思路(证件扫描) 抠图:提取轮廓矫正:透视变换锐化增强:二值化 算法设计(证…

eNSP:ibgp的破水平切割练习

实验要求&#xff1a; 拓扑展示&#xff1a; 命令操作&#xff1a; R1&#xff1a; <Huawei>sys [Huawei]sys r1 [r1]int g 0/0/1 [r1-GigabitEthernet0/0/1]ip add 12.1.1.1 24 [r1-GigabitEthernet0/0/1]int lo0 [r1-LoopBack0]ip add 1.1.1.1 24 [r1-LoopBack0]osp…

css clip-path 画五角星

简介 使用裁剪方式创建元素的可显示区域&#xff0c;实现区域裁剪。 浏览器兼容性 常用的三种方法 1. clip-path: circle(50px at 50px 50px) 以 50px 50px 的坐标为圆心裁剪一个半径 50px 的圆&#xff1b; 2. clip-path: ellipse(30px 40px at 50px 50px) 以 50px 50px…

canvas绘图详解-06-绘制一个五角星-常用绘图原理

先讲如何画一个正规的五角星 在五角星的内外画两个圆&#xff0c;五角星有五个角&#xff0c;360/572度 所以得出这两个角的度数 然后算出这两个点坐标 角度转弧度 角度/180*Math.PI 所以外顶点坐标 x: Math.cos( (1872*i)/180*Math.PI) * R y: Math.sin((1872*i)/180*Math.P…

钓鱼网站原理实验

实验环境:一台Windows 2003&#xff08;WA&#xff09;作为客户机&#xff0c;一台Linux&#xff08;LB&#xff09;作为服务器。 1.LB设置网络适配器 2.LB配置eth0&#xff08;vim /etc/sysconfig/network-scripts/ifcfg-eth0&#xff09; 3.LB将eth0的内容copy一份到eth1 …

电子邮件如何追溯到他们的源IP地址

你要做的第一件事当你听到检查发送电子邮件通知,对吧? 这是最快的方法找出谁是电子邮件,以及可能的内容。 但是你知道每个邮件都有更多的信息比出现在大多数的电子邮件客户端? 有主机的信息发送者包括在邮件头信息可以用来跟踪电子邮件回源。 下面是如何跟踪,邮件回它是从哪…

红队攻击:轻松玩转邮件钓鱼

首发在合天智汇&#xff1a;https://mp.weixin.qq.com/s/sRXnwIdy3eQ0CJS58_bI1g 邮件钓鱼老生常谈&#xff0c;攻击手段也并不新颖。但对于网络安全工程师来说,“懂原理”和“会使用”是两个概念。会用&#xff0c;用得好不好&#xff0c;又是不同的层次。红队攻击要讲究攻击的…

seeker+ngrok 钓鱼获取目标位置

免责说明&#xff1a;本文章只是参考&#xff0c;一切后果自行承担&#xff0c;网络环境靠大家&#xff0c;遵守网络安全法是每个人应尽的责任 文章目录 一、工具介绍seekerngrok 二、使用步骤 一、工具介绍 seeker seeker工具是一款社会工程学的利器&#xff0c;可以通过see…

使用十六进制IP地址的网络钓鱼攻击活动

网络犯罪分子正在不断优化其网络攻击工具&#xff0c;策略和技术&#xff0c;以逃避垃圾邮件检测系统。 由于一些系统会直接提取邮件中内嵌的链接进行检测&#xff0c;而一种此类URL混淆技术采用了URL主机名部分中使用的编码十六进制IP地址格式来逃避检测。 由于IP地址可以用多…

1. 如何爬取自己的CSDN博客文章列表(获取列表)(博客列表)(手动+python代码方式)

文章目录 写在最前步骤打开chrome浏览器&#xff0c;登录网页按pagedown一直往下刷呀刷呀刷&#xff0c;直到把自己所有的博文刷出来然后我们按F12&#xff0c;点击选取元素按钮然后随便点一篇博文&#xff0c;产生如下所示代码然后往上翻&#xff0c;找到头&#xff0c;复制然…

Maven在IDEA2021版本中全局配置(一次配置处处生效)

前言 我们在开发中&#xff0c;Maven是必不可少的&#xff0c;但是每次都需要设置一遍Maven的仓库和settings.xml。真的是心累&#xff0c;今天教大家全局配置一下。再也不要每次项目都配了&#xff0c;Maven还经常出问题。 解决方案 友情提示&#xff1a;小编的IDEA版本为2…