Egret社区

一周接触egret心得

2015-12-28 13:15
32787270
本帖最后由 nofastfat 于 2016-5-4 10:23 编辑

已取消回复可见,让老帖沉下去吧

一、前言
先介绍下背景:本人是一名6年的ASer,具有web游戏,AIR(starling)手机游戏,AIR手机APP的项目经验

一直在关注egret和laya等H5引擎的发展,最近不知道哪根筋不对,突然想用H5做点什么,gogogo

先说说为什么选择egret
1.ASer慕7yue的名,值得信赖
2.觉得从AS3代码转到H5,毕竟不如重新写
3.之前做手游的时候,人物动作、光效动画等一直使用龙骨,某个时刻起龙骨居然直接纳入到了egret产品线中,果断对egret刮目相看

所以,所以就选择了egret

二、初步接触
麻利的下载了egret引擎的核心,然后在引擎里面把egret所有的产品都下了个遍(本人思想比较保守,稳定为上,所以都是安装的稳定版,非社区体验版)

下完产品,用wing新建了game demo和eui demo,各自跑了一遍,然后就蒙B了,不知道代码从哪下手,决定先看文档:http://edn.egret.com/cn/docs/index
首页概览产品更新详解Egret EngineEgret Engine 3DEUI 库Egret 扩展库DragonBones开发工具高手进阶开放平台
花1天2晚把所有的条目都看一遍。其中看的时候,有粗有细,保证日后遇到问题的时候,知道在哪里找解决方案。

这里特别感谢写这些文档的官方人员,写的很不错。
同时特提醒那些像我一样新学egret的朋友,一定要先花时间耐心看完文档,新学的过程中遇到的大部分问题,在文档中都有介绍到。




三、IDE选择
看完文档后,心理底气足了不少,期间也逛了不少论坛,看了很多帖子。接下来就是选择IDE。


官方介绍是有3种IDE可选的:VS插件、wing、webstorm, 论坛里面大家评论也是各有千秋,最后请教朋友【D5】,参考他们公司的使用情况,加上我自己的想法,最终敲定wing:
1.习惯使用eclipse风格的人,难以习惯VS风格,再加上VS安装包超大,嫌麻烦所以不选VS插件
2.webstorm毕竟不如wing的官方支持的好,而且wing能做UI


但是wing有不少坑,以下是使用心得:
1.wing启动、关闭超快,不像FB那样需要等一会
2.wing bug很多,官方也在不断完善中,一天下来,重启个5-6次很正常
3.wing配合eui做自适应超级爽,注意是超级,但是eui的state不好用,在wing里面编辑eui的state各种垮,后面详细介绍
4.用惯了FB的人,很快能适应wing,但是没有F2、新建默认无焦点、属性编辑默认选中、代码(),""自动补齐等方面有待改善


四、性能测试
身为一个主程,首要考虑的是稳定和性能,稳定暂时无法确认,只有先从性能入手。


其实在选择egret的时候,已经在egret的平台里面看了一下排名靠前的游戏,从涉及到的游戏类型来看,erget-web版目前只适合中小型游戏(基于战斗和场景规模,纯属个人观点),战斗最复杂的算是dota传奇模式的5V5,我估摸着这也是egret-web版渲染的极限了。


有鉴于此,从以前air项目中拿出龙骨资源,用DragonBonesPro把以前的资源顺利的导出为egret支持的格式
码上几行代码,测试了fast模式的龙骨在手机web上的性能,测试涉及到pc-chrome,iphone4S, iphone5, iphone6S,发现在iphone4S的Safari中,场景同时放10个完全不同的龙骨动画时,fps可以有20左右,(测试详细结果也许另起文章,这里不赘述,测试地址:http://nofastfat.aliapp.com/),同时也印证上面说到的目前游戏类型只能是中小型。以后产品选型都会基于这个分析结果。


五、外包经历
也是巧,刚做完性能测试,看到群里有个朋友问有没人接外包做,我想着正好找个外包练练手,熟悉一下工作流。
就跟这个发包朋友接洽上了,出于不坑人的前提,谈的时候,我跟这个朋友明确了我现在的H5新手状况,可以把我作为第二考虑,把产品需求发给我就行,需求是个画心的小游戏。虽然是替补,但是鄙人三天后给出demo,1周后顺利交付,细节不赘述,不涉及到微信分享的交货地址:http://2.hearter.sinaapp.com/

六、eui
小游戏的几个页面中,有单页面、需要滑动的长条页面,通过使用egret自带的布局+eui+wing,做到实时预览页面效果,可视化编辑页面的布局策略,在chrome中预览一下各个设备的运行情况,简直是完美,HI翻天
顺便说一下为什么使用eui而不是gui,gui我没有使用过,但是一直在群和论坛里面有了解,gui引入了flex的优缺点,诟病较多,而eui作为gui的改良版,自然作为首选。然而eui还是有不少问题:
1.从设计上说,eui感觉很混乱,引入了starlingswf的机制,却称为皮肤,感觉怪怪的
2.eui的state个人觉得不好用,有点鸡肋,在wing中编辑eui的state时,bug层出,有几次甚至导致页面混乱,源码丢失-_-#。当切换的state中包含按钮等需要添加监听的组件时,容易引起内存泄露,而且,每次切换都需要重新添加事件监听,维护成本很高(事实证明,我写这篇帖子的时候还是太年轻,bb瞎了)
3.eui的创建成功的Event.complete与UIEvent.creation_complete经常把人搞混乱,总结起来就是使用thm.json文件加载的eui监听creation_complete事件,否则监听complete事件


but,but, but, eui流弊的布局和易用这种优点,完全遮盖了缺点,好用才是硬道理


其他的:
1.使用ResDepot进行资源管理,挺好用
2.使用TortoiseSVN基于windows进行svn代码管理
3.自带的粒子编辑器功能有点单一,扩充一下粒子模式就好了
4.前天跑了一下egret3D的sample,振奋人心,虽然自己从max导模型解析失败,但是不妨碍egret3d做一些简单的3D产品,实现了从无到有的跨越,感觉前景棒棒哒
5.egret官方群对大家关于产品BUG的反馈还是很及时的,很友好,赞一个。
另外,由于sinasae最近开始不要脸的默认改收费政策,所以应用即将迁移。
进阶传送门:
http://bbs.egret.com/thread-17898-1-1.html






参与人数 3银子 +30 收起 理由
颂云空间 + 10 很给力!
dom + 10 赞一个!
ladeng6666 + 10 好文,赞一个!

查看全部评分

分享到 :
4 人收藏
各种上线H5产品展示,个人站点:http://www.nofastfat.com/wp/?page_id=82

270 个回复

倒序浏览
Once  斑竹 | 2015-12-28 14:19:13
前排围观
dily3825002  社区管理员 | 2015-12-28 14:29:10
好文章
warden  圆转纯熟 | 2015-12-28 14:31:48
围观下,本人也是as转过来的
adodo08  圆转纯熟 | 2015-12-28 14:58:32
前排围观
xsstomy  斑竹 | 2015-12-28 15:15:38
好文
yjtx  官方团队 | 2015-12-28 15:28:02
前排占座
aser  登堂入室 | 2015-12-28 16:21:54
龙峪  圆转纯熟 | 2015-12-28 16:37:36
k~~~~~~~~~~~~~~k
老张  登堂入室 | 2015-12-28 18:17:04
的顶顶顶顶顶顶顶顶
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|京网文[2014]0791-191号|京ICP证150115号|Egret社区 ( 京ICP备14025619号 )

Powered by Discuz! X3.4 © 2001-2019 Comsenz Inc.

返回顶部