龙图教育:Unity3D游戏开发粒子系统Particle System简单介绍

合集下载

unity3d_粒子系统

unity3d_粒子系统

粒子系统粒子从本质上来说是由2D图片渲染成3D空间,他们被用于一些效果,类似于烟、火、水滴或是落叶。

一个粒子系统由三个部分组成:粒子发射器(Particle Emitter),粒子动画(Particle Animator),和粒子渲染器(Particle Renderer)。

如果你想要一个静态粒子,你可以利用一个粒子发射器和渲染器构建。

粒子动画可以在不同的方向移动粒子,并能改变粒子的颜色。

你也有权通过脚本改动粒子系统中每个独立的粒子,所以你可以选择来创建你自己独特的粒子系统。

粒子的组成部分粒子系统粒子系统在Unity中是用来制作烟、蒸汽、火、和其他大气效果。

粒子系统同故宫利用1个或2个材质并且通过数次绘制,以达到预期的效果。

在Unity标准版中包括粒子系统一个典型的粒子系统是一个包括了粒子发射器、粒子动画和粒子渲染器在内的Object,粒子发射器产生粒子,粒子动画在时间轴上移动它,粒子渲染器在屏幕上渲染它们。

椭圆粒子发射器Ellipsoid Particle Emitter 椭圆粒子发射器在一定范围内大量产生粒子,范围可以按比例拉伸。

椭圆粒子工具栏Emit 如果激活,发射器将会发射粒子Min Size 每次产生粒子的最小尺寸Max Size 每次产生粒子的最大尺寸Min Energy 粒子的最小生命周期,用秒来度量Max Energy 粒子的最大生命周期,用秒来度量Min Emission每秒钟所产生的最少粒子数Max Emission 每秒钟所产生的最多粒子数World Velocity粒子在空间范围中的起始速度Local Velocity粒子以物体为参照物的速度Rnd Velocity 依赖于X、Y、Z的随机加速度Emitter Velocity Scale 粒子继承的发射器速度的总和Tangent Velocity 粒子通过发射器表面的正切起始速度Simulate In World Space 如果激活,粒子在发射器移动的情况下不会改变位置,如果不激活,粒子会随发射器移动One Shot 如果激活,粒子数将会取值于最小数和最大数之间的一个固定数,如果没有激活,将会产生一束粒子流。

Unity3D粒子系统组件主要参数浅析

Unity3D粒子系统组件主要参数浅析

先上传一个网上流传比较多的参数解析图吧看完图,然后来看看我个人的一些理解吧~【狗刨学习网】Ellipsoid Particle Emitter(这里以椭球形粒子发射器为例,网格的也差不多)参数:粒子发射器主要是对粒子的大小、存活时间、速度等初始状态的设置,具体如下:Min Size/Max Size设置粒子大小的变动区域,生成的粒子大小将被限制在这个区间。

Min Energy/Max Energy设置粒子的存活时间变动区域,粒子在产生后会在该区间中的任意一个数值的时间(s)内自动销毁。

Min Emission/Max Emission设置同时存在的粒子数的区间,这两个参数限定了屏幕上同时存在的粒子的数量区间。

World Velocity粒子沿世界坐标系运动的速度(方向不会随粒子所依附对象的Rotation改变而改变),有x、y、z三个方向,可以设置任意方向上的速度值,使得粒子在生成后沿给定的世界坐标系方向按给定速度运动。

Local Velocity与World Velocity相对,粒子沿本地坐标系运动的速度(方向会跟随粒子所依附对象的Rotation改变而变化),也有x、y、z三方向,可以设置任意方向上的速度值,使得粒子在生成后沿给定的本地坐标系方向按给定速度运动。

Rnd Velocity随机速度,它也包含x、y、z三个值,分别来设置三个方向上速度大于给定值的粒子的数量。

(设置这个参数的结果会使得部分粒子在该方向上的运动距离更大)【狗刨学习网】Particle Animator(粒子动画器)参数该部分最重要的是对Animate Color中五个颜色值的设定,这5个颜色从Color Animation[0]到Color Animation[4]分别是表示粒子在其存活时间中的颜色变化,也就是说它们代表了你的粒子从发射点到消亡点的颜色渐变过程。

Rotation Axis是设置粒子运动过程中的旋转情况,也是分x、y、z三个方向。

Unity3D游戏开发之粒子系统

Unity3D游戏开发之粒子系统

Unity3D游戏开发之粒子系统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按钮运行场景,随着相机运动可以看的里面的机器人、风扇及器械等都动起来了,非常鲜活生动。

Unity 3D游戏场景设计实例教程 CHAPTER 7 Unity3D粒子系统详解

Unity 3D游戏场景设计实例教程 CHAPTER 7 Unity3D粒子系统详解

图 7-7 各项粒子系统参数控制面板Biblioteka (2)Shape 形状模块。
定义发射器的形状,可以选择球形、半球体、圆锥、盒子和网格模型, 能提供初始的作用力,该作用力的方向将延表面法线或随机生成
表 7-6
续表
(3)Velocity Over Lifetime 存活期间的速度模块。
图 7-4 Interpolate Triangles 命令示意图
表 7-2
表 7-3
表 7-4
Stretch Particles伸展粒子下拉菜单中一共包括五个选项:Billboard表示 当粒子面对镜头时才呈现;Stretched是朝粒子运动的方向去做拉伸延展;Sorted Billboard是当用混合材质时,粒子会依照距离镜头的远近做排列;Vertical Billboard为所有粒子沿着 X 和 Z 轴对齐飘动;Horizontal Billboard 是让 所有粒子沿着 X 和 Y 轴对齐飘动。
7.1 Legacy Particles粒子组件 7.2 Particle System粒子系统 7.3 Unity粒子实例火焰的制作 7.4 Unity粒子实例落叶的制作
Legacy Particles 是旧版遗留的粒子系统,我们可以在 Component 组件菜单下的 Effects选项下进行创建,Legacy Particles 共包括 5 个组件,分别为 Ellipsoid Particle Emitter(椭球粒子发射器)、 Mesh Particle Emitter(网格粒子发射器)、Particle Animator(粒 子动画)、Particle Collider(粒子碰撞器)和 Particle Renderer (粒子渲染器),如图 7-1 所示。

龙图教育:Unity3D内置了Physx物理引擎系统简单介绍

龙图教育:Unity3D内置了Physx物理引擎系统简单介绍

龙图教育:Unity3D内置了Physx物理引擎系统简单介绍Unity内置了NVIDIA的Physx物理引擎Physx是目前使用最为广泛的物理引擎被很多游戏大作所采用开发者可以通过物理引擎高效、逼真地模拟刚体碰撞、车辆驾驶、布料、重力等物理效果使游戏画面更加真实而生动。

Rigidbody刚体组件可使游戏对象在物理系统的控制下来运动刚体可接受外力与扭矩力用来保证游戏对象像在真实世界中那样进行运动。

任何游戏对象只有添加了刚体组件才能受到重力的影响通过脚本为游戏对象添加的作用力以及通过NVIDIA物理引擎与其他的游戏对象发生互动的运算都需要游戏对象添加了刚体组件。

依次打开GameObject->Create Empty创建一个空游戏对象然后选择该对象打开菜单栏中的Component->Physics->Rigidbody如下图Rigidbody组件的属性面板如下图Mass质量该项用于设置游戏对象的质量Drag阻力当对象受力运动时受到的空气阻力0表示没有空气阻力阻力极大时游戏对象会立即停止运动Angular Drag当对象受扭矩力旋转时受到的空气阻力0表示没有空气阻力阻力极大时游戏对象会立即停止运动Use Gravity使用重力若开启此项游戏对象会受到重力的影响Is Kinematic是否开启动力学若开启此项游戏对象将不再受物理引擎的影响从而只能通过Transform属性来对其操作Interpolate插值该项用于控制运动的抖动情况有3项可以选择None没有插值Interpolate 内插值基于前一帧的Transform来平滑此次的TransformExtrapolate外插值基于下一帧的Transform来平滑此次的TransformCollision Detection碰撞检测该属性用于控制避免高速运动的游戏对象穿过其他的对象而未发生碰撞有3项可以选择Discrete离散碰撞检测该模式与场景中其他的所有碰撞体进行碰撞检测Continuous连续碰撞检测Continuous Dynamic连续动态碰撞检测模式Constraints约束该项用于控制对于刚体运动的约束Collides碰撞体碰撞体是物理组件的一类它要与刚体一起添加到游戏对象上才能触发碰撞。

unity使用粒子系统的基本步骤及应用(一)

unity使用粒子系统的基本步骤及应用(一)

unity使用粒子系统的基本步骤及应用(一)Unity使用粒子系统的基本步骤及应用1. 什么是Unity粒子系统?Unity粒子系统是一种用于创建和模拟粒子效果的工具。

它可以模拟各种物理现象和特效,如火焰、爆炸、烟雾、雨水等。

使用粒子系统,可以轻松地实现令人赏心悦目的动画效果。

2. Unity粒子系统的基本步骤创建粒子系统对象在Unity中,创建粒子系统需要进行以下步骤:•在Hierarchy面板中点击右键,选择“Effects” ->“Particle System”;•在Scene面板中,调整粒子发射器的位置、旋转和缩放。

调整粒子系统属性在Inspector面板中,可以调整粒子系统的各种属性来达到特定的效果。

以下是一些常见的属性:•Start Lifetime:粒子的生命周期,即粒子从出现到消失的时间;•Start Speed:粒子的初始速度;•Start Size:粒子的初始大小;•Gravity Modifier:粒子受到的重力影响程度;•Color over Lifetime:粒子颜色随时间变化的规律。

添加粒子效果Unity提供了丰富的内置粒子效果,可以直接在Inspector面板中进行选择和调整。

例如:•Smoke:烟雾效果,可用于模拟爆炸、火焰等情景;•Sparks:火花效果,可用于模拟火焰、电击等特效;•Rain:雨水效果,可用于模拟下雨天气。

自定义粒子效果除了使用内置的粒子效果外,还可以自定义粒子系统的外观和行为。

以下是一些常见的自定义方法:•Texture Sheet Animation:使用动画纹理来控制粒子的外观,可以创建流动的火焰、螺旋的烟雾等效果;•Noise Module:添加噪声模块,可以使粒子系统的移动和外观更加随机和自然;•Sub Emitters:添加子发射器,可以在父粒子的基础上再次发射新的粒子,产生更复杂的效果。

3. Unity粒子系统的应用游戏特效Unity粒子系统在游戏中广泛应用于创造炫目的特效,如爆炸、火焰、魔法等。

Unity粒子系统模块(ParticleSystemModules40)

Unity粒子系统模块(ParticleSystemModules40)

Unity粒子系统模块(ParticleSystemModules40)粒子系统模块(Particle System Modules40)粒子系统模块(忍者飞镖)粒子系统(忍者飞镖)(Particle System (Shuriken)) 用模块描述粒子一段时间内的行为。

此处记载了模块的详细说明。

有关模块介绍,请参阅此页面。

初始化模块该模块始终存在,无法删除或禁用。

持续时间(Duration)粒子系统 (Particle System) 发射粒子的持续时间。

循环 (Looping)粒子系统 (Particle System) 是否循环。

预热 (Prewarm)只可预热循环系统,这意味着,粒子系统 (Particle System) 在游戏一开始时就发射粒子,就像已发射了一个周期的粒子。

初始延迟 (Start Delay)粒子系统 (Particle System) 发射粒子之前等待的延迟,以秒为单位。

请注意,预热的循环系统不能使用初始延迟。

初始生命 (StartLifetime)粒子存活时间,以秒为单位(请参阅 MinMaxCurve)。

初始速度 (StartSpeed)粒子发射时的速度(请参阅 MinMaxCurve)。

初始大小 (StartSize)粒子发射时的大小(请参阅 MinMaxCurve)。

初始旋转 (StartRotation)粒子发射时的旋转(请参阅 MinMaxCurve)。

初始颜色 (StartColor)粒子发射时的颜色(请参阅 MinMaxGradient)。

重力修改器(Gravity Modifier)粒子在存活期间受到的重力影响。

继承速度 (Inherit Velocity)控制粒子速率的因素应继承粒子系统 (Particle System) 的转换(对于移动中的粒子系统)。

模拟空间(SimulationSpace)模拟本地坐标系或世界坐标系中的粒子系统 (Particle System)。

游戏设计之粒子系统

游戏设计之粒子系统
M
粒子系统
粒子系统是粒子的集合,用来保存和显示这些粒子。粒子系 统维护所有粒子的全部属性,影响系统中的所有粒子:粒子 的尺寸,起始的位置及应用在粒子上的纹理等。 粒子系统主要负责更新(updating)、显示(displaying)、杀死 (kill)和创建(creating)粒子。 把粒子系统公共的属性放到一个抽象的cParticleSystem基类
M
粒子和点精灵


粒子及其属性
一个粒子系统是由除了位置、颜色以外的更多的属性组成,例如, 一个粒子可具有速度。然而,这些额外的属性对于渲染粒子来说 不是必须的。因此,在单独的结构中保存渲染粒子所必须的数据 和属性。当创建、显示或更新粒子时,使用属性来工作。当准备 渲染时,从sParticle(粒子)结构中COPY位置和颜色。 对于模拟的具体粒子系统,粒子的属性也是不同的 ,因此能够归
纳一些通用的属性

M

struct sParticleAttribute { sParticleAttribute() { life_time = 0.0f; age = 0.0f; is_alive = true; }
粒子和点精灵
D3DXVECTOR3 position; //粒子在世界空间中的位置 D3DXVECTOR3 velocity; //粒子的速度,每秒多少个单位 D3DXVECTOR3 acceleration; //粒子的加速度 float life_time; // how long the particle lives for before dying float age; // current age of the particle D3DXCOLOR color; // current color of the particle D3DXCOLOR color_fade; // how the color fades with respect to time bool is_alive; };
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

龙图教育:Unity3D游戏开发粒子系统Particle System简单介绍huriken粒子系统是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右侧的复选框,这样粒子就可以接受和反射光线了,如下图:
想要学U3D的童鞋可以来龙图教育,龙图教育是一家专业做互联网教育品牌的教育机构,线上线下都有,想要学到更多有关U3D的知识可以直接访问龙图教育官网。

联系扣扣:318-961-3107。

相关文档
最新文档