Egret(白鹭引擎)——Egret+fairyGui 实战项目入门
前言
一行白鹭上青天
需求
最近,我们老板刷刷的为了省事,给美术减压(背景有点长,不说了)。
美术出 fairygui,我需要在网页上看到实时操作,并且看到效果!
需求分析
这怕是要了我的狗命啊,但是要年底了,包住饭碗要紧。
提炼关键字,fairygui,网页展示,操作,Egret
再浓缩一下:fairygui 为交互素材,白鹭为引擎,vue为展示页面
一、fairygui 是什么?
官方地址:http://www.fairygui.com/guide/
FairyGUI提供了一个强大的UI编辑器,使用习惯与Adobe系列软件保持一致
,美术设计师和策划都可以轻松上手。
airyGUI提供了多个游戏引擎SDK:Unity
、Cocos2d-x
、Cry Egine
, MonoGame
, Havok Vision/Project Anarchy
、Egret
、LayaAir
、CocosCreator
、Haxe
、Pixi
、Flash
、Starling
,未来还将支持UE4
、LibGDX
等。借助FairyGUI-SDK,
你可以轻松在UI中使用3D对象、粒子等元素,而且FairyGUI还解决了环形进度条、像素点击测试、图文混排、循环列表、虚拟列表、曲面UI、VR输入等UI开发中常见的痛点
提供的SDK:Egret
、LayaAir
言外之意,我要是想要用到fairyGui,我还要一个H5引擎
二、Egret是什么?
白鹭为开发者提供移动端游戏开发一站式解决方案,并建立包含核心渲染引擎2D/3D、游戏开发工具、创意动画工具、资源工具、原生打包方案等全球首个HTML5完整工作流,帮助全球25万+活跃开发者高效开展工作。
汗颜,牛逼的是用来做游戏开发的,我能够怎么办 我也很绝望啊~
为什么选择Egret?
就提供两个SDK,我有选择吗?
emmm,第一感觉白鹭相对成熟一些,坑没有这么多吧(良好的自我安慰心理)
三、二者结合
fairygui 是提供官方案例的
我简单的总结一下,顺便说一说这里面的坑
- 将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 实战项目入门的更多相关文章
- day132:2RenMJ:MJ需求文档&MJ游戏流程&Egret白鹭引擎安装&TypeScript简要介绍
目录 1.麻将产品需求文档 2.麻将游戏流程 3.Egret白鹭引擎 4.TypeScript简要了解 5.TypeScript快速入门 1.麻将产品需求文档 1.麻将术语 1.名词术语 牌⼦: 序数 ...
- 白鹭引擎EUI做H5活动 入门篇
前言:本学习文档的目的是为了实现h5,或者简单的h5游戏,比如说,我们要实现一个可以左右,或者上下移动的场景的h5,在场景移动的过程中,会有相应的动画或者操作,我们通过 js 也可以实现,但是为了流畅 ...
- Egret(白鹭引擎)——“TypeError: Cannot read property 'asCom' of null”
前言 相信我,这个错误新手都不陌生:TypeError: Cannot read property 'asCom' of null 还有,一定要看我上一篇,哦不(人家应该是报了这个错,才找到看到这篇文 ...
- [egret]白鹭引擎打包安卓包体积太大减小
萌新第一次用egret打安卓包,发现裸包22M+,吃惊到吃手手. 上网搜查无果. 可能原因是egret优化过一波打包,变得更便利了,网上对新版本打包比较少讨论. 解决方法: egret-android ...
- TypeScript白鹭引擎Egret防止按钮事件冒泡穿透
this.addEventListener(egret.TouchEvent.TOUCH_BEGIN, (event) => { if (event.target!=this) return;/ ...
- Egret白鹭H5小游戏开发入门(二)
前言: 昨天的文章中简单的介绍了Egret白鹭引擎从安装到基本的使用配置等问题,今天着重介绍H5小游戏开发的起步阶段,如Wing面板的使用,素材的处理,类的说明,开始布局等等. 整体概况: 根据上一篇 ...
- Egret白鹭H5小游戏开发入门(一)
前言: 好久没更新博客了,以前很多都不会,所以常常写博客总结,倒是现在有点点经验了就懒了.在过去的几个月里,在canvas游戏框架方面,撸过了CreateJS,玩得了Egret,又学过PIXI.js. ...
- Egret Engine(白鹭引擎)介绍及windows下安装
Egret Engine简要介绍----- Egret Engine(白鹭引擎)[Egret Engine官网:http://www.egret-labs.org/]是一款使用TypeScript语言 ...
- FaceRank,最有趣的 TensorFlow 入门实战项目
FaceRank,最有趣的 TensorFlow 入门实战项目 TensorFlow 从观望到入门! https://github.com/fendouai/FaceRank 最有趣? 机器学习是不是 ...
随机推荐
- continue break exit用法说明
1,continue用法 2,break用法 3,sys.exit用法 1,continue用法(跳出本次循环,继续下次循环) for i in xrange(10): if i == 8: cont ...
- win10 安装microsoft.net framework3.5
转载于:https://www.windows10.pro/win10-net-framework-3-5/ 之前手残不小心把microsoft.net framework3.5删了,结果导致Sql ...
- Azure 中 Windows 虚拟机的大小
本文介绍可用于运行 Windows 应用和工作负荷的 Azure 虚拟机的可用大小和选项. 此外,还提供在计划使用这些资源时要考虑的部署注意事项. 本文也适用于 Linux 虚拟机. 类型 大小 说明 ...
- history历史记录控制
往往我们操作的每一条命令都会被机器记录下来,所有我们为了安全需要屏蔽掉某些敏感的操作命令. 设置linux默认的历史记录数: 临时生效: export HISTSIZE=5 history 永久生效 ...
- November 15th, 2017 Week 46th Wednesday
Of all the tribulations in this world, boredom is the one most hard to bear. 所有的苦难中,无聊是最难以忍受的. When ...
- 为什么ConcurrentHashMap的读操作不需要加锁?
我们知道,ConcurrentHashmap(1.8)这个并发集合框架是线程安全的,当你看到源码的get操作时,会发现get操作全程是没有加任何锁的,这也是这篇博文讨论的问题--为什么它不需要加锁呢? ...
- UltraISO制作使用(服务器装机u盘制作)
1.准备工作: 1)U盘一个,需要格式化(大于4G,毕竟ISO文件就已经大于4G了) 2)CentOS7.1 iso文件一个(去这里下载:http://www.centoscn.com/) 3)Ult ...
- python第二十九课——文件读写(写数据的操作)
演示写数据的操作: 结论:往文件中写入数据,如果文件不存在,先创建文件,再写入内容 #1.打开文件 fw=open(r'd.txt','w',encoding='utf-8') #2.写数据操作 fw ...
- C#实现之(自动更新)
做开发的人,尤其是做客户端(C/S)系统开发的人都会遇到一个头疼的问题,就是软件的自动更新:系统发布后怎样自动的更新程序,在下有幸开发过一个自动更新程序,更新程序与任何宿主程序是完全独立的:只要在主程 ...
- myEtherWallet在线钱包的使用
https://www.myetherwallet.com/#generate-wallet myEtherWallet是一款在线钱包,当你不想安装类似metamask这样的插件时,可以选择使用它 1 ...