LayaAir2是Layabox旗下开发的第二代开源引擎。这是一款功能齐全且性能也是全球最高的HTML5引擎之一,它不仅保留了1.0中全部的原有功能,还在该基础之上新增内置了box2d物理引擎、组件化支持以及150多款的3D功能。各种官方材质,在纹理方面也增加了多种纹理参数配置,上传像素借口和GPU纹理压缩等功能。而在动画方面也有着多层动画混合播放等功能,大幅减少对内存的使用,增加了动画流畅度的表现。对比之前的2D、3D来说,在安卓的表现上有着10%~90%的提升,而ios平台更是有着13%~270%的提高。而现在还软件还支持单线程和双线程两种模式,开发者可以根据自己的项目来实际测试结果决定选择哪种模式,单线模式的优点是操作无延迟,而双线程模式下虽然操作会有半帧到一帧的延迟但是性能会高出许多。在2.0版本中软件还将目前开发者最需要调整的物理引擎包体积缩减,新增了cannon.js物理引擎库,而全平台次时代3D引擎的开发让2D、3D、AR、VR和页游、Native手游、HTML5游戏等可以通过一个引擎来统一制作,更加支持TS、JS、AS3三种语言的开发,适用于各种风格的开发者。还在等什么呢,快来和200多名知名游戏厂商一起使用吧,在本站下载
layaair2中文版,该版本的语言已经被修改为简体中文,更加适合国内的开发者们使用!
使用教程
1、解压从本站下载的安装包,运行LayaAir2.exe。
2、点击新建,弹出页面后可以选择创建一个什么类型的项目。
3、选择项目存储位置,最好与安装地址放在同一个文件夹。
4、选择编程语言,支持多种语言,选择完成后即可点击创建。
5、创建完成后即可进入开发界面。
软件特色
1、性能卓越:
拥有远超越业界水准的性能体验,经性能评测媲美APP引擎Unity3D
2、三端发布:
一次开发,零成本同时发布HTML5、APP、Flash页游三种版本。
3、多类型:
已支持2D、3D、VR、AR游戏类型。
4、多语言:
已支持ActionScript3(AS3)、TypeScript、JavaScript三种开发语言。
5、运行库小巧:
核心库功能强大,体积极轻,核心库+2D+UI+动画特效粒子+3D+VR小于500K。
6、IDE完善:
拥有完整的IDE集成开发环境,主要包括代码编辑器、UI编辑器、粒子编辑器、动画编辑器、场景编辑器、资源转换器(支持Spine与DragonBones骨骼动画、swf动画、Unity3D资源等)。
7、学习简单:
构架精巧,简单易上手。
8、大型游戏支持:
优秀的性能和自动化资源、内存、显存管理以及众多大型产品打磨,是首款支持APP级大型HTML5游戏的引擎。
引擎库功能
LayaAir2.0引擎不仅保持了1.0的原有功能,比如:
精灵、矢量图、文本、富文本、位图字体、动画、骨骼、音频与视频、滤镜、事件、加载、缓动、时间、网络、UI系统、物理系统、TiledMap、prtocol等API;还新增内置了box2d物理引擎、组件化支持,以及150多款3D功能,比如:
新增的主要官方材质包括PBRStandardMaterial、PBRSpecularMaterial以及UnlitMaterial材质等。
纹理方面,增加多种纹理参数配置(mipmap、format、wrapModeU、wrapModeV、filterMode、anisoLevel), 增加纹理上传像素接口, GPU纹理压缩。
动画方面,新增Animator动画融合功能crossFade,新增动画多层混合播放,动画更新机制调整为实时插值,大幅减少内存和动画流畅度表现,新增多种材质属性动画
支持开发2D、3D、VR的产品研发,支持Canvas与WebGL模式,支持同时发布为HTML5、Flash、APP(IOS、安卓)微信小游戏,QQ玩一玩多种版本。
IDE功能
代码开发
UI与场景编辑器
场景管理
粒子编辑器
动画编辑器
物理编辑器
组件化支持
3D支持
LayaCloud项目支持
脚本扩展
预设
APP打包
JS混淆与压缩
第三方工具链转换工具(Unity3D、TiledMap、Spine、龙骨……)
软件优势
1、同时支持WebGL与Canvas渲染。优先使用webgl渲染(当WebGL不可用时,自动无缝转换为canvas渲染)。引擎设计过程中以性能为优先原则进行极致优化,在谷歌等优秀的
浏览器环境下运行性能媲美Unity3D等APP原生引擎。LayaAir拥有多款APP级的已上线2D游戏精品和3D游戏精品,证明引擎的流畅性能。
2、在API设计上追求精简,简单易用,上手容易,引擎本身非常注意自身大小,是目前同等功能最小的HTML5引擎。
3、同时支持ActionScript3、TypeScript、JavaScript三种语言开发HTML使用任意一种自己喜欢的语言开发即可。
4、同时支持2D,3D,VR ,AR,时间轴动画,缓动、UI系统、粒子动画、骨骼动画、物理系统等。
5、除提供可视化的集成式开发环境IDE编辑器外,还支持大量主流的第三方工具链,如:Unity3D、TiledMap、Spine、DragonBones等。建立了完善的工具链生态,可视化的编辑器,清晰的工作流,让美术,策划,程序紧密配合,大幅提升开发效率。
6、快速Flash产品转换Flash页游手游仅需1个人7天即可转换为HTML5和APP游戏
7、LayaFlash IDE支持代码编译、调试、压缩与混淆加密、资源转换、在线文档等功能
8、HTML5零学习成本AS3开发者可直接使用Flash开源框架和工具链进行开发HTML5
9、性能媲美APPLayaFlash引擎的重度游戏已运行于QQ空间等平台,性能媲美APP。
新手指南
一、如何选择开发语言
由于LayaAir引擎支持ActionScript3(AS3)、TypeScript(TS)、JavaScript(JS)三种语言开发,到底用哪种语言更好呢?常常困惑着刚接触引擎的新手们。这里简单介绍一下。
关于JS语言
需要大家注意的是JS语言虽然上手更为容易,但是作为一弱类型语言,开发与调试的难度,以及大型项目的管理与多人协作等方面,都不如TS与AS3这种可以在IDE中检测类型和语法语言。当代码越来越多的时候,JS一旦不小心写错,IDE中并不会有任何提示,只有在运行的时候才会发现问题,经常有开发者为了查一个小小的失误,花费大量的时间成本。所以虽然支持JS语言开发,但并不建议采用该语言作为中型或大型项目的开发。
关于TS语言
TS语言是官方推荐的开发语言,也是自2.2引擎开始,引擎源码所使用的语言。在官方的2.0引擎视频教学中,也会仅采用TS语言进行教学。关于AS语言
AS语言是2.2版本之前的引擎源码语言,AS3语言曾经是页游时代的霸主,但自从Adobe正式宣布放弃Flash之后,也代表着该语言也将步入无人维护的境地。那一些新的语言特性自然难已支持,毫无疑问,继续使用该语言将会拖引擎的后腿。所以,引擎源码语言进行了变更,但2.X版引擎,AS语言版本仍会保持兼容及维护。但未来3.x一定会放弃该语言的支持。所以建议开发者在创建新项目的时候不要使用AS语言。
二、全面认识和了解引擎
Layabox提供了文档和视频两种方式,帮助大家快速了解LayaAir引擎。尤其是涉及到IDE的使用,这是引擎开发的基础,包括项目的创建、管理、发布、UI与场景及动画的管理与编辑等。
文档会不定期进行更新,大家可以及时关注。这里特别推荐一下视频课的方式。视频课与文档存在区别。文档方便阅读与关键字查找。但文档受阅读体验等限制,对一些细节难以展开介绍。而且视频课的演示,会让整个讲述的流程更加完整。所以可以结合着看。
三、如何获得官方的技术答疑与指导
在开发实践的过程中,对引擎不是非常熟悉的开发者难免还会遇到各种引擎使用问题,此时如何能尽快获得解答呢?首先要注意的是,虽然网站中提供了QQ群号,但QQ群号的作用主要是开发者之间的互助交流,并不作为官方技术答疑的用途。
开发者问答社区,是唯一接受开发者BUG反馈的平台。需要注意的是,提出问题的时候,尽可能把引擎版本、IDE版本、问题和现象描述清楚,并同时提供一个简单的可重现DEMO,上传到社区的帖子中。否则可能会视为无效贴,不给予处理。
为了避免发出重复的帖子,以及更快的解决问题。建议在发贴前,先搜索关键字,搜索一下是否有类似问题已经提出或被解决。
如果非引擎的BUG,引擎已经开源并且免费,并不提供免费的引擎使用答疑服务。
如果有引擎使用指导的技术服务。可以点击下面的链接,联系引擎技术服务合作对接人沟通。
更新日志
v3.0.7版本
BUG修复
引擎
修复了给文本加上阴影滤镜后,出现边缘锯齿的BUG
修复了资源_idResourcesMap的key对不上而导致销毁错误的BUG
修复了websocket连接的wss URL字符串拼接BUG
修复了单选框组件的labelAlign属性right和center设置无效的BUG
修复了3D UI缩放默认值错误的问题
修复了 WebXR 初始化gl错误的BUG
IDE
修复了粒子序列帧修改TextureSheet的frame面板默认Y值无效,需要手动拖动一次曲线才正常的BUG
修复了预制体在场景内编辑后再次添加保存失败的BUG
修复了在场景/预制体的tab栏上,按下鼠标滚轮会出现报错的BUG
修复了Shader名称包含路径时,显示不正确的BUG
修复了删除场景中的节点后,装饰器暴露的入口处节点仍然存在的BUG
修复了装饰器@classInfo中使用现有分类,会直接把分类中原来的分类替换掉的BUG
修复了自定义的RadioGroup单选框组,skin属性为空时控制台报错的问题
修复了IDE自带的RPG示例中,如果开启视网膜,手机上摇杆无法控制的BUG
修正了键盘移动选中物体时,无法撤销(undo)操作的BUG
易用优化
3D物理中增加碰撞分组的属性暴露,可直接在IDE中设置碰撞分组了
2D物理增加关节锚点与关节连线的显示,可以更加直观的设置了
对于不支持生成UV1的骨骼模型,在控制台给出提示,并阻断生成UV1,避免强行生成UV1导致模型出错
完善了下拉选项框组件的全部中英属性翻译与说明提示
禁止删除动画状态机最后一个Layer,避免删除后引起报错,以及增加容错机制
2D物理的圆形碰撞体,优化为以圆心点为半径变化的缩放中心点
手机和邮箱登录方式登录,在注销或退出登录后,登录界面会保留登录的帐号
对于非精灵纹理,平铺模式设置非拉伸模式的时候,纹理非2的幂时强制为2的幂,避免设置纹理平铺模式无效的操作误解
当为纹理统一设置了按钮状态之后,UI组件的按钮状态设置隐藏,避免了设置无效的误解
功能新增
IDE新增spine 3.7版本的spine库适配
切换适配库后不要忘记刷新IDE
Spine3.7不支持导出二进制,需要导出为json格式
IDE精灵节点的绘制图形功能中新增绘制文本(用于动态文本)
点击星星用来评分