2019-12-20 21:35:43 zhunju0089 阅读数 37
  • Unity3D棋盘游戏实战入门——2D智力拼图

    本课程使用Unity3d开发软件和C#编程语言,从零开始逐步完成一个2D拼图游戏项目。在本课程中,你可以了解并学习到游戏工程的创建和文件结构的维护、Unity3D的射线检测机制、插值插件Itween的使用、游戏数据的离线保存,并初步了解Unity3D的粒子系统和动画系统。

    808 人正在学习 去看看 伍晓波

1.在Hierarchy>Effects>Particle System创建粒子系统

2.效果

2015-03-13 18:42:31 a3636987 阅读数 14609
  • Unity3D棋盘游戏实战入门——2D智力拼图

    本课程使用Unity3d开发软件和C#编程语言,从零开始逐步完成一个2D拼图游戏项目。在本课程中,你可以了解并学习到游戏工程的创建和文件结构的维护、Unity3D的射线检测机制、插值插件Itween的使用、游戏数据的离线保存,并初步了解Unity3D的粒子系统和动画系统。

    808 人正在学习 去看看 伍晓波

经过测试学习,总结了关于怎么让粒子和物体发生碰撞和怎么让粒子在碰撞后消失的几点看法:

首先给大家看一下我的粒子系统的配置图:


关于碰撞检测的主要配置我们看图中的Collision:

第一项:因为是一个3D游戏,所以这里我选择的是World

第二项(Dampen):抑制(0~1),选这个为1时(完全抑制),碰撞之后,阻止了粒子,可以使碰撞的粒子消失

第三项(Bounce):反弹(0~2),选完这个之后,可以让产生碰撞的粒子以某个角度反弹出去

第三项(Lifetime Loss):生命周期损失(0~1),碰撞之后让粒子损失百分比的生命周期,为1时(生命周期完全损失),可以使粒子消失

第四项(Min Kill Speed):最小清除速度,设置值越大,粒子发生碰撞之后被移除的速度越快,当达到某个值之后,可以近似碰撞之后立即消失

第五项(Collides With):可碰撞范围,设置可以与该粒子系统碰撞的层

第六项(Collision Quality):碰撞质量,设置发生碰撞的碰撞概率大小,选项三项从上到下由高到低,越低碰撞到的概率就越低

第七项(Send Collision Messages):发送碰撞信息,与下面这个方法有关

// 需要处理的碰撞信息,放在被撞的物体身上
void OnParticleCollision(GameObject other) {
      
}

总结一下以上可以使粒子消失的方法有以下三种:

(1)设置Dampen为1;

(2)设置Lifetime Loss为1;

(3)设置较大的Min Kill Speed值


以上是我对粒子碰撞的看法,不知道有没有错的地方,如果有错的地方欢迎指正,谢谢!

转载请指明出处:http://blog.csdn.net/hongyouwei/article/details/44244055


2017-04-19 14:08:53 q510264505 阅读数 360
  • Unity3D棋盘游戏实战入门——2D智力拼图

    本课程使用Unity3d开发软件和C#编程语言,从零开始逐步完成一个2D拼图游戏项目。在本课程中,你可以了解并学习到游戏工程的创建和文件结构的维护、Unity3D的射线检测机制、插值插件Itween的使用、游戏数据的离线保存,并初步了解Unity3D的粒子系统和动画系统。

    808 人正在学习 去看看 伍晓波

转载 http://www.cnblogs.com/qinghuaideren/p/3597666.html

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:选择时,将显示粒子的片面网格。

    

2016-10-17 10:46:08 ios_song 阅读数 3100
  • Unity3D棋盘游戏实战入门——2D智力拼图

    本课程使用Unity3d开发软件和C#编程语言,从零开始逐步完成一个2D拼图游戏项目。在本课程中,你可以了解并学习到游戏工程的创建和文件结构的维护、Unity3D的射线检测机制、插值插件Itween的使用、游戏数据的离线保存,并初步了解Unity3D的粒子系统和动画系统。

    808 人正在学习 去看看 伍晓波
[Unity3D教程]Unity粒子系统Shuriken(飞镖)

Unity从3.5之后推出了新的粒子系统-》Shuriken(飞镖),在Unity场景当中添加一个粒子对象后,会看到这个样的图片[效果]:

 

确实挺像飞镖的哈。具体为啥非要叫Shuriken,估计希望这个粒子系统像飞镖一样效果炫酷(个人猜测,不代表官方^_^)。接下来咱们就来学习粒子特效。

Shuriken(飞镖)用处:

在很多实际场景当中,我们得把这个粒子特效做为一个子物体添加到特定的游戏对象上,比如一把刀上,让刀有发光的效果,看起来和霸气,玄乎,也比如在释放技能的时候,释放个酷炫的效果。

Shuriken(飞镖)酷炫的效果

1、先创建一个粒子特效

Hierarchy下,Create-》Particle System,这样就会看到创建了一个粒子对象,默认的效果是:产生白色的泡沫(O(∩_∩)O)。同时这个粒子对象会自动带一个Particle System组件,如下图所示[粒子系统组件]:

 

2、接下来咱们来看它的具体属性:

初始化模块:这个模块是粒子组件固有的模块

Duration:粒子系统整个的持续时间。

Looping:粒子系统是否循环。如果开启了循环,Duration值只要大于0.1s即可。

Prewarm:是否开启预热。注意:只有当开启了循环,预热才有效果。

Start Delay:预热延迟。就是指游戏开始多长时间后,开始预热。

Start Lifetime:单独每个粒子的生命周期,也就是一颗粒子从发射器发射出来到消失的时间。单位为秒S。

Start Speed:粒子的运动速度。

Start Size:粒子的大小。

Start Rotation:粒子的旋转角度。

Start Color:粒子的颜色。

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

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

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

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

Max Particles:粒子释放的最大数量,如果产生粒子的数量达到这个数时,就停止释放粒子,当有粒子消失时,继续释放。

 

3、接下来的模块是可以自己添加的模块:

Emission Module:用于粒子发射的速率。或是某个特定时间发射大量的粒子,一般用于模拟爆炸的效果用于粒子发射的速率,如果类型选择时间(Time)的话就是每秒发射粒子的数量。Bursts为某个时间点爆发出粒子的数量,这个时间必须在粒子Duration范围内。

如果为距离(Distance)的话就是:每米发射的粒子数量。即粒子发射器所在的游戏对象,移动的时候每米发射的粒子,但粒子坐标必须是世界坐标系。

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

Sphere:球形粒子发射器

Radius:球形的半径

Emit from Shell:是否从表面发射粒子(勾选),还是从内部发射(不勾选)

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

HemiSphere:半球形粒子发射器,对,就是一个半球

Cone:锥形粒子发射器

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

Radius:半径的大小

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

Emit From:粒子发射的位置:

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

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

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

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

Box:立方体形粒子发射器

BoxX:长,BoxY:高,BoxZ:宽

Mesh:网格粒子发射器

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

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

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

Velocity over Lifetime:生命周期速度模块,控制每一个粒子的速度。

Limit Velocity over Lifetime:生命周期速度限制模块

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

Speed:限制的速度。

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

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

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

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

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

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

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

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

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

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

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

Collision:碰撞模块:为粒子创建粒子碰撞效果,目前只支持平面碰撞。平面碰撞只支持6个平面,点击+号可以添加现在有的平面或是新建立一个。

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

Scale Plane:碰撞平面的大小。

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

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

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

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

world:世界碰撞

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

Collision Quality:碰撞质量。

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

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

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

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

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

Texture Sheet Animation

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

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

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

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

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

Random Row:随机行。

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

Renderer 渲染模式。

Billboard:面板渲染。

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

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

Stretched Billboard:拉伸渲染。

Camera Scale:相机缩放。摄像机的速度对于粒子伸缩影晌的程度。

Speed Scale:通过比较粒子的速度决定粒子的长度。

Length Scale:通过比较粒子的宽度决定粒子的长度。

Mesh:网格渲染

属性

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

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


欢迎到CSDN学院观看我的Unity3D开发视频教程http://edu.csdn.NET/lecturer/lecturer_detail?lecturer_id=107

(权归蓝欧科技有限公司所有,任何单位或者个不可以私自转载,如果有需有,请于蓝欧科技有限公司相关部门联系)



2015-04-03 09:57:38 hy_cai 阅读数 571
  • Unity3D棋盘游戏实战入门——2D智力拼图

    本课程使用Unity3d开发软件和C#编程语言,从零开始逐步完成一个2D拼图游戏项目。在本课程中,你可以了解并学习到游戏工程的创建和文件结构的维护、Unity3D的射线检测机制、插值插件Itween的使用、游戏数据的离线保存,并初步了解Unity3D的粒子系统和动画系统。

    808 人正在学习 去看看 伍晓波

转载自:http://blog.csdn.net/kuloveyouwei/article/details/23293271点击打开链接


Shuriken粒子系统是Unity3.5版本新推出的粒子系统,它采用模块化管理,个性化的粒子模块配合粒子曲线编辑器使用户更容易创作出各种缤纷复杂的粒子效果。

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


粒子系统的控制面板主要由Inspector视图中的Particle System组件的属性面板及Scene视图中的Particle Effect两个面板组成。Particle System组件的属性面板包括Particle System初始化模块及Emission、Shape等多个模块,每个模块都控制着粒子某一方面的行为特性,属性面板最下面为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游戏对象,将当前视角移动到风扇游戏对象跟前,这里要在风扇附近的位置建立两个粒子系统,来模拟被风扇从外面吹进来的雪花粒子效果及冷空气效果。

新建一个粒子系统游戏对象,,如下图:


可以看到该粒子的位置处在风扇附近并且该粒子已经有了一个类似白色光球向上飘的一个默认效果,新建的粒子效果使默认的,并不符合项目所需的雪花效果,因此需要对刚创建的粒子的各属性参数进行一步步的调整。

首页要设置粒子的材质,在Inspector视图中单击Renderer模块标签,在单击Material属性右侧的圆圈按钮,在弹出的材质选择框中选择part_bokeh_mat材质,如下图:


粒子效果如下图:


我们继续调整属性,设定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,这样粒子的初始化模块的参数就设定完毕了,如下图:


Emission模块的参数设置,将Rate(每秒粒子的数量)参数值设为30,

Shape模块的参数设定,选择Cone(椎形发射器),设定Angle(角度)值为20,Radius(半径)值为1.7

Force over Lifetime Module(生命周期作用力模块),该模块控制着粒子在其生命周期内的受力情况,xyz3个轴向上的作用力大小,设定Y值为-0.74,Space为World(世界坐标系),调整参数使得粒子受到一个作用力的影响

Color over Lifetime Module(生命周期颜色模块),该模块控制了每一个粒子在其生命周期内的颜色变化
Renderer模块的参数设定,勾选Cast Shadows及Receive Shadows右侧的复选框,这样粒子就可以接受和反射光线了,如下图:


unity3D制作粒子

阅读数 433

Unity3D爆炸效果粒子系统

博文 来自: six_sex
没有更多推荐了,返回首页