当前位置: 首页 > article >正文

Unity 粒子系统参数说明

一、Particle System

在这里插入图片描述

1. Duration(持续时间)

  • 粒子系统运行一次所需的时间。它决定粒子系统持续播放的时间长度。

2. Looping(循环播放)

  • 如果启用,粒子系统将在播放完一次后自动重新开始播放,直到你停止它。这通常用于持续的效果,比如烟雾、火焰。

3. Prewarm(预热)

  • Looping 启用时,此选项可以让粒子系统在播放前提前模拟一个周期,给人一种粒子效果已经在运行一段时间的感觉,比如风吹树叶时,叶子已经在空中飞舞。

4. Start Delay(开始延迟)

  • 粒子系统开始播放前的等待时间。可以用于创建复杂效果,或者与其他动画同步。

5. Start Lifetime(初始生命周期)

  • 控制粒子的存活时间。生命周期结束后,粒子会被销毁。不同的粒子可以有不同的生命周期,以达到多样化的效果。

6. Start Speed(初始速度)

  • 粒子出生时的速度。通过调整速度,可以模拟不同效果,比如快速飞舞的火花或者缓缓飘落的雪花。

7. 3D Start Size(三维初始尺寸)

  • 粒子的初始尺寸可以在 3D 空间内分别设置 x、y、z 轴的大小。不同轴上的尺寸可以用来生成扁平、细长、宽大的粒子。

8. Start Size(初始尺寸)

  • 粒子的整体初始尺寸。如果没有启用 3D Start Size,则使用该参数。

9. 3D Start Rotation(三维初始旋转)

  • 粒子在生成时在 3D 空间内的旋转角度。可以给粒子不同方向的初始角度。

10. Start Rotation(初始旋转)

  • 控制粒子在生成时的旋转角度。如果没有启用 3D Start Rotation,则使用该参数。

11. Flip Rotation(翻转旋转)

  • 控制粒子旋转时的翻转,通常用于创建对称效果。

12. Start Color(初始颜色)

  • 粒子在生成时的颜色,可以用于模拟各种效果,例如火焰从橙色渐变到灰色。

13. Gravity Modifier(重力修正)

  • 控制粒子受重力影响的程度。用于模拟现实中重力对物体的影响,比如水滴下落。

14. Simulation Space(模拟空间)

  • 确定粒子系统是相对于世界空间(World)还是本地空间(Local)模拟。Local 模拟让粒子跟随粒子系统的移动,而 World 则让粒子独立于粒子系统。

15. Simulation Speed(模拟速度)

  • 控制粒子系统的播放速度。可以用来快速生成或减慢粒子的运动速度。

16. Delta Time(时间增量)

  • 控制粒子系统的时间流动。通常与 Simulation Speed 配合调整。

17. Scaling Mode(缩放模式)

  • 决定粒子系统是否随 GameObject 的缩放变化。例如,在 Scaled 模式下,缩放粒子系统的父对象时,粒子尺寸也会相应变化。

18. Play On Awake(在激活时播放)

  • 如果启用,粒子系统在被激活时会自动开始播放。

19. Emitter Velocity Mode(发射器速度模式)

  • 控制粒子生成时是否受到发射器移动速度的影响。用于模拟烟雾从快速移动的车辆后面流动的效果。

20. Max Particles(最大粒子数量)

  • 限制粒子系统中同时存在的粒子数量。可以用来控制性能,防止生成过多的粒子。

21. Rigidbody(刚体)

  • 如果粒子系统与物理引擎交互,可以为粒子系统添加刚体组件。

22. Auto Random Seed(自动随机种子)

  • 自动为粒子系统生成随机种子,使每次播放的效果略有不同,增添自然感。

23. Stop Action(停止动作)

  • 粒子系统停止播放时执行的操作,例如销毁粒子系统或者禁用 GameObject。

24. Culling Mode(剔除模式)

  • 控制粒子系统是否在摄像机看不到时自动停止模拟,以节省性能。

25. Ring Buffer Mode(环形缓冲区模式)

  • 控制粒子系统如何循环复用粒子。用于创建无限循环的效果。

在这里插入图片描述

二、Emission

1. Emission(发射)

  • 这个模块控制粒子从发射器中生成的方式,包含粒子的生成速率和方式。

2. Rate over Time(时间发射率)

  • 控制粒子系统每秒生成的粒子数量。数值越高,粒子生成越快。例如,设置为 10,则每秒会生成 10 个粒子。
  • 适用于持续性粒子效果,比如烟雾或火焰,通常希望粒子能以固定速率不断生成。

3. Rate over Distance(距离发射率)

  • 控制粒子系统每移动一定距离生成的粒子数量。例如,将其设置为 5,则粒子系统每移动 1 个单位距离,就会生成 5 个粒子。
  • 适用于模拟移动效果,比如一个快速移动的火箭尾焰,火箭移动越快,尾焰越多。

4. Bursts(爆发)

  • 设置粒子系统在特定时间点一次性生成大量粒子的数量。你可以指定多个爆发事件,每个事件在指定时间生成指定数量的粒子。
  • 通常用于模拟瞬时发生的效果,比如爆炸、火花四射等。
Bursts 的参数
  • Time(时间):指定爆发事件发生的时间点,以秒为单位。
  • Count(数量):每次爆发生成的粒子数量。可以设置一个范围,例如 10-20,这样每次爆发时粒子的数量会在 10 到 20 之间随机变化。
  • Cycles(循环次数):指定该爆发事件要重复多少次。
  • Interval(间隔):如果 Cycles 大于 1,Interval 指定每次爆发的时间间隔。
  • Probability(概率):控制该爆发事件发生的概率。范围是 0 到 1,例如设置为 0.5,表示该爆发事件有 50% 的概率发生。

三、Shape

在这里插入图片描述

1. Shape(形状)

  • 该参数决定粒子从何种形状的区域发射出来。Unity 提供了多种形状选项,比如球形、圆锥形、立方体等,每种形状都有不同的参数用于进一步调整发射效果。

常见的形状类型及参数

Cone(圆锥)
  • 粒子从一个圆锥形区域发射,适用于模拟火焰、喷泉等效果。主要参数如下:
    • Angle(角度):控制圆锥的发射角度。较小的角度会让粒子从更窄的范围发射,较大的角度则会扩散得更广。
    • Radius(半径):圆锥底部的半径,决定粒子发射区域的大小。
    • Radius Thickness(半径厚度):控制粒子是从圆锥的边缘还是从内部发射。范围从 0 到 1,0 表示粒子只从边缘发射,1 表示粒子从整个半径范围发射。
    • Arc(弧度):圆锥形的弧度范围,0 到 360 度。可以用于生成半圆、扇形发射效果。
    • Emit from(发射位置):控制粒子是从圆锥的底部还是整个圆锥区域发射。例如,可以选择从圆锥的底部、边缘或体积内发射。
Sphere(球体)
  • 粒子从一个球形区域发射。常用于模拟烟花、爆炸、气泡等效果。
    • Radius(半径):球形的半径。
    • Emit from(发射位置):可以选择粒子从球体表面或球体内部发射。
Box(盒子)
  • 粒子从一个立方体区域发射,适用于模拟瀑布、雨等效果。
    • Scale(缩放):控制立方体的大小。
    • Emit from(发射位置):选择粒子从盒子的表面、边缘或内部发射。
Circle(圆形)
  • 粒子从一个圆形区域发射,适用于模拟喷泉、光环等效果。
    • Radius(半径):圆形的半径。
    • Arc(弧度):圆形的弧度范围,0 到 360 度。
    • Emit from(发射位置):可以选择从圆的边缘、内部发射。

2. Texture(纹理)

  • 可以使用一张 2D 纹理来定义粒子的发射形状。例如,用一张图片来定义发射区域,粒子会根据纹理图案进行分布和发射。
纹理参数
  • Position(位置):控制纹理在发射器上的位置偏移。
  • Rotation(旋转):控制纹理的旋转角度,影响粒子发射的方向。
  • Scale(缩放):调整纹理的大小,影响粒子的发射范围。

3. Align To Direction(与方向对齐)

  • 粒子会根据它们的发射方向对齐,适用于模拟火花、射线等具有方向性的粒子效果。

4. Randomize Direction(随机化方向)

  • 给粒子的发射方向添加随机性,可以模拟不规则的发射效果,例如烟花散开的轨迹。

5. Spherize Direction(球形化方向)

  • 将粒子的发射方向球形化,使粒子朝向发射器的外部。这在球形发射器中非常有用,可以创建爆炸或向外扩散的效果。

6. Randomize Position(随机化位置)

  • 在发射形状内随机化粒子的初始位置,使得粒子效果更加自然和多样化。

四、Renderer

在这里插入图片描述
这些参数属于 Unity 粒子系统中 “Renderer” 模块的设置,用于控制粒子的外观和渲染方式,包括粒子的对齐、大小、材质、排序等。下面是这些参数的详细解释:

1. Render Mode(渲染模式)

  • 控制粒子的渲染方式,有多种选项:
    • Billboard:粒子始终面向摄像机,无论摄像机的位置如何。常用于烟雾、火焰等效果。
    • Stretched Billboard:粒子以拉伸的方式呈现,通常用于尾迹效果,如火箭尾焰、子弹轨迹等。你可以调整拉伸参数使效果更合适。
    • Horizontal Billboard:粒子始终与地面平行,适用于地面雾气、水面波纹等效果。
    • Vertical Billboard:粒子始终垂直于地面,适用于一些特殊的视觉效果。
    • Mesh:粒子呈现为 3D 模型(网格),可以选择自定义的 Mesh(网格)作为粒子外形。

2. Normal Direction(法线方向)

  • 控制粒子的法线方向,影响粒子的光照效果。通常用于调整粒子的光照和反射。正值让法线向外,负值让法线向内。

3. Material(材质)

  • 用于为粒子指定材质(Material),控制粒子的外观。材质决定了粒子的颜色、透明度、纹理等特性。你可以选择自定义材质以实现更复杂的视觉效果。

4. Sort Mode(排序模式)

  • 决定粒子的渲染顺序,防止粒子之间的视觉冲突:
    • None:不对粒子进行排序,按创建顺序进行渲染。
    • By Distance:根据粒子到摄像机的距离进行排序,通常用于透明粒子,以正确显示重叠效果。
    • Oldest in Front:最早生成的粒子在最前面。
    • Youngest in Front:最近生成的粒子在最前面。

5. Sorting Fudge(排序偏移)

  • 一个微调参数,用于在相同深度的多个粒子系统之间设置渲染顺序。值越大,该粒子系统越靠前显示。

6. Min Particle Size(最小粒子尺寸)

  • 控制粒子在屏幕上的最小显示尺寸,防止粒子因为距离过远而变得太小或消失。范围是 0 到 1,1 表示粒子始终保持原始尺寸。

7. Max Particle Size(最大粒子尺寸)

  • 控制粒子在屏幕上的最大显示尺寸。防止粒子因为距离过近而变得太大。

8. Render Alignment(渲染对齐)

  • 决定粒子在世界空间或局部空间的对齐方式:
    • View:粒子始终面向摄像机。
    • World:粒子按世界坐标系对齐,受世界空间的影响。
    • Local:粒子按本地坐标系对齐,适用于固定在特定物体上的效果。

9. Flip(翻转)

  • 随机翻转粒子在 X、Y 轴的显示方向,通常用于增加视觉效果的多样性。

10. Pivot(枢轴)

  • 控制粒子的旋转中心点,可以调整粒子图形的偏移。

11. Masking(遮罩)

  • 控制粒子的遮罩方式,影响粒子与其他对象之间的可见性。例如,用于遮挡粒子穿过物体的效果。

12. Custom Vertex Streams(自定义顶点流)

  • 设置自定义数据流,以便在着色器中使用。例如,用于实现更高级的粒子效果,如动态颜色变化。

13. Cast Shadows(投射阴影)

  • 决定粒子是否投射阴影,常用于粒子与环境的交互。
    • On:粒子投射阴影。
    • Off:粒子不投射阴影。
    • Two-Sided:双面投射阴影。

14. Receive Shadows(接受阴影)

  • 控制粒子是否接受其他对象的阴影,影响粒子的受光效果。

15. Motion Vectors(运动矢量)

  • 控制粒子的运动矢量,用于实现运动模糊效果。

16. Sorting Layer ID(排序层 ID)Order in Layer(层内顺序)

  • 用于指定粒子系统的渲染层和层内的渲染顺序。用于确保粒子效果与其他对象的正确显示顺序。

17. Light Probes(光照探针)

  • 控制粒子系统是否使用场景中的光照探针,影响粒子的光照效果。

18. Reflection Probes(反射探针)

  • 控制粒子系统是否使用场景中的反射探针,影响粒子的反射效果。

通过调整这些参数,你可以自定义粒子的渲染方式,实现不同的视觉效果,例如烟雾、火焰、爆炸、闪电等。


http://www.kler.cn/a/306637.html

相关文章:

  • AI 写作(五)核心技术之文本摘要:分类与应用(5/10)
  • 【go从零单排】Timer、Epoch 时间函数
  • 【CSS】“flex: 1“有什么用?
  • STM32 GPIO 配置
  • NCC前端调用查询弹框
  • WPF中MVVM工具包 CommunityToolkit.Mvvm
  • cross-plateform 跨平台应用程序-09-phonegap/Apache Cordova 介绍
  • 0911(绘制事件,qt中的网络通信)
  • Introduction to LLMs in Python
  • 细说STM32单片机使用通用定时器生成固定占空比和可变占空比PWM波的方法
  • leetcode 230.二叉搜索树中第k小的元素
  • VMware Fusion虚拟机Mac版 安装Ubuntu操作系统教程
  • YOLOv8目标检测——迁移学习
  • 55页可编辑PPT | 集团制造企业数字化转型顶层设计方案
  • k8s中的认证授权
  • LeetCode双周赛139
  • 鸿蒙开发入门day19-使用NDK接口构建UI(一)
  • 中间件之RocketMQ
  • react js 使用 useEffect 钩子
  • C++函数在库中的地址
  • 【机器学习随笔】概率论与实际问题的对应
  • PHP技术深度探索:构建高效安全的Web应用实践
  • ChatGPT提示词-中文版(awesome-chatgpt-prompts中文版)
  • java重点学习-JVM组成
  • 多张GPU卡
  • 【C++】c++ 11