前言

  一行白鹭上青天

需求

  最近,我们老板刷刷的为了省事,给美术减压(背景有点长,不说了)。
  美术出 fairygui,我需要在网页上看到实时操作,并且看到效果!

需求分析

  这怕是要了我的狗命啊,但是要年底了,包住饭碗要紧。
  提炼关键字,fairygui网页展示,操作,Egret

  再浓缩一下:fairygui 为交互素材,白鹭为引擎,vue为展示页面

一、fairygui 是什么?

  官方地址:http://www.fairygui.com/guide/

   FairyGUI提供了一个强大的UI编辑器,使用习惯与Adobe系列软件保持一致,美术设计师和策划都可以轻松上手。

  airyGUI提供了多个游戏引擎SDK:UnityCocos2d-xCry EgineMonoGameHavok Vision/Project AnarchyEgretLayaAirCocosCreatorHaxePixiFlashStarling,未来还将支持UE4LibGDX等。借助FairyGUI-SDK,

  你可以轻松在UI中使用3D对象、粒子等元素,而且FairyGUI还解决了环形进度条、像素点击测试、图文混排、循环列表、虚拟列表、曲面UI、VR输入等UI开发中常见的痛点

  提供的SDK:EgretLayaAir

  言外之意,我要是想要用到fairyGui,我还要一个H5引擎

二、Egret是什么?

  官方地址:https://www.egret.com/

  白鹭为开发者提供移动端游戏开发一站式解决方案,并建立包含核心渲染引擎2D/3D、游戏开发工具、创意动画工具、资源工具、原生打包方案等全球首个HTML5完整工作流,帮助全球25万+活跃开发者高效开展工作。

  汗颜,牛逼的是用来做游戏开发的,我能够怎么办 我也很绝望啊~

  为什么选择Egret?

  就提供两个SDK,我有选择吗?

  emmm,第一感觉白鹭相对成熟一些,坑没有这么多吧(良好的自我安慰心理)

三、二者结合

  fairygui 是提供官方案例的

  我简单的总结一下,顺便说一说这里面的坑

  1.   将FairyGUI库以及依赖的rawinflate库拷贝到libs目录。(如果你在编辑器发布时没有勾选压缩描述文件,那么这个库是不需要的)

  

  敲重点:这句话我反复了好了几遍,刚开始根本摸不着头脑,哪里来的FairyGUI库????

  找来找去,思来想去,把官网都要翻遍了 

  眼睛尖的我发现,原来要去下载他的官方案例,才有这个FairyGUI库

  一如既往的贴心(白鹭SDK下载地址):http://www.fairygui.com/product/#Egret-SDK

  

  2. 复制一份rawinflate.min.js,并改名为rawinflate.js。(如果你在编辑器发布时没有勾选压缩描述文件,那么这个库是不需要的)。

   这句话是什么意思呢:编辑器是指fairygui ,贴心的我再次截图

  

  

  3. 在egretProperties.json文件中添加:

  

{
"name": "rawinflate",
"path": "./libs/rawinflate"
},
{
"name": "fairygui",
"path": "./libs/fairygui"
}

  贴心的我,再次截图,其实呢,就是在白鹭里面引用fairygui库 我用的是最新的白鹭 5.XX

  

  4.使用FairyGUI编辑器完成UI编辑。发布目录请选择Egret工程的resource/assets目录。发布后得到两个(或以上)文件。

  

  这个我还是再次截图吧!fairygui发布,一定要选择Egret哦!不然就是打出了很多多余的文件

  设置好了以后,发布项目,把这些文件复制到白鹭项目里面(这个 直接用你下载的demo 实例就好 如果你不想再她的基础之上,你可以直接在自己的项目中引用)

  

  5. 在default.res.json里,将上述的文件添加到定义中。扩展名为fui文件,类型请选择为bin。注意:Egret自动检测添加的资源,名称通常会自动加上下划线和后缀,例如basic.fui,名称自动设置为“basic_fui”,这里我们要手动将_fui去掉,名称只需要为“basic”

   这个就是静态资源的导入

  

  一定要记得 .fui 文件的引用

  6. 在代码里完成规定的初始化,例如设定默认字体,滚动条等等。

   

  

  你这样子以为就可以了,一定会报错的,相信我

  2020年2月补充

  为什么会报错呢?

  第一 要替换自己的资源 一定要注意包名对应

  第二 也要看一下官方是怎么样资源加载的 特别是静态资源加载 (注意资源名 包名 一一对应就好了)

  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

  华丽丽的分割线,昨晚还没有写完,继续写

  算了,不接着写了(我这该死的 任性啊)

  成功跑通自己案例的

  

Egret(白鹭引擎)——Egret+fairyGui 实战项目入门的更多相关文章

  1. day132:2RenMJ:MJ需求文档&MJ游戏流程&Egret白鹭引擎安装&TypeScript简要介绍

    目录 1.麻将产品需求文档 2.麻将游戏流程 3.Egret白鹭引擎 4.TypeScript简要了解 5.TypeScript快速入门 1.麻将产品需求文档 1.麻将术语 1.名词术语 牌⼦: 序数 ...

  2. 白鹭引擎EUI做H5活动 入门篇

    前言:本学习文档的目的是为了实现h5,或者简单的h5游戏,比如说,我们要实现一个可以左右,或者上下移动的场景的h5,在场景移动的过程中,会有相应的动画或者操作,我们通过 js 也可以实现,但是为了流畅 ...

  3. Egret(白鹭引擎)——“TypeError: Cannot read property 'asCom' of null”

    前言 相信我,这个错误新手都不陌生:TypeError: Cannot read property 'asCom' of null 还有,一定要看我上一篇,哦不(人家应该是报了这个错,才找到看到这篇文 ...

  4. [egret]白鹭引擎打包安卓包体积太大减小

    萌新第一次用egret打安卓包,发现裸包22M+,吃惊到吃手手. 上网搜查无果. 可能原因是egret优化过一波打包,变得更便利了,网上对新版本打包比较少讨论. 解决方法: egret-android ...

  5. TypeScript白鹭引擎Egret防止按钮事件冒泡穿透

    this.addEventListener(egret.TouchEvent.TOUCH_BEGIN, (event) => { if (event.target!=this) return;/ ...

  6. Egret白鹭H5小游戏开发入门(二)

    前言: 昨天的文章中简单的介绍了Egret白鹭引擎从安装到基本的使用配置等问题,今天着重介绍H5小游戏开发的起步阶段,如Wing面板的使用,素材的处理,类的说明,开始布局等等. 整体概况: 根据上一篇 ...

  7. Egret白鹭H5小游戏开发入门(一)

    前言: 好久没更新博客了,以前很多都不会,所以常常写博客总结,倒是现在有点点经验了就懒了.在过去的几个月里,在canvas游戏框架方面,撸过了CreateJS,玩得了Egret,又学过PIXI.js. ...

  8. Egret Engine(白鹭引擎)介绍及windows下安装

    Egret Engine简要介绍----- Egret Engine(白鹭引擎)[Egret Engine官网:http://www.egret-labs.org/]是一款使用TypeScript语言 ...

  9. FaceRank,最有趣的 TensorFlow 入门实战项目

    FaceRank,最有趣的 TensorFlow 入门实战项目 TensorFlow 从观望到入门! https://github.com/fendouai/FaceRank 最有趣? 机器学习是不是 ...

随机推荐

  1. continue break exit用法说明

    1,continue用法 2,break用法 3,sys.exit用法 1,continue用法(跳出本次循环,继续下次循环) for i in xrange(10): if i == 8: cont ...

  2. win10 安装microsoft.net framework3.5

    转载于:https://www.windows10.pro/win10-net-framework-3-5/ 之前手残不小心把microsoft.net framework3.5删了,结果导致Sql ...

  3. Azure 中 Windows 虚拟机的大小

    本文介绍可用于运行 Windows 应用和工作负荷的 Azure 虚拟机的可用大小和选项. 此外,还提供在计划使用这些资源时要考虑的部署注意事项. 本文也适用于 Linux 虚拟机. 类型 大小 说明 ...

  4. history历史记录控制

    往往我们操作的每一条命令都会被机器记录下来,所有我们为了安全需要屏蔽掉某些敏感的操作命令. 设置linux默认的历史记录数: 临时生效: export  HISTSIZE=5 history 永久生效 ...

  5. November 15th, 2017 Week 46th Wednesday

    Of all the tribulations in this world, boredom is the one most hard to bear. 所有的苦难中,无聊是最难以忍受的. When ...

  6. 为什么ConcurrentHashMap的读操作不需要加锁?

    我们知道,ConcurrentHashmap(1.8)这个并发集合框架是线程安全的,当你看到源码的get操作时,会发现get操作全程是没有加任何锁的,这也是这篇博文讨论的问题--为什么它不需要加锁呢? ...

  7. UltraISO制作使用(服务器装机u盘制作)

    1.准备工作: 1)U盘一个,需要格式化(大于4G,毕竟ISO文件就已经大于4G了) 2)CentOS7.1 iso文件一个(去这里下载:http://www.centoscn.com/) 3)Ult ...

  8. python第二十九课——文件读写(写数据的操作)

    演示写数据的操作: 结论:往文件中写入数据,如果文件不存在,先创建文件,再写入内容 #1.打开文件 fw=open(r'd.txt','w',encoding='utf-8') #2.写数据操作 fw ...

  9. C#实现之(自动更新)

    做开发的人,尤其是做客户端(C/S)系统开发的人都会遇到一个头疼的问题,就是软件的自动更新:系统发布后怎样自动的更新程序,在下有幸开发过一个自动更新程序,更新程序与任何宿主程序是完全独立的:只要在主程 ...

  10. myEtherWallet在线钱包的使用

    https://www.myetherwallet.com/#generate-wallet myEtherWallet是一款在线钱包,当你不想安装类似metamask这样的插件时,可以选择使用它 1 ...