Unity3D中粒子系统
接下來的圖片就是Unity2017.1.0f3 編輯器中的粒子系統(tǒng)模塊。
了解粒子系統(tǒng),必須先了解每一個屬性都代表了什么,之后才能根據(jù)這些原理來調(diào)整出自己滿意的效果。
主面板ParticleSystem:
- Duration:粒子發(fā)射周期,如圖的意思就是在發(fā)射3.32秒以后進入下一個粒子發(fā)射周期。如果沒有勾選looping的話,3.32秒之后粒子會停止發(fā)射。
- Looping:粒子按照周期循環(huán)發(fā)射。
- Prewarm:預熱系統(tǒng),比如說我有一個空間大小的粒子系統(tǒng),但是粒子發(fā)射速度有限,我想在最開始的時候讓粒子充滿空間,此時就應該勾選Prewarm。
- StartDelay:粒子延時發(fā)射,勾選后,延長一段時間才開始發(fā)射。
- StartLifeTime:粒子從發(fā)生到消失的時間長短。
- StartSpeed:粒子初始發(fā)生時候的速度。
- 3DStartSize:這個屬性是當你需要把粒子在某一個方向上擴大的時候使用。
- StartSize:粒子初始的大小。
- 3DStartRotation:需要在一個方向旋轉(zhuǎn)了子的時候可以使用。
- StartRotation:粒子初始旋轉(zhuǎn)。
- RandomizeRotation:隨機旋轉(zhuǎn)粒子方向,感覺在3D粒子的情況下,尤其是圓形的沒什么用。
- StartColor:粒子初始顏色,可以調(diào)整加上漸變色。
- GravityModifier:重力修正。
- SimulationSpace:a.Local,此時粒子會跟隨父級物體移動。b.World,此時粒子不會跟隨父級移動。c.Custom,粒子會跟著指定的物體移動。
- SimulationSpeed:根據(jù)Update模擬的速度。
- DeltaTime:一版的DeltaTime都是1,如果需要用到Sacled是在游戲需要暫停的時候,根據(jù)TimeManager來定。如果選擇UnScale的話,就會忽略時間的影響。
- ScalingMode:Local:粒子系統(tǒng)的縮放和自己Transform的一樣會忽略父級的縮放。Hierarchy:粒子縮放跟隨父級。Shape:將粒子系統(tǒng)跟隨初始位置,但是不會影響粒子系統(tǒng)的大小。
- EmitterVelocity:
- MaxParticles:粒子系統(tǒng)可以同時存在的最大粒子數(shù)量。如果粒子書數(shù)量超過最大值粒子系統(tǒng)會銷毀一部分粒子。
- AutonRandomSeed:隨機種子,如果勾選會生成完全不同不重復的粒子效果,如果勾選即為可重復。
Emission模塊
- RateOverTime:隨單位時間生成粒子的數(shù)量。
- RateOverDistance:隨著移動距離產(chǎn)生的粒子數(shù)量。只有當粒子系統(tǒng)移動時,才發(fā)射粒子。
- Bursts:
- Time:從第幾秒開始。
- Min:最小粒子數(shù)量。
- Max:最大的粒子數(shù)量,粒子的數(shù)量會在Min和Max之間隨機。
- Cycles:在一個周期中循環(huán)的次數(shù)。
- Interval:兩次兩次Cycles的間隔時間。
Trailer模塊
如果使用Trails模塊的話,必須在Renderer中給TrailMaterial賦值。
- Ratio:分配給某個粒子拖尾的幾率。
- Lifetime:拖尾存在的時間。
- MinimumVertexDistance:定義粒子在其Trail接收到新頂點之前必須行進的距離。接受新頂點以為重新定位Trail。
- TextureMode:
- WorldSpace:如果選用,即使應用LocalSimulationSpace,Trail頂點也不會隨著粒子系統(tǒng)的物體移動。并且,Trail會進入世界坐標系,并且忽略任何粒子系統(tǒng)的移動。
- DieWithParticle:Trail跟隨粒子系統(tǒng)銷毀。
- SizeAffectsWidth:如果勾選的話,Trail的寬度會乘粒子系統(tǒng)的尺寸。
- SizeAffectsLifetime:Trail的Lifetime乘以粒子系統(tǒng)的尺寸。
- InheritParticleColor:Trail的顏色會根據(jù)粒子的顏色調(diào)整。
- ColorOverTrail:用于控制Trail在曲線上的顏色。
- WidthOverTrail:用于控制Trail在曲線上的寬度。
TextureSheetAnimation模塊
- Mode:
- Grid:用網(wǎng)格來實現(xiàn)。
- Sprite:通過相同尺寸的Sprite實現(xiàn)粒子動畫。
- Tiles:網(wǎng)格的行列數(shù)。
- Animation:
- WholeSheet:動畫作用于整個表格。
- SingleRow:動畫只用于單獨一行。有一個隨機的選項可以選擇或者是選擇單獨的一行來做動畫。
- FrameOverTime:根據(jù)時間來播放幀,橫坐標是1s,縱坐標是幀數(shù)。
- StartFrame:開始的幀是哪一幀。
- Cycles:在1秒之內(nèi)循環(huán)播放的次數(shù)。
- FlipU:翻轉(zhuǎn)U。
- FlipV:翻轉(zhuǎn)V。
- EnabledUVChannels:
Renderer模塊
- RenderMode:
- Billboard:粒子總是面對相機。
- StretchedBillboard:伸展板,可以根據(jù)相機,速度,長度來調(diào)節(jié)粒子的縮放。
- HorizontalBillboard:粒子平面平行于Floor平面。
- VerticalBillboard:粒子平面平行于世界坐標的Y軸,但是面向相機。
- Mesh:將粒子渲染到網(wǎng)格上去。
- TrailMaterial:需要使用拖尾效果的時候,才附材質(zhì)。
- Material:用于渲染粒子的材質(zhì)。
- SortMode:
- ByDistance:根據(jù)粒子離相機的距離渲染。
- OldestInFront:先渲染出來的在最上層。
- YoungestInFront:后渲染出來的在最上層。
- SortingFudge:排序容差,僅影響整個系統(tǒng)在場景中出現(xiàn)的位置。Sorting值越小,就越容易粒子系統(tǒng)在其它透明的GameObjects上繪制的機會。
- Pivot:修改粒子渲染的軸點。
- VisualizePivot:可視化軸點。
- Masking:
- CustomVertexStreams:在材質(zhì)的頂點著色器中配置哪些粒子屬性可用。
- CastShadows:使用陰影。
- ReceiveShadows:規(guī)定陰影是否可以投射到粒子上,只有Opaque(不透明)的材質(zhì)可以接受陰影。
- MotionVectors:
總結(jié)
以上是生活随笔為你收集整理的Unity3D中粒子系统的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 微信小程序初始化 operateWXDa
- 下一篇: bzoj 1024 [SCOI2009]