Version: 2019.4
粒子系统
内置粒子系统

选择粒子系统解决方案

为了在创作粒子系统时提供灵活性,Unity 提供两种解决方案来供您选择。如果项目的目标平台支持计算着色器,Unity 允许同时使用这两种解决方案。这两种粒子系统解决方案为:

  • 内置粒子系统:该解决方案允许通过 C# 脚本对系统及其包含的粒子进行完全的读/写访问。您可以使用粒子系统 API 为粒子系统创建自定义行为。
  • Visual Effect Graph:该解决方案可以在 GPU 上运行以模拟数百万个粒子并创建大规模的视觉效果。Visual Effect Graph 还包含一个视觉图形编辑器,可帮助您创作可高度定制的视觉效果。

下表显示了两种粒子系统解决方案的概要对比情况。有关任一解决方案的更多信息,请参阅内置粒子系统Visual Effect Graph

功能 内置粒子系统 Visual Effect Graph
渲染管线兼容性 内置渲染管线、通用渲染管线、高清渲染管线 通用渲染管线、高清渲染管线
可实现的粒子数 数千 数百万
粒子系统创作 简单模块创作过程,使用 Inspector 中的粒子系统 (Particle System) 组件。每个模块代表粒子的一种预定义行为。 可高度定制的创作过程,使用图形视图。
物理 粒子可与 Unity 的基础物理系统进行交互。 粒子可与 Visual Effect Graph 中定义的特定元素进行交互。例如,粒子可与深度缓冲区进行交互。
脚本交互 可以使用 C# 脚本在运行时对粒子系统进行全面自定义。可以对系统中的每个粒子进行读取和写入操作,还可以响应碰撞事件。粒子系统组件还提供播放控制 API。这意味着可以使用脚本来播放和暂停粒子效果,并使用自定义步长来模拟粒子效果。 可以公开图形属性,并通过 C# 脚本访问这些属性,从而对效果实例进行自定义。还可以使用事件接口来发送自定义事件以及可由图形处理的附加数据。视觉效果 (Visual Effect) 组件还提供播放控制 API。这意味着可以使用脚本来播放和暂停粒子效果,并使用自定义步长来模拟粒子效果。
帧缓冲区 在高清渲染管线中,提供对颜色和深度缓冲区的访问权。例如,可以对颜色缓冲区进行采样并使用结果来设置粒子颜色,也可以使用深度缓冲区来模拟碰撞。
粒子系统
内置粒子系统