Laya小游戏优化总结

Laya小游戏优化总结

在使用Laya引擎开发项目的时候根据官网的教程总结的一些优化经验。(持续更新

  1. 文本
    静态显示文本Text组件的性能是最好的,所以,在项目开发时,能用Text尽可能要用Text组件。当Text组件不满足的时候再用Label。
    this.text.text=“原text文本”;
    this.text.changeText(“替换的text文本”);

    对于无需改变内容的静态文本,当文本组件节点较多时,我们可以开启cacheAs,设置normal可以优化节点数,设置bitmap可以优化DrawCall数。

    而当文本内容需要改变时,哪怕只改变一个字符,如果FillText可以满足需求的话,那尽可能优先使用FillText文本组件。FillText不能满足时,其次考虑位图文本组件是否可以满足,最后再考虑静态文本组件。

    注意: 在2D的UI布局时,如果开发者将文本与其它UI节点混合排列,那么必然会打断图集的合并渲染,增加DrawCall数量,产生不必要的性能开销。所以,有两个方案来优化
    (1)LayaAir IDE编辑布局时,将所有文本组件在节点中顺序排列,不要与其它UI组件穿插。
    (2)LayaAir IDE中的组件中有一个drawCallOptimize属性,我们为所有文本的父级节点drawCallOptimize属性设置true值。当这样设置之后,引擎会自动启用文本合并优化,将所有的文本提取到最上层,而开发者无需再刻意调整图集资源和文本的排序,即可实现drawCall自动优化的目标,而且优化的更加干脆彻底。(需要提醒的是,drawCallOptimize优化方案由于会自动将文本提升显示层级,不适用于必须要将文本半遮挡的特殊需求。当然,绝大多数情况下文本是要处于全文显示的,如果有全隐藏的情况,可以直接设置隐藏属性。所以,建议开发者开启该优化方案。)

2、图片
对复杂静态内容(父物体设置即可)设置cacheAs(一是减少节点遍历和顶点计算;二是减少drawCall),能大量减少DrawCall,使用好cacheAs是游戏优化的关键。

尽量保证同图集的图片渲染顺序是挨着的,如果不同图集交叉渲染,会增加DrawCall数量。

尽量保证同一个面板中的所有资源用一个图集,这样能减少提交批次。

注意:对象非常简单,比如一个字或者一个图片,设置cacheAs=”bitmap”不但不提高性能,反而会损失性能。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

明早叫我起床

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值