码迷,mamicode.com
首页 > 其他好文 > 详细

Untiy3D的粒子系统介绍

时间:2016-05-23 01:01:52      阅读:221      评论:0      收藏:0      [点我收藏+]

标签:

Effects:效果/特效。

     技术分享

     Particle System:粒子系统。可用于创建烟雾、气流、火焰、涟漪等效果。

     在Unity3D 3.5版本之后退出了新的shuriken粒子系统:

     技术分享

     添加组件之后的效果:

     技术分享

     其中的Open Editor按钮可以打开粒子编辑器,用于编辑复杂的粒子效果。

    技术分享

    技术分享

    由于shuriken粒子系统是模块化的管理方式,所以可以动态的添加模块:

    技术分享

    1.初始化模块:此模块是效果组件固有的模块。

    技术分享

    Duration:粒子发射器,发射粒子的时间。单位为S(秒)。

    Looping:是否开启。如果开启了循环,Duration值只要大于最小值0.10即可。

    Prewarm:是否开启预热。只有在开启的循环的时候,预热才有效果,粒子量相似发射了一个粒子周期。

    Start Delay:预热延迟。游戏开始多长时间后,预热开启。单位为S。

    Start Lifetime:粒子从发射器出来,到消失的时间。单位为S。

    Start Speed:粒子发射的速度。

    Start Size:粒子大小。

    Start Rotation:粒子的旋转角度。

    Start Color:粒子的颜色。

    Gravity Multiplier:设置重力对粒子的影响,数值越大影响越大。

    Inherit Velocity:速度继承。当粒子系统是运动的时候,粒子的速度会继承运动的速度。但粒子坐标系必须在世界坐标系。

    Simulation Space:坐标系是本身还是世界坐标系。

    Play On Awake:在游戏开始播放,但不影响Start Delay效果。

    Max Particles:粒子释放的最大数量,当达到最大数量时,停止释放粒子,当有粒子消失时继续释放。

    2.Emission Module(粒子发射模块)用于粒子发射的速率。或是某个特定时间发射大量的粒子,用于模拟爆炸的效果。

    技术分享

    每秒发射粒子数量。Bursts为某个时间点爆发出粒子的数量,这个时间必须在粒子Duration范围内。

    技术分享

    每米发射粒子数量。粒子发射器所在的游戏对象,移动的时候每米发射的粒子,但粒子坐标系必须在世界坐标系。

    3.Shape Model(形状控制模块):定义了粒子发射器的形状,位置及发射方向。

    球形粒子发射器:

    技术分享

      Radius:球形的半径。

      Emit from Shell:是否从表面发射粒子,还是从内部发射。

      Random Direction:是否启用随机速度。

      技术分享

    半球发射器:

    技术分享

      技术分享

    锥体发射器:

    技术分享

      Angle:椎体,上边开口的大小。

      Radius:半径的大小。

      Length:椎体的高度。只有当Emit from 值为Volume Shell或是Volume时可用。

      Emit From:粒子发射的位置。

      ——————Base:粒子发射源在椎体的内部的底面上,由底面开始发射。

      ——————Base Shell:粒子发射源在椎体底面的边缘,就是周长那一圈发射。

      ——————Volume:粒子发射源在椎体内部空间。

      ——————Volume Shell:粒子发射器在椎体整个表面上。没有底面。

      技术分享

    立方体发射器:

    技术分享

      Box X:立方体长度。

      技术分享

    网格发射器:

    技术分享

      Mesh:选择网格样式。

      ——————Vertex:粒子将从网格顶点发射。

      ——————Edge:粒子将从网格边缘(棱)发射。

      ——————Triangle:粒子将从网格的三角面发射。图形都是三角形组成的。

    4.生命周期速度模块:控制每一个粒子的速度。

    技术分享

    5.生命周期速度限制模块:

    技术分享

      Separate Axis:是否启用限制每一个轴。

      Speed:限制的速度。

      Dampen:阻尼。阻尼为1的时候表示在生命周期结束的时候,速度降到限定的速度。

    6.生命周期作用力模块:控制每一个粒子在生命周期内受到力的情况。

    技术分享

      Randomize:只有在Random Between Two Constants或Random Between Two Curves时才可启用。

            表示每一帧作用在粒子上的力是均匀随机产生的。

    7.生命周期颜色模块:控制每一个粒子在生命周期内颜色的变化。

    技术分享

      技术分享

    技术分享

      技术分享

    8:速度范围颜色变化控制模块:根据设置速度的范围和粒子的速度来改变粒子的颜色。

    技术分享

      技术分享

    9:生命周期粒子大小模块:控制每个粒子在生命周期内,大小的变化。

    技术分享

    技术分享

      技术分享

    10:速度范围粒子大小变化控制模块:根据速度的变化改变粒子的大小。

    技术分享

    技术分享

      技术分享

    11:生命周期每个粒子的旋转速度:每秒粒子旋转的角度。

    技术分享

      技术分享

    12:根据速度变化改变粒子的旋转速度:旋转速度不为固定常数时。

    技术分享

      技术分享

    13:外部作用力倍增数:调整风对粒子的影响情况。

    技术分享

    14:碰撞模块:为粒子创建粒子碰撞效果,目前只支持平面碰撞。

    技术分享

    平面碰撞只支持6个平面,点击+号可以添加现在有的平面或是新建立一个。

    技术分享

    通过新建立了碰撞平面,会成为粒子物体的子物体。

      技术分享

      技术分享

     Visualization:碰撞平面的显示方式。

     ——————Grid: 技术分享

     ——————Solid:技术分享

    Scale Plane:碰撞平面的大小。

    Dampen:阻尼系数。粒子速度撞击损耗程度。0~1。

    Bounce:反弹系数。0~2.系数越大,反弹角度越小。

    Min kill Speed:最小销毁速度。当速度小于这个值的时候,粒子消失。

    Particle Radius:粒子碰撞半径。最小值为0.01。

    世界碰撞:

    技术分享

    Collides With:碰撞层级。选择与那一层级碰撞。

    Collision Quality:碰撞质量。

    ——————High:每个粒子会每帧与场景做一次射线碰撞检测,需要注意的是,这样会增加CPU的负担,故在此情况下整个场景中的粒子数应当小于1000。

    ——————Medium:粒子系统在每帧会受到一次Parude Raycast Budget全局设定的影晌。

    ——————Low:与 中等效果相似 ,只 是粒子系统每4帧才受一次Parude Raycast Budget全局参数的影晌。

 

    ——————Voxel Size:碰撞缓存中的体素的尺寸,仅当Collision Quality为Medium和Low时可用。

    15:子粒子发射模块:在粒子出生,碰撞,消灭时可以调用其他粒子。

    技术分享

    技术分享

 

     16:序列帧动画纹理模块:

    技术分享

    Tiles:x水平分割的份数,y垂直分割的份数。

    Animation:Whole Sheet-整个页面即X,Y一起移动。

    Frame over Time:生命周期内,动画变幻的速率。

    Cycles:生命周期内变化几次动画。

    技术分享

    Animation:Single Row-从左到右行滚动。

    Random Row:随机行。

    Row:选择某一行,开始滚动,小于Tiles中的Y。

    17:粒子的渲染模块:

    技术分享

    Render Mode:渲染模式。

    ——————Billboard:面板渲染。

    ——————Vertical Billboard垂直渲染,此模式当面对摄像机时,粒子将与zX平面对齐

    ——————Horizontal Billboard:水平模式,此模式下粒子将沿Y轴对齐。

    ——————Stretched Billboard:拉伸渲染。

          技术分享

          ————CameraScale:相机缩放。摄像机的速度对于粒子伸缩影晌的程度。speed Scale:通过比较粒子的速度决定粒子的长度。 LengthScale:通过比较粒子的宽度决定粒子的长度。

          技术分享

    ——————Mesh:模式。

    技术分享

    技术分享

    18:属性:

    技术分享

    Resimulate:实时渲染。在改变参数的时候,场景中的粒子效果实时变化。

    Wireframe:选择时,将显示粒子的片面网格。

    技术分享

转自:http://www.cnblogs.com/qinghuaideren/p/3597666.html?utm_source=tuicool&utm_medium=referral

Untiy3D的粒子系统介绍

标签:

原文地址:http://blog.csdn.net/u014581901/article/details/51477992

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!