unity3d里粒子的renderer

2015年03月03日 11:29 0 点赞 0 评论 更新于 2025-11-21 16:37

Shuriken粒子系统是Unity 3.5版本新推出的粒子系统,它采用模块化管理,个性化的粒子模块配合粒子曲线编辑器,使用户能够更轻松地创作出各种缤纷复杂的粒子效果。

新建粒子游戏对象

依次打开菜单栏中的GameObject -> Create Other -> Particle System,在场景中新建一个粒子游戏对象。

粒子系统控制面板

粒子系统的控制面板主要由Inspector视图中的Particle System组件的属性面板及Scene视图中的Particle Effect两个面板组成。

  • Particle System组件的属性面板包括Particle System初始化模块及EmissionShape等多个模块,每个模块都控制着粒子某一方面的行为特性。属性面板最下面为Particle System Curves粒子曲线。
  • 单击Open Editor按钮会弹出粒子编辑器对话框,该对话框集成了Particle System属性面板及粒子曲线编辑器,便于对复杂的粒子效果进行管理和调整。

各模块详细介绍

Initial Module(初始化模块)

这是粒子系统的固有模块,无法将其删除或禁用。该模块定义了粒子初始化时的持续时间、循环方式、发射速度、大小等一系列基本参数。

Emission Module(发射模块)

发射模块控制粒子发射的速率。在粒子的持续时间内,可实现在某个特定的时间产生大量粒子的效果,这对于模拟爆炸效果等需要产生大量粒子的场景非常有用。

  • Rate:发射速率,即每秒或每个距离单位所发射的粒子个数。单击右侧上面的下三角按钮,可以选择发射数量由一个常数还是由粒子曲线控制;单击右侧下面的下三角按钮,可以选择粒子的发射速率是按时间还是距离变化。
  • Bursts:粒子爆发,在粒子持续时间内的指定时刻额外增加大量的粒子。此选项只在粒子速率变化方式为时间变化的时候才会出现。

Shape Module(形状模块)

形状模块定义了粒子发射器的形状,可提供沿着该形状表面法线或随机方向的初始力,并控制粒子的发射位置及方向。

  • Shape:粒子发射器的形状,不同形状的发射器发射粒子初始速度的方向不同,每种发射器下面对应的参数也有相应的差别。常见的发射器形状有:
  • Sphere:球体发射器
  • Hemisphere:半球发射器
  • Cone:椎体发射器
  • Box:立方体发射器
  • Mesh:网格发射器

粒子系统使用案例

场景观察

打开现成的场景,单击Play按钮运行场景,随着相机运动,可以看到里面的机器人、风扇及器械等都动起来了。观察场景发现转动的风扇处,如果能加一些粒子效果会更好,下面将讲解如何在风扇处增加飘落雪花和冷空气的粒子效果。

定位风扇位置

切换到Scene视图,双击风扇模型或者在Hierarchy视图中展开DynamicObjects层级,双击Prop_fan_large游戏对象,将当前视角移动到风扇游戏对象跟前。在这里要在风扇附近的位置建立两个粒子系统,来模拟被风扇从外面吹进来的雪花粒子效果及冷空气效果。

新建粒子系统并调整属性

  1. 新建粒子系统:新建一个粒子系统游戏对象,可以看到该粒子的位置处在风扇附近,并且该粒子已经有了一个类似白色光球向上飘的默认效果。但这个默认效果并不符合项目所需的雪花效果,因此需要对刚创建的粒子的各属性参数进行调整。
  2. 设置粒子材质:在Inspector视图中单击Renderer模块标签,再单击Material属性右侧的圆圈按钮,在弹出的材质选择框中选择part_bokeh_mat材质。
  3. 调整初始化模块参数
    • 设置Start Lifetime(生命周期)为3.5。
    • 单击Start Speed(粒子初始速度)右侧的下三角按钮,在下拉列表中选择速度值的变化方式为Random Between Two Constants(两个常数随机选择),将两个常数值设为1和2,这样雪花的飘落速度就为随机值。
    • 同理,设定Start Size的值为在0.015和0.035两个常数间随机取值。
    • 单击Start Color(粒子初始颜色)右侧的下三角按钮并在下拉列表中选择Random Between Two Colors(两个纯色随机选择),让粒子的颜色在两个纯色中随机选择。
    • 最后将Max Particles(最大粒子数)设为5000。
  4. 设置Emission模块参数:将Rate(每秒粒子的数量)参数值设为30。
  5. 设置Shape模块参数:选择Cone(锥形发射器),设定Angle(角度)值为20,Radius(半径)值为1.7。
  6. 设置Force over Lifetime Module(生命周期作用力模块)参数:该模块控制着粒子在其生命周期内的受力情况,即xyz三个轴向上的作用力大小。设定Y值为 - 0.74,SpaceWorld(世界坐标系),调整参数使得粒子受到一个作用力的影响。
  7. 设置Color over Lifetime Module(生命周期颜色模块)参数:该模块控制了每一个粒子在其生命周期内的颜色变化。
  8. 设置Renderer模块参数:勾选Cast ShadowsReceive Shadows右侧的复选框,这样粒子就可以接受和反射光线。

作者信息

boke

boke

共发布了 3994 篇文章