网易首页 > 网易号 > 正文 申请入驻

Infinity 粒子系统新增 InfinityBakeTool:提升低端设备上的性能表现

0
分享至

InfinityBakeTool是一款专为低端平台设计的Infinity 粒子系统辅助工具。通过空间换时间的策略,烘培一段时间的特效效果,将繁重的模拟运算转移至离线阶段。在 Runtime 时跳过粒子系统的模拟时间,显著提升粒子系统的性能。

InfinityBakeTool 特性

粒子系统是游戏开发中不可或缺的核心技术,尤其在营造复杂绚丽的场景时,往往需要数百甚至数千个粒子系统协同工作。这些系统对性能要求极高,而移动端开发者受硬件限制,常采用烘焙(Baking)策略来优化运行时表现。

无论是将特效直接烘培成 Texture,还是通过 VAT(Vertex Animation Texture)方案进行烘培,都需要烘培得到一张或多张 Texture。这虽然能够解决 CPU 负担过重的问题,但烘焙后的 Texture 往往很大,尤其是前者。VAT 方案相比前者 Texture 确实会大大减小,但需要额外对 Shader 做定制化处理。而这两种方案烘培得到不同的 Texture 就意味着不同粒子系统之间是无法进行合批的。

相比传统的烘培方式,InfinityBakeTool 采用了不同的策略:

1.仅烘焙 Instance 渲染数据,以文件形式存储。根据不同粒子系统的模块参数决定烘培哪些渲染数据,对于渲染 Quad,渲染 Mesh 一视同仁,用尽可能小的空间换取珍贵的运行时间。

2.额外烘焙影响渲染的参数,使烘焙后的粒子系统仍然支持跨粒子系统的合批渲染。不光是原 InfinityParticleSystem 之间也能够进行合批, BakedInfinityParticleSystem 之间也能够进行合批。

InfinityBakeTool 如何进行工作

1.能够对多粒子系统形成的特效组合进行一键烘焙,形成 prefab

2.生成的 prefab 保留原特效的层级结构,原特效中的每一个粒子系统烘培生成一个 bakedinfinity 类型的 asset

3.BakedInfinityParticleSystem 能够在 Runtime 下运行,提供了 Play(),Pause(),Stop(),Simulate()等常用 API

Infinity 性能对 Demo

随着 Infinity 粒子系统 1.3.0 版本的发布,我们同步开放了 Demo 工程,方便开发者对比 Built-in 粒子系统,Infinity 粒子系统,和 BakedInfinity 粒子系统之间的性能差异。

我们构造了六种不同类型的测试场景,代表粒子系统使用中常见的几种类型:

1.TestType:粒子系统种类 100+

2.Test200/500/1000:单一粒子系统粒子数量少,粒子系统大量重复

3.TestMore:多个粒子系统粒子数量负载不均衡,少则十数,多则上万

4.TestMesh:渲染 Mesh 的粒子系统

5.TestSingle:单一粒子系统粒子数量大

6.TestPool:测试池化场景,特效批量生成,批量死亡

Demo 下载:

git clone https://cnb.cool/tuanjie/Infinity_Benchmark_Suite.git

InfinityBakeTool 带来的性能收益
  • BakedInfinityParticleSystem 在 Runtime 下能够跳过模拟过程,仅需要执行 Transform 更新和渲染相关逻辑,能够大大提升 CPU 耗时降低主线程开销;

  • 烘焙后的粒子系统仍然使用 GPU Instancing 渲染支持合批,相比 Built-in 粒子系统渲染线程开销仍有很大优势;

  • 在内存开销方面,虽然烘焙过程需要额外存储多帧的渲染数据,需要占用更多的内存,但 Runtime 下省掉了运行时模拟数据占用内存的开销,除此之外,由于多粒子系统共享参数和渲染数据,所以部分场景在烘焙后内存开销反而变低;

InfinityBakeTool 在 Test200/500/1000 这种单一粒子系统粒子数量少,粒子系统大量重复的场景下优势十分显著,下面以 Test1000 为例进行展示,该场景中有 1000 个粒子系统持续播放,场景内粒子总数达 1.5w。从 Profiler 中可以直观地看到烘培后的 Infinity 粒子系统带来的性能优势。


Test1000 场景效果图


Built-in 粒子系统的 Test1000


BakedInfinity 粒子系统的 Test1000

我们在不同机型不同芯片上进行了测试,下图表中展示的是纯主线程耗时,和主线程+渲染线程耗时,所有测试均取 1000 帧的平均值,在锁 30fps 的状态下进行测试的,测试结果如下,可以看到,烘焙后的场景在 CPU 耗时方面基本能够达到 50% 以上的提升。



Android / IOS 上的性能测试结果

这个场景在内存占用方面也没有增加额外开销,反而小有优势。



Android / IOS 上的性能测试结果

在 DrawCall 方面,烘焙后的粒子系统仍然能够合批渲染,这个场景在 DrawCall 方面也有极大提升,能够从几百数量级直接降低到个位数。



Android / IOS 上的性能测试结果

烘焙方案对于小游戏项目有明显优势,Test500 场景在小游戏上的测试结果如下,可以看到烘焙方案能够有效降低 CPU 占用率和功耗开销,内存开销有胜有负。



微信小游戏上的性能测试结果


微信小游戏上的性能测试结果

但对于粒子数量很大的特效进行烘焙,可能会占用过多的内存,例如 TestMore 和 TestSingle 的场景,开发者使用时应该酌情考量,InfinityBakeTool 界面在每次烘焙结束后会显示当前设置下渲染数据大小的估计值,可以作为参考供开发者调整参数,使烘焙后的数据大小降低到可接受的状态。

快速上手

您可以通过以下步骤对粒子系统进行烘焙:

1.在 Tool 工具栏中打开 InfinityParticleSystem Bake Tool

2.配置相应参数:


基础设置:

  • 起始时间 指定从何时开始烘焙粒子系统

  • 模拟总时间 从起始时间开始至烘焙结束的总时间

  • 每秒帧数 每秒烘焙输出的帧数,总帧数将在下方显示

  • Save Path 用于设置烘焙生成结果的输出保存位置,默认保存至项目的Assets/目录下。

  • GameObject 要进行烘焙的目标系统对象

  • Prefab 要进行烘焙的目标预制体

3.点击烘焙按钮,烘焙结果将保存在设置的路径中:


4.烘焙能够得到以“Name_Baked”命名的文件夹,包含一个 prefab 和一个 data 文件夹

  • prefab能够拖入场景中直接使用

  • data文件夹内包含若干.bakedinfinity asset文件,每一个asset文件代表原特效中可渲染的Infinity粒子系统

InfinityBakeTool 的限制

1.BakedInfinityParticleSystem 只支持 Runtime

2.烘焙过程中会移除所有 GameObject 为隐藏状态或不进行实际渲染的粒子系统

3.不支持Main Module - Auto Random Seed,烘培过程只能支持确定的 Random Seed

4.只支持在 Local 空间中进行模拟的粒子系统,不支持在 World 空间(或 Custom 空间)中进行模拟的粒子系统,涉及到的模块包括:

  • Main Module - SimulationSpace

  • Velocity over Lifetime Module - Space

  • Limit Velocity over Lifetime Module - Space

  • Force Over Lifetime Module - Space


Known issues

1.有限支持Main Module - Gravity Modifer,若该值不为 0 并且该粒子系统及其父级粒子系统有旋转时,渲染效果不正常

2.有限支持Sub Emitter Module 模块

  • 对于 sub 粒子系统的 Transform,Bake 过程会将其归一化,若原 Transform 中的 Rotation 不等于 0,BakedInfinityParticleSystem 可能会出现错误旋转

  • 对于 Trigger 或 Collision 触发 Sub 生成粒子的效果支持受限

  • 如果 father 粒子系统启用 Looping,而 Sub 粒子系统不启用,烘焙前 Sub 粒子系统使用 father 的设置,烘焙后由于丢失父子信息,使用自己的设置

3.有限支持涉及与场景中其他 GameObject 产生交互的模块,包括:

  • External Force Module

  • Collision Module

  • Triggers Module

4.暂不支持Trails Module 的烘焙

5.暂不支持Lights Module 的烘焙,无法生成动态光源

Unity 官方微信

第一时间了解Unity引擎动向,学习进阶开发技能

每一个“点赞”、“在看”,都是我们前进的动力


特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
华为可能没有料到,苹果官宣iPhone Duo强制适配,网友:基本上尘埃落定了

华为可能没有料到,苹果官宣iPhone Duo强制适配,网友:基本上尘埃落定了

春雨说科技
2026-10-09 17:07:13
郑智:李昊为我们整个中国足球争了光,也为西海岸队争得荣誉

郑智:李昊为我们整个中国足球争了光,也为西海岸队争得荣誉

懂球帝
2026-10-10 21:23:31
遗产大戏终于收尾?小S具俊晔金宝山同框,张兰不到24小时连发3条,句句不提S家却刀刀见血

遗产大戏终于收尾?小S具俊晔金宝山同框,张兰不到24小时连发3条,句句不提S家却刀刀见血

秋风妃
2026-10-08 22:59:29
天津一公司男领导给女下属发送淫秽露骨照片,母亲上门讨说法,知情人:事发隔壁公司,女孩可能刚毕业,性格比较腼腆,后续有民警到场处理

天津一公司男领导给女下属发送淫秽露骨照片,母亲上门讨说法,知情人:事发隔壁公司,女孩可能刚毕业,性格比较腼腆,后续有民警到场处理

潇湘晨报
2026-10-10 16:49:10
历史性一刻!现场13258人见证:郑钦文刷爆5大纪录进决赛,赢麻了

历史性一刻!现场13258人见证:郑钦文刷爆5大纪录进决赛,赢麻了

大秦壁虎白话体育
2026-10-10 20:44:21
台当局双十活动,郑丽文缺席,宋楚瑜参加,韩国瑜让赖清德出丑

台当局双十活动,郑丽文缺席,宋楚瑜参加,韩国瑜让赖清德出丑

DS北风
2026-10-10 13:50:10
河北富商相亲发现小23岁对象酷似亡妻,DNA检测后傻眼:怎么可能

河北富商相亲发现小23岁对象酷似亡妻,DNA检测后傻眼:怎么可能

罪案洞察者
2025-07-09 11:51:52
美籍华人发文炮轰:中国引以为傲的扫码支付,真是最蠢的发明吗?

美籍华人发文炮轰:中国引以为傲的扫码支付,真是最蠢的发明吗?

南风的温柔
2026-10-09 19:10:45
一年暴涨一亿欧!皇马新援迪奥曼德身价飙升至1.2亿欧元

一年暴涨一亿欧!皇马新援迪奥曼德身价飙升至1.2亿欧元

星耀国际足坛
2026-10-10 22:41:34
上半场放水,下半场发力,上海89-74逆转四川,张镇麟填满数据栏

上半场放水,下半场发力,上海89-74逆转四川,张镇麟填满数据栏

萌兰聊个球
2026-10-10 21:44:26
地质学家:中国新疆,最大沙漠下方,出现了出乎意料的大型水源

地质学家:中国新疆,最大沙漠下方,出现了出乎意料的大型水源

云霄纪史观
2026-10-09 01:22:13
那些老外听不懂的中文梗!别说你看不懂哈!

那些老外听不懂的中文梗!别说你看不懂哈!

夜深爱杂谈
2026-10-10 20:36:06
别等失去了才后悔。 厦门小伙暗恋高一班主任多年,大学毕业后果断追娶回家,祝有情人终成眷属

别等失去了才后悔。 厦门小伙暗恋高一班主任多年,大学毕业后果断追娶回家,祝有情人终成眷属

捣蛋窝
2026-10-03 09:50:51
美国专家预判:如果台当局宣布“独立”,中国大陆将会动手解放?

美国专家预判:如果台当局宣布“独立”,中国大陆将会动手解放?

浮光惊掠影
2026-10-07 00:46:51
‍香港知名男星提迈巴赫,近400万港元,太太兴奋拍下提车过程

‍香港知名男星提迈巴赫,近400万港元,太太兴奋拍下提车过程

动物奇奇怪怪
2026-10-10 06:33:50
中共中央批准,开除连辑党籍

中共中央批准,开除连辑党籍

新京报
2026-10-09 18:02:07
创造历史!李昊炎巴萨U15首秀就破门,替补登场身披17号,中国加盟拉玛西亚第一人!

创造历史!李昊炎巴萨U15首秀就破门,替补登场身披17号,中国加盟拉玛西亚第一人!

绿茵舞着
2026-10-10 21:01:53
中国台湾东海岸没人提:离岸 5 公里水深破千米,300 万人守着什么?

中国台湾东海岸没人提:离岸 5 公里水深破千米,300 万人守着什么?

抽象派大师
2026-10-10 00:49:19
中国出现了一个很可怕的现象,就是父母在集体撤退,孩子在进攻

中国出现了一个很可怕的现象,就是父母在集体撤退,孩子在进攻

侃故事的阿庆
2026-10-06 00:17:09
《哪吒2》全球票房大涨,超越《泰坦尼克号》,再次进入全球前五

《哪吒2》全球票房大涨,超越《泰坦尼克号》,再次进入全球前五

影视高原说
2026-10-10 14:11:16
2026-10-11 00:28:49
Unity incentive-icons
Unity
Unity中国官方帐户
2520文章数 6737关注度
往期回顾 全部

科技要闻

上世纪成熟的踏板,为何今天还会断裂?

头条要闻

港媒:梅艳芳骨灰被盗三个月无线索 歌迷会公开求助

头条要闻

港媒:梅艳芳骨灰被盗三个月无线索 歌迷会公开求助

体育要闻

十年回首:湖人三榜眼的夏天,与NBA无关

娱乐要闻

宋佳一串三大满贯 争议随之而来

财经要闻

双汇因抗生素超标共被罚1.29亿元

汽车要闻

千匹马力+三把锁/顶配能浮水 银河战舰700限时焕新价16.98万起

态度原创

游戏
本地
艺术
数码
公开课

索尼直言今年卖不动了 美国8月游戏机销量创新低!

本地新闻

踏访沙县第一村,寻国民小吃本源

艺术要闻

385米!“火炬”要当日本第一高楼,胖墩墩长这样?

数码要闻

长城推出KING 1050W全模组钛金牌电源:10年质保,1799元

公开课

李玫瑾:为什么性格比能力更重要?

无障碍浏览 进入关怀版