Egret 4.1.6 和 LayaBox(LayaAir 2.0) 的 易用性 对比

在2D方面,我刚刚入门。还没用上原生、资源管理等高大上功能。

就2D小功能、编译方面,EGRET和LAYABOX(LAYAAIR)我的实践体会如下

typescript用法

  EGRET WING 4.1.6 LAYAAIR 1.7.21 LAYAAIR 2.0.0.beta4
console.log

识别任何文件和行号,自动带上输出文件、行号

●胜出●

不明

在右边有一个小小的ts或js可点击行号。

输出内容里面的文件行号不能智能识别。

这个和原生的vscode行为一样。

编译器

typescript的tsc编译器编译

js文件分散

命名空间,mudule都可以暴露在全局空间中

可以a.b.c方式直接使用

●胜出●

同egret

但是,编译成功的过程没有任何提示显示

因为这个引擎是action script开发为主的,估计typescript方式开发是临时工拼凑的工具。

(●胜出●)

gulp+browserify+tsify
js合成单一文件,没有全局空间污染

必须import, export,向javascript es6看齐

写代码很烦,需要不断import

不支持关键字namespace,

支持关键字module

因为javascript es6 把文件看作module,所以typescript的显式namespace module 要说拜拜了

编译过程有提示显示了

api风格

api不容易用,异步调用方式,异步思维满天飞

事件函数基本无封装

api容易用,可以使用同步思维(当然,图片还是异步显示的)

一些事件功能函数易用,有些已经二次封装

●胜出●

同LAYA1.7.21

●胜出●

IDE运行速度 较快●胜出● 较慢 较慢
论坛友好度

没有敌对情绪

●胜出●

有一些些敌对情绪,常常说我引擎没收你钱

同laya1.7

引擎赚钱吗

新三板上市(基本相当于没上),每年亏2000万

现在花投资人和新三板的钱

●胜出●

还没上市

现在花投资人的钱

同laya1.7
流行程度 更流行 普通流行 同laya1.7
引擎成员实力

通过api来看,引擎开发者没有咋开发过游戏,api不是特别好用

这有点像当年如日中天的cocos,开发者也没有开发过游戏。

●胜出●

通过api来看,引擎开发者开发过游戏,api相对好用

但是引擎开发者应该大实力在action script上

可以编译flash,现在2018.11月了,flash需求在PC页游中尚有一半市场

考虑手机是PC流量的2倍,用户受众影响多了20%

同laya1.7

●胜出●

3D完善度 DEMO比LAYA的好看

腾讯背书,应该是用ActionScript开发了一款台球游戏

在微信小程序里面有。

●胜出●

腾讯背书,应该是用ActionScript开发了一款台球游戏

●胜出●

引擎容量大小

容量比laya小20%左右

●胜出●

较大 较大
引擎速度 不确定优劣

laya宣传说自己性能优

laya有cacheAs函数,但是egret也有类似的cacheAsBitmap 函数,

同1.7
2D物理引擎 不是box2d, 叫p2 可能是没有集成物理引擎

box2d

●胜出●

网站速度

较快

●胜出●

不那么快 不那么快
书籍

有egret的出版书籍

●胜出●

无出版书籍 无出版书籍
网课流行度

●胜出●

视频倒是官方出品。

脑残的竟然在腾讯课堂上收费才给看

两个解释:

1)laya要靠培训市场生钱

2)搞视频的人没在laya拿工资,是第三方,所以收钱弥补损失

同laya1.7

IDE技术 VSCODE,深度定制,已经不能装任何插件了

VSCODE,浅度定制,还能装某些插件

●胜出●

同laya1.7

●胜出●

3D支持 不成熟,论坛相关内容沉寂 成熟,论坛相关内容活跃 成熟,论坛相关内容活跃
       

如何选择?

API易用性:laya胜出

调试易用性:console.log智能识别文件,行号, egret胜出。laya勉强能用,如果要用sourcemap+stack功能,laya不行了。

代码组织方面:import export 模块问题,全局命名空间(egret, laya 1.7)的明显好用。两个引擎暴露出来的接口也都是会污染全局环境的,可以直接引用的。C#和Java的命名空间也是全局可用的。所以这个laya2.0的做法,就是着了es6那班老学究的魔,加上IDE开发人员只想着个人人生前途,不想公司前途,用了这个内部模块import方式,恶心到家。理想的是输出一个js加快装载,但是支持全局命名空间。

所以,现在最好的方案是把egret的api封装成同步编程模式是最彻底的解决方法。但这是不可能的事情。所以这个答案没有答案。

将就着选吧。

如果用了action script,那么服务端不能采用同一套typescript技术,现在大部分公司还是没这么强的实力,配备这么多人大眼瞪小眼。

咱不说腾讯,人家那服务端说不准是C++的,有钱任性,何况有好多只会C++的不愿和前端js竞争饭碗,但是二哥网易也是在客户端服务端方面都是向python一条龙靠齐

猜你喜欢

转载自blog.csdn.net/love_hot_girl/article/details/83744822