LayaAir3.2正式版来了:支持鸿蒙Next系统、步伐蓝图(可视化编程)等紧张的
LayaAir3.2-beta.1的版本中,我们已介绍了3.2是真正的全平台发布版本《LayaAir3.2来了:性能大幅提拔、一键发布安装包、支持WebGPU、3D导航寻路、升级为真正的全平台引擎》。在其后的beta版本迭代中,我们不仅实时修复了开发者们反馈的BUG,补上了beta.1欠下的鸿蒙Next系统支持,还额外新增了包管理器、步伐蓝图(可视化编程)等紧张的功能模块。
(LayaAir3视频展示精简版)
完整版视频地址(点底部阅读原文可直接跳转):
https://www.bilibili.com/video/BV1u8xreREWu
颠末四个多月的沉淀,本日,终于迎来了LayaAir3.2.0正式版,接待大家下载使用。
以下扼要介绍beta.1之后连续更新的功能与优化。
支持发布HarmonyOS Next系统
鸿蒙系统(HarmonyOS)作为华为自主研发的操作系统,已建立了完整的生态体系。鸿蒙系统的新版本HarmonyOS NEXT 在继承前代优势的基础上,举行了深入的技能优化和生态拓展,涵盖从操作系统内核、文件系统,到编程语言、编译器/运行时、编程框架,再到设计系统、集成开发环境,以及 AI 框架和大模型等全栈自研。随着 HarmonyOS NEXT 的发布,鸿蒙生态将迎来更广阔的发展空间和丰富的应用场景,未来有望成为全球智能互联范畴的领军者之一。
作为华为的技能互助伙伴,Layabox 已在 LayaAir1.8.16 和 LayaAir2.13.5 完成了 HarmonyOS NEXT 系统的适配和发布。如今LayaAir3.2.0 版本完成对 HarmonyOS NEXT 的适配,这意味着 LayaAir 引擎全系列版本现已全面支持 HarmonyOS NEXT 系统。
https://img-blog.csdnimg.cn/img_convert/e0b957a1ad58eedd9b017c8eb7e732fd.png
(LayaAir3-IDE的项目构建发布界面截图)
对开发者而言,这一支持使他们可以或许更加轻松地将游戏或应用基于 LayaAir 引擎发布到 HarmonyOS NEXT 系统。该功能不仅简化了发布流程,淘汰了开发者的工作量,还为产物带来了更多的市场机会。
支持步伐蓝图
LayaAir3.2 新增对步伐蓝图的支持,为开发者提供了一种更加直观、高效的开发方式,极大地提拔了开发流程的可视化和易用性。步伐蓝图作为一种图形化编程工具,允许开发者通过拖拽引擎API和连接线来实现逻辑功能,代替了传统的代码编写。这不仅低落了编程门槛,让没有深厚编程配景的开发者也能加入到项目的开发中,还显著提拔了团队协作的服从,由于步伐蓝图可以或许让开发流程更具可视性和易明白性,便于各成员之间快速沟通和调整。
https://img-blog.csdnimg.cn/img_convert/3d05bae36fe868904dd40bf35f145613.gif(步伐蓝图交互动图)
在游戏开发中,蓝图可以或许快速实现复杂的交互逻辑和视觉效果,这对于快速迭代和原型设计尤为紧张。LayaAir3.2 对步伐蓝图的支持,低落了开发复杂性,让开发者可以或许快速构建、测试和调整游戏逻辑,同时淘汰了编码错误的大概性。使得开发者可以在开发早期快速验证创意和游戏机制,从而淘汰了开发风险和成本。同时,蓝图的可扩展性和可重用性也大大增强了项目的灵活性。
https://img-blog.csdnimg.cn/img_convert/670e133809ce0e975430ca1f7b78242e.png(点击检察高清大图)
平台发布的优化更新
在构建发布的配置项上,3.2正式版新增支持了远程主包的设置,在小游戏平台这种包体受限的环境下,对于大型项目,主包中可以仅保留代码部门,所有的资源都通过远程举行加载使用。
https://img-blog.csdnimg.cn/img_convert/9ab948d26558e374154b7f0b137e75cf.png
(远程主包设置界面截图)
微信小游戏平台方面,新增适配了引擎wasm库的使用。除此之外,还对使用微信小游戏缓存时,面对大量文件情况时存在的性能问题举行了优化。
支付宝小游戏的发布中的转es5功能,从3.2开始改为IDE内置,不再使用支付宝的转换,避免大文件被支付宝开发工具忽略的问题。
在客户端发布的方面,Windows发布的exe支持自界说窗口标题,并增加了调试日记窗口。安装包的进入服从也举行了优化,收缩了初始化黑屏的时间。
最后,我们将构建使命界面从对话框改为面板,使用起来更加灵活。
其它功能新增与优化
除了以上的紧张更新外,beta.1之后还举行了大量其它的功能优化和新增。
01
新增支持包管理器
在之前的版本,资源市肆的资源包可以通过资源市肆网页来打开并导入,但导入到IDE后,插件或资源会分散在各处,并没有一个本地管理的同一入口。
从3.2正式版开始,不仅可以将购买的市肆资源在IDE内导入,还可以对本地插件举行同一安装和管理,通过包管理器安装的本地的插件,包会集中到“packages”目录下,使得管理更加便捷。
https://img-blog.csdnimg.cn/img_convert/2129e727dccedf836e2ed41d9b854357.png
(包管理器界面截图)
留意:如上图所示,只有在安装包中存在package.json并配置好相干的字段信息,才支持通过包管理器导入和管理。
02
新增设置启动脚本
LayaAir3.0开始,我们取消了固定的Main入口脚本,入口改为基于启动场景上挂载的自界说组件脚本或UI运行时。
为了让开发者更灵活的控制游戏启动入口,3.2.0正式版开始,增加了启动脚本的设置,允许开发者自界说设置自己的游戏启动入口,用启动脚本来替换启动场景,自行决定场景启动前要处置惩罚的逻辑,以及打开场景的时机。
https://img-blog.csdnimg.cn/img_convert/8e99fb90b79549f08bb0815e79e3754d.jpeg
(设置启动脚本的界面截图)
留意:这个脚本必要导出一个名为main的函数。引擎初始化后将直接调用这个函数,不再打开默认场景,由开发者在入口函数中自行决定打开某个场景。
https://img-blog.csdnimg.cn/img_convert/f30ffd2cc00f7ed292319fa8ace50d41.jpeg
(入口函数示例截图)
03
新增支持场景钩子
3.2.0正式版中还新增支持了场景钩子,用于实现对场景新建对象、载入、生存等特定流程里插入自界说的逻辑。比方,如果希望所有新建的UI节点,轴心都初始化为中心点(0.5,0.5),可以写这样一个插件:
@IEditorEnv.regSceneHook()
export class TestSceneHook implements IEditorEnv.ISceneHook {
//载入场景后调用
onLoadScene() {
}
//保存场景后调用
onSaveScene(scene: IEditorEnv.IGameScene, data: any) {
}
//新建节点对象后调用
onCreateNode(scene: IEditorEnv.IGameScene, node: Laya.Node) {
if (node instanceof Laya.Sprite)
node.anchorX = node.anchorY = 0.5;//初始化锚点
}
//场景中创建组件后调用
onCreateComponent(scene: IEditorEnv.IGameScene, comp: Laya.Component) {
}
}04
新增预设纹理范例
LayaAir3以前版本的IDE只支持2D编辑,所以默认的纹理都是2D纹理。
但是,LayaAir3支持3D和2D两种编辑模式,而3D与2D纹理范例又不相同,IDE并不知道导入时的纹理是用于3D还是2D,所以默认值为3D使用的纹理,只有使用了LayaAir专属的UI组件命名规则才会被辨认为2D纹理。
这就导致了没有使用UI组件命名规则的旧引擎使用者,在使用LayaAir3版本IDE时的误解:在旧版本引擎中显示正常的纹理为什么就在LayaAir3里显示非常了?
因此,3.2.0允许预先设置导入时的纹理范例,如果开发者的项目使用2D纹理的频率更高,可以在“项目设置->编辑->预设值->纹理范例”中,将纹理导入的“默认值”改为“精灵纹理”范例。并且,我们已调整了3.2正式版的2D空项目模板,如果是选择创建2D项目,则默认就设置导入的纹理范例为精灵纹理。
https://img-blog.csdnimg.cn/img_convert/d0a40a9f2648af949cca0acfbf5f78b1.png
(更改纹理范例的界面)
如果是3D项目,只是会用到2D的UI纹理,我们不发起对导入时的默认纹理范例做出修改。而是必要针对2D纹理,采用UI命名规则,详细规则可以参照官方文档。
05
不再支持Windows8.1以下系统
为保障IDE的稳定性以及功能一致性,3.2开始底层采用新版本Electron,该版本的Chromium不再对Windows 7 / 8 / 8.1举行支持。因此,Windows8.1及以下系统版本的开发者必要升级系统,大概必要停顿在LayaAir3.2以下的版本。
06
WebGPU的优化与新增
3.2.0-bata.1开始支持了WebGPU,我们在后续版本不仅修复了若干WebGPU模式下的BUG,也做了许多优化工作。比方,优化了WebGPU渲染管线缓存机制、新增了WebGPU对贴图举行Alpha预乘的渲染流程、新增了WebGPU对2D Spine动画的支持能力等。
07
Spine的优化
除BUG修复外,beta.1之后的版本,仍然对Spine不断举行优化。
首先,废弃了节点方式的Spine小部件,改为使用Spine骨骼动画组件的方式来使用Spine。
然后支持直接从资源面板拖入Spine资源到层级或场景即可自动创建Spine渲染节点和添加Spine动画组件。
还增加了Spine节点烧毁检测,避免因异步加载已烧毁的节点而引起报错等优化,使得Spine更健壮和易用。
尽管使用方式有所改变,但我们引擎和IDE均做了兼容,3.2以下版本升级上来的时间,IDE会将原节点自动改变为组件的使用方式。
08
其它
[*]
[*]文本增加了删除线功能
[*]添加引擎组件后,会自动引用对应的引擎库,避免因没有勾选引擎库而导致运行报错
[*]脚本集功能新增支持精确隔离差别脚本集的代码。开发时,差别的脚本集之间的代码可以直接import,IDE在编译时会自动将这些import转化为间接引用,达到分包的目的。
[*]脚本集支持可以选择是否在主脚本集之前加载
[*]提拔了引擎运算性能,尤其是在iOS环境下更为明显
[*]对于同时可以屏幕触碰和鼠标操作的笔记本,新增支持两种操作同时见效
[*]隐藏粒子爆发器不支持的烧毁数组功能,避免误用导致报错
[*]废弃Sprite的drawToTexture接口增加drawToRenderTexture2D接口
[*]2D时间轴动画面板上,新增支持布尔值属性的修改
[*]2D和3D动画状态机新增支持在涉及多个条件时在AND和OR逻辑之间举行切换
[*]3D节点修改属性面板中的层时,新增可以改变全部子节点层属性值的可选项
[*]videoTexture新增useFrame与updateFrame属性,用于优化视频播放,办理Android微信的自带浏览器视频播放卡顿问题
[*]同一个节点新增支持添加多个相同的组件
[*]优化了Stat状态栏数据获取功能,可在systemTimer中获取Stat数据
[*]支持增加新的资源范例,开发者可以通过插件为IDE增加新的可辨认的资源范例。
[*]资源管理不再为名称为node_modules文件夹里的所有文件,以及以“~”末端的文件或文件夹天生meta文件。
[*]如果开发者选择了使用引擎模块中的wasm库,比方物理和寻路,对不支持wasm的游戏平台,自动切换为对应的纯js库。
[*]在天生源代码映射上增加了是否包含源代码功能。
写在最后
LayaAir3.1分支版本我们维护了十个多月,与此同时,我们也在不断开发与更新3.2的新功能。
本次LayaAir3.2.0正式版的推出,标记着3.2引擎分支的新功能开发阶段已结束,从十月起进入3.2的日常BUG维护与优化更新阶段,以及LayaAir3.3 beta版本大量新特性功能的推出与持续开发阶段。
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页:
[1]