LayaAir开始在GitHub实时提交了,2.3版支持多光源渲染, 3D效果华丽提升!3D导出插件支持Unity2018了!
2.2.0以下版本升级注意事项
LayaAir引擎在发新版本之前,会先将上个版本稳定下来。由于LayaAir引擎上个版本(2.2.0beta)涉及到引擎源码的切换及编译模式改变等等,改动的比较大,难免会有一些未知的bug,所以此次用了近两个月来稳定这个2.2版本。今天,在推出2.3.0bata版之际,2.2.0也稳定了。想升级2.2.0的线上项目可以踏实更新了。
由于2.2开始IDE编译模式发生了变化。这里我们也再次总结一下2.1或者更低版本升级2.2.0正式版本或者更高版本的注意事项。
1、AS语言版本在2.2.0开始不再可以查看源码,所以如果有查看修改源码需求的AS语言项目,需要止步于2.1.1.1这个版本。
2、AS语言版本如果要升级到2.2.0或者更高版本,需要注意的是,引擎库的引用需要到LayaAirIDE的编辑模式,在F9类库设置里勾选。
3、LayaAirIDE 2.2.0及以上版本创建项目时不能选择2.2.0以下的引擎版本。否则会出现问题。这个问题主要是在编程语言的选择时,如果选择了ActionScript3.0项目和TypeScript项目实验版才会导致。TS和JS理论上是没有问题的,但建议不要使用高版本IDE创建低版本引擎项目。
4、标准的TypeScript项目还是和原来一样,查看不到源码,并非是升级了引擎版本就可以看到源码了。只有创建新的实验版TypeScript项目,才能看到TypeScript源码。
5、实验版TypeScript项目目前在IDE里还有自动引包的BUG,这个BUG是内置的VSCode编辑器问题,目前VSCode官方最新测试版该问题已被解决,等VSCode正式版之后,我们会进行相关的适配调整。如果一定要用TypeScript实验版的开发者,遇到自动引包问题的时候,手动引包即可,目前未发现有别的问题。
6、LayaAirIDE 2.2.0开始默认取消了IDE内置的F5断点调试模式,开发者需要断点调试,可以F6运行,调起chrome的断点调试。这一直是我们推荐的调试模式。如果开发者一定要在IDE内进行断点,官网文档中给出了开启F5调试的IDE修改方式。文档链接如下:
https://ldc2.layabox.com/doc/?nav=zh-ts-3-0-7
vivo小游戏适配优化
LayaAirIDE 2.3.0beta版开始,适配了vivo最新的发布方案,增加了vivo发布的分包支持。同时在vivo小游戏发布的功能里,增加了rpk包调试的日志级别选项,开发者可以选择输出什么级别的日志,增强了开发者调试快游戏的体验。这个功能在其它的快游戏的发布选项里也有,目前阶段实测是vivo最为成熟。
LayaNative相关更新
开始在GitHub实时维护了
Layabox官网中引擎版本更新的周期是一个月左右发一个版本。之前引擎的GitHub更新基本上是与官网更新周期同步的。从本次版本开始,LayaAir引擎团队开启了GitHub实时维护模式,对于LayaAir新的引擎功能,以及发现的引擎BUG修改,会直接实时提交到GitHub中,如果开发者同步了GitHub上的LayaAir引擎版本,将会实时获得最新的引擎版本。无需再等Layabox官网一月一次的版本更新(注:IDE与3D插件更新不开源,只能等官网)。
与此同时,我们也欢迎有引擎代码提交能力的开发者,参与到引擎的BUG维护以及功能开发中来,我们官方引擎团队在审核通过后,会合并到线上版本中。对于参与引擎开发与维护的开发者,有机会获得LayaAir引擎官方团队的邀请,加入到开源小组中,获得开源小组的证书、参与引擎发展规划会议以及免费获得引擎技术服务等福利。
3D导出插件支持Unity2018.4.7
自从2016年LayaAir引擎支持3D以来,引擎的3D场景一直是基于Unity 5.6.x系列版本作的适配。在收到开发者的反馈后,我们从2.3版本开始支持Unity2018.4.7的导出。(这里需要注意的是,推荐开发者使用的版本是Unity2018.4.7,如果使用了Unity2018其它版本,可能会有未知的兼容问题。)
从2.3开始,不再维护Unity 5.6.x的3D导出插件版本。已有旧项目的开发者,在升级到Unity2018.4.7版本后,安装好2.3版LayaAir Unity导出插件,再直接在Unity2018里导入Unity 5.6.x旧项目,会自动完成升级。开发者直接在新的Unity2018插件模式下导出资源即可,(注意:3D插件最好要对应引擎的版本,虽然新版引擎可以兼容旧版插件导出的资源,但新版引擎的配套功能只有在新插件中才可以使用。而且旧版本引擎无法使用新版插件导出资源)。
另外有一处Unity 5.6.x升级到Unity2018.x的注意事项,那就是在导出光照贴图时需要将Unity中PlayerSetting的LightmapEncode切换为normal模式,才会正常。
2.3.0开始增加3D多光源支持
(多光源效果示意图,图已被压缩,效果失真)
2.3.0简化了自定义Shader流程
除了性能与功能,LayaAir在易用性上的探索也从未停止过,每一次易用性的提升,对开发者都是一次解放。
LayaAir2.3.0beta之前的引擎版本,要实现自定义Shader必须关联精灵宏定义和材质宏定义,相对来说较为繁琐。从LayaAir2.3.0beta开始,对此做出了易用性的改良,引擎会在内部自动化完成Shader和精灵宏定义、材质宏定义的关联工作,同时解除Shader和材质、精灵需绑定的限制,无需再传入精灵、材质宏定义集合两个参数。让自定义Shader更自由,更易用。
2.3.0版本3D其它新增功能
除了重磅功能多光源支持和自定义Shader易用性的提升外,2.3.0beta版中还新增了大量的其它3D实用能力。
3、增加了纹理格式枚举函数:
TextureFormat、 RenderTextureFormat、 RenderTextureDepthFormat。
SystemUtils.supportTextureFormat(是否支持纹理格式),
SystemUtils.supportRenderTextureFormat(是否支持渲染纹理格式)。
2.3.0版本升级注意事项
如果开发者的项目是从LayaAir2.3.0beta之前的引擎版本升级上来的,还需要对照以下的升级注意事项,看项目中用到了哪些需要调整的地方,然后依据以下升级注意事项进行调整。
升级注意事项如下:
写在最后
未来,我们仍将会保持在3D方面的大力投入,努力保持LayaAir在3D领域的领先性优势,不断加强引擎高品质3D游戏的渲染能力。对于3D游戏开发工具方面,也是按计划中在如期进行。我们会率先推出无编程的3D游戏制作工具,然后再推出专业版LayaAir引擎3D开发工具。
The End
推荐阅读:
重磅:LayaAir2.2将引擎源码全面切换至TypeScript,支持WebGL2.0,并增加大量3D实用功能
LayaAir 2.1.0 已废除Canvas API兼容,3D现有功能丰富与易用性再次加强!
LayaAir引擎放弃Canvas API,打造次世代3D引擎与云游戏引擎,提供AI赋能!
MOBA、SLG、ARPG类型3D HTML5游戏案例精品推荐