Unity的粒子系统(二)

欢迎来到第二篇文章,我们继续看粒子系统剩下的选项.

3. Shape(形状模块)

顾名思义,该模块可以设置粒子发射器的形状,从而控制粒子的发射位置和发射方向.

Shape模块的默认设置

因为每种Shape下对应的Editor界面不太一致,因此我们分批次来说明.

3.1 Shape:Sphere(圆形)和Hemisphere(半圆)

这两种形状下的界面板基本一致,因此我们放到一起来说明.

Sphere和Hemisphere的编辑器界面

Sphere

Hemisphere

  • Radius: 球体半径的大小,单位是米.
  • Radius Thickness: 发射半径厚度.球体中发射粒子的壳的厚度,从最外层向里计算,值为0 ~ 1,当值为0时,只有最外层的球面发射粒子,当为1时,从圆心到球面的整个球体发射粒子,我们来看当值为0.5时的形状:
    Radius Thickness = 0.5

    可以看到从内部的球面到外部的球面形成了一个壳体,粒子从这个壳体的范围发射出来.
  • Arc:圆形发射器的有效弧度,一周是360°,我们把这个值设置为180°看下效果:
    Arc = 180°

    可以看到发射器的有效范围变为了180°的圆弧.
    该属性下还有其他的设置:
    • Mode: 粒子喷嘴(自己起的名字,可以理解为喷出粒子的位置)在有效范围内的移动方式.
      • Random: 喷嘴在壳内的有效位置随机出现并喷出粒子.
      • Loop: 喷嘴在壳内沿着一个圆的轨迹不停运动并喷射粒子.


        Loop Mode
      • Ping-Pong: 喷嘴按照乒乓的模式运动,可以理解为先顺时针运动一周后再逆时针返回,然后循环.


        Ping-Pong Mode
      • Burst Spread: 这个功能主要是配合 Emission 模块中的 Bursts 功能,如果设置了 Bursts ,那么设置这个模式的话可以使爆发的粒子均匀沿着壳面喷出.
        Burst Spread
    • Spread: 散射角度. 取值为0 ~ 1,含义为每隔多少度来发射粒子,间隔角度 = Arc * spread的值,比如Arc是360°, Spread设置为0.1, 那么每隔36°发射粒子,我还是用上面的例子,当设置了 Bursts 并设置为 Burst Spread Mode, 效果如下:
      Spread = 0.1

      其他模式下也是同样的意思,请大家自行测试.
    • Speed: 在 Loop Mode 和 Ping-Pong Mode 下出现的配置,表示喷嘴在圆形轨迹上的移动速度.
  • Texture: 纹理,在粒子系统形状表面贴上图片纹理,被影响的粒子会复制对应位置纹理的颜色.同时可以使用该属性配合下面几个属性来裁剪粒子发射区域.
  • Clip Channel: 裁剪通道,使用哪种通道来对上面设置的Texture进行裁剪.有RGBA四个选项.
  • Clip Threshold: 裁剪阈值.取值范围是0 ~ 1,如果 Clip Channel 选择了 Red, 这个值设置为了0.3, 意思是设置的 Texture 上颜色值的Red分类大于等于0.3的位置才能发射粒子.
  • Color affects Particles: 颜色影响粒子,勾选后经过该 Texture 位置发射的粒子颜色会使用该位置纹理的颜色.
  • Alpha affects Particles: 透明度影响粒子,勾选后经过该 Texture 位置发射的粒子透明度会使用该位置纹理的透明度.
  • Bilinear Filtering: 双线过滤. 对像素比较少的纹理进行优化.关于此概念的理解可以查阅这里:
    纹理的过滤方式
  • Position: 把shape当做粒子系统的子物体,设置shape的位置.
  • Rotation: 设置shape的旋转.
  • Scale: 设置shape的缩放.
  • Align To Direction: 方向对齐,当选择了该设置后,可以看到所有粒子的Z轴都与自己的初始速度方向保持一致,当有需求需要从物体表面垂直喷出粒子效果时,可以使用该选项,并且可以与 Start Rotation 一起来设置.
    设置Align To Direction
    .
  • Randomize Direction: 使粒子的初始运动方向随机化,当值为0的时候不随机,粒子的运动方向有一定的趋势,这个趋势跟发射器的形状有关系,比如当是圆形的时候,更多的是方向是沿着球面的法线方向,当是Cone的时候,更多的是贴着内壁,而当该值为1的时候,运动方向完全随机.
  • Spherize Direction: 球面化方向,在球形发射器下很难观察到,可以把形状切换为 Box 后设置该项的值,当为0的时候没有作用,值为1的时候,粒子的发射方向会以 Shape 的中心为圆心,向虚拟球面的法线方向发射,类似于 Sphere 形状下的粒子发射方向.
  • Randomize Position: 随机化位置.距离原有发射点的位置随机化,随机范围是原有位置到最大喷射位置,该值控制随机化的权重,当为1的时候所有粒子的初始位置都会随机.
3.2 Shape:Cone(圆锥体)

我们先来看 Cone 形状的编辑器界面.

Cone Shape Editor

可以看到其中有些属性我们已经说明过,如果没有特别含义的话就不再写出了.
Cone

Cone Geometry

作图水平有限,希望可以让大家看懂.

  • Angle: 上图的α角度,值越大,锥顶的半径比锥底越大,取值范围是0° ~ 90°, 其他值会被强制修改到此范围.
  • Radius: 锥底的半径大小.
  • Radius Thickness: 图中所示的壳体厚度.
  • Arc属性同上.
  • Length: 椎体的高度,只有在 Volume 发射模式下才能使用.
  • Emit from:粒子的发射位置.
    • Base: 只从锥底发射.
    • Volume: 从锥底与锥顶之间的整个椎体发射.

其余属性同上.

3.3 Shape:Donut(甜甜圈)
Donut Editor

Donut Geometry
  • Radius: 大圆的半径.
  • Donut Radius: 小圆的半径.
  • Texture: 分布在小圆的横截面上.

其他属性同上.

3.4 Shape:Box(盒型)
Box Editor

Box Geometry
  • Emit from:粒子的发射位置.
    • Volume: 整个体积内发射粒子.
    • Shell: 从6个面发射粒子.
    • Edge: 从12个边发射粒子.
  • Box Thickness: 当选择 Shell 或者 Edge 的时候出现该选项.设置了XYZ三个轴分量.
    这个厚度并不是如表面意思一般,当为0的时候,粒子几乎可以均匀的从各边和各面发射,当为1的时候,会集中在粒子发射系统各个轴反向的边和面进行发射.

其余属性同上.

3.5 Mesh(网格), Mesh Renderer(网格渲染),Skinned Mesh Renderer(骨骼网格渲染).

把这三个合在一起说明,是因为三中Shape的选项设置基本都是一样的.


Mesh系列 Editor
  • Mesh: 对应不同的Shape可以设置一个Mesh,Mesh Renderer或者Skinned Mesh Renderer.
  • Type: 发射样式,跟前面所述的 Emit from 有些类似:
    • Vetex: 只在 Mesh 的顶点发射.
    • Edge: 只在 Mesh 的边缘线发射.
    • Triangle: 在模型的三角面上进行发射.
  • Single Material: 独立材质.一个Mesh可能有多个材质,选中该项后需要输入一个材质编号,那么粒子只会从该材质的位置发射.
  • Use Mesh Color: 使用网格顶点颜色调整粒子颜色,如果没有网格顶点,默认使用材质中的着色器属性 Color 或者 TintColor. 并不是很理解这个属性与 Color affects Particles 的区别,请知道到的小伙伴留言指导一下.
  • Normal Offset: 法线偏移,粒子生成位置距离原有位置在法线上偏移的距离.
  • UV channel: 可以让图片使用指定的UV通道显示.

其他属性同上.

3.6 Sprite(精灵),Sprite Renderer(精灵渲染器)
Sprite系列 Editor
  • Sprite: 可以设置一个 Sprite 或者 Sprite Renderer,粒子会从 Type 指定的位置发射.

其余属性同上.

3.7 Circle(圆形)

Circle Animation

Circle Geometry

Circle Editor

其实 Circle 和 Cone 很像, 只不过 Circle 只是一个底部平面,而且粒子的发射趋势是沿着圆面的法线方向,如果设置 Texture 的话,会直接贴在圆面上,其余属性跟 Cone 基本一致.

3.8 Edge(单线形)
Edge Editor

Edge Geometry
  • Radius: 发射线的长度.

发射器的形状是一条线, 其余属性同上.

3.9 Rectangle(矩形)
Rectangle Editor

Rectangle Geometry

发射器的形状是矩形,粒子的发射方向趋于Z轴正方向.其余属性同上.

终于结束了 Shape 的说明,这次请多多休息,然后继续向下一篇挣扎.

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容