Unity3D ParticleSystem粒子系統(3.5版)【初級】


原創文章如需轉載請注明:轉載自 脫莫柔Unity3D學習之旅 QQ群:119706192本文鏈接地址: Unity3D ParticleSystem粒子系統(3.5版)【初級】

創建"粒子系統物體"(點擊菜單GameObject -> Create Other -> Particle System)

添加"粒子系統組件"(點擊Component -> Effects  -> Particle System)

粒子系統檢視面板

 點擊粒子系統檢視面板的右上角的"+"來增加新的模塊。(Show All Modules:顯示全部

初始化模塊:

  • 持續時間(Duration):粒子系統發射粒子的持續時間
  • 循環(Looping):粒子系統是否循環
  • 預熱(Prewarm):當looping開啟時,才能啟動預熱(Prewarm),游戲開始時粒子已經發射了一個周期。
  • 初始延遲(Start Delay):粒子系統發射粒子之前的延遲。注意在prewarm(預熱)啟用下不能使用此項。
  • 初始生命(Start Lifetime)以秒為單位,粒子存活數量。
  • 初始速度(Start Speed):粒子發射時的速度。
  • 初始大小(Start Size):粒子發射時的大小。
  • 初始旋轉(Start Rotation):粒子發射時的旋轉值。
  • 初始顏色(Start Color):粒子發射時的顏色。
  • 重力修改器(Gravity Modifier):粒子在發射時受到的重力影響。
  • 繼承速度(Inherit Velocity):---控制粒子速率的因素將繼承自粒子系統的移動(對於移動中的粒子系統)。
  • 模擬空間(Simulation Space):粒子系統在自身坐標系還是世界坐標系。
  • 喚醒時播放(Play On Awake):如果啟用粒子系統當在創建時,自動開始播放。
  • 最大粒子數(Max Particles):粒子發射的最大數量

發射模塊(Emission):

控制粒子的發射時的速率,在粒子系統存續期間可以在某個時間生成大堆粒子(模擬爆炸)。

  • 速率(Rate):每秒的粒子發射的數量 (小箭頭可選擇“每秒(Time)”或“每米(Distance)”)。
  • 突發(Bursts):在粒子系統生存期間增加爆發
  • 爆炸的時間 | 數量(Time | Particles):指定時間(在生存期內,以秒(Time)為單位時),將發射指定數量的粒子。用"+"或"-"調節爆發數量。

發射器形狀模塊(Shape):

發射器形狀內部隨機位置生成,並能提供初始的力,該力的方向將延表面法線或隨機方向發射。

  1. 球體【Sphere】
    • 半徑(Radius):球體的半徑。
    • 從外殼發射(Emit from Shell):從球體外殼發射。
    • 隨機方向(Random Direction):隨機方向或是沿表面法線。
  2. 半球【Hemisphere】
    • 半徑(Radius):半橢圓的半徑。
    • 從外殼發射(Emit from Shell):從半橢圓外殼發射。
    • 隨機方向(Random Direction):隨機方向或是沿表面法線。
  3. 錐體【Cone】喇叭~
    • 角度(Angle):圓錐的角度(喇叭口)。如果是0,粒子將延一個方向發射(直筒)。
    • 半徑(Radius ):發射口半徑。
  4. 立方體【Box】
    • Box X:X軸的縮放值
    • Box Y:Y軸的縮放值
    • Box Z:Z軸的縮放值
    • 隨機方向(Random Direction):粒子將延一個隨機方向發射(取消:延Z軸發射)。
  5. 網格【Mesh】
    • 類型(Type):粒子將從頂點(Vertex)、邊(Edge)、或三角面(Triangle)發射。
    • 網格(Mesh):選擇一個面作為發射面。
    • 隨機方向(Random Direction):粒子發射將隨機方向或是沿表面法線。

存活時間的速度模塊(Velocity Over Lifetime): 

粒子的直接動畫路徑。(通常用於復雜物理粒子,不過是簡單的視覺行為和物理世界的小互動,如與飄盪的煙霧和氣溫降低。)

  • XYZ:使用常量曲線或在曲線中隨機去控制粒子的運動。
  • Space:局部/世界 速度值在局部還是世界坐標系。

存活期間的限制速度模塊(Limit Velocity Over Lifetime):

-基本上被用於模擬的拖動。如果有了確定的閥值,將抑制或固定速率。可以通過坐標軸或向量調整。

  • 分離軸(Separate Axis):用於每個坐標軸控制。
  • ----速度(Speed):用常量或曲線指定來限制所有方向軸的速度。(未選中)
  • ----XYZ:用不同的軸分別控制。見最大最小曲線。(選中)
  • 阻尼(Dampen):(0-1)的值確定多少過度的速度將被減弱。(值為0.5,將以50%的速率降低速度)

存活期間的受力模塊(Force Over Lifetime):

  • XYZ:使用常量或隨機曲線來控制作用於粒子上面的力。
  • Space:Local自己的坐標系,World世界的坐標系。
  • 隨機(Randomize):每幀作用在粒子上面的力都是隨機的。(兩組xyz時可選擇,隨機范圍是這兩組xyz之間的差值。)

存活時間的顏色模塊(Emission):

控制每個粒子存活期間的顏色(與初始顏色疊加)。粒子存活時間越短變化越快。

兩種顏色隨機比例互相疊加。

顏色速度模塊(Color By Speed):

使粒子顏色根據其速度動畫化。為顏色在1個特定范圍內重新指定速度。

  • 顏色(Color):用於指定的顏色。使用漸變色來指定各種顏色。
  • 顏色縮放(Color Scale):使用顏色縮放可以方便的調節純色和漸變色。
  • 速度范圍(Speed Range):min和max值用來定義顏色速度范圍。

存活時間的大小模塊(Size Over Lifetime):

  • 大小(Size):控制每個粒子在其存活期間內的大小。曲線,隨機雙曲線或隨機范圍數值。

存活時間的大小速度模塊(Size By Speed):

 

  • 大小(Size):大小用於指定速度。用曲線表示各種大小。
  • 速度范圍(Speed Range):min和max值用來定義大小速度范圍。

存活期間的旋轉速度模塊(Rotation Over Lifetime):

以度為單位指定值。

  • 旋轉速度(Rotational Speed):控制每個粒子在其存活期間內的旋轉速度。使用常量,曲線,2曲線隨機。

旋轉速度模塊(Rotation By Speed):

 

  • 旋轉速度(Rotational Speed):用來重新測量粒子的速度。使用曲線表示各種速度。
  • 速度范圍(Speed Range):為min和max值用來定義旋轉速度范圍。

碰撞模塊(Collision Module):

為粒子系統建立碰撞。現在只有平面碰撞被支持,這個將很有效率的做簡單探測。

  • 平面(Planes):Planes被定義為指定引用。可以動畫化。如果多個面被使用,Y軸作為平面的法線。
  • 阻尼(Dampen):0-1 在碰撞后變慢。
  • 反彈(Bounce):0-1 當粒子碰撞后的反彈力度。
  • 生命減弱(Lifetime Loss):(0-1) 每次碰撞勝銘減弱的比例。0,碰撞后粒子正常死亡。1,碰撞后粒子立即死亡。
  • 可視化(Visualization):可視化平面:網格還是實體
  • -----網格(Grid):在場景渲染為輔助線框。
  • ----實體(Solid):在場景渲染為平面。
  • 縮放平面(Scale Plane):重新縮放平面

 

子粒子發射模塊(Sub Emitter):

可以生成其他粒子系統,用下列的粒子事件:出生、死亡、碰撞。

  • 出生(Birth):在每個粒子出生的時候生成其他粒子系統
  • 死亡(Death):在每個粒子死亡的時候生成其他粒子系統
  • 碰撞(Collision):在每個粒子碰撞的時候生成其他粒子系統。重要的 碰撞需要建立碰撞模塊。見碰撞模塊

紋理層動畫模塊(Texture Sheet Animation):

 

在粒子存活期間動畫化UV坐標。動畫每幀可以顯示在表格或1個表格的每行,這樣將動畫分開。每幀可以用曲線動畫或者在2個曲線取隨機。速度被定義為"循環"、
注意:用於動畫的紋理是在渲染器模塊中材質找到使用的。

  • 平鋪(Tiles):定義紋理的平鋪
  • 動畫(Animation):指定動畫類型:整個表格或是單行。
  • ----整個表(Whole Sheet):為UV動畫使用整個表格。
  • -------時間幀(Frame over Time):在整個表格上控制UV動畫。使用常量,曲線,2曲線隨機。
  • ----單行(Single Row):為UV動畫使用表格單獨一行。
  • -------隨機行(Random Row):如果選擇第一行隨機,不選擇得指定行號(第一行是0)
  • -------時間幀(Frame over Time):在1個特定行控制每個粒子的UV動畫。使用常量,曲線,2曲線隨機。
  • 周期(Cycles):指定動畫速度。

 

渲染器模塊(Renderer):

渲染模塊顯示粒子系統渲染組件的屬性。注意:即使一個游戲物體有渲染粒子系統組件,當此模塊被刪除/添加后,它的屬性也只能顯示在這里。這個實際上是粒子系統渲染組件的添加和刪除。

  • 渲染模式(Render Mode):選擇下列粒子渲染模式之一
  • ----廣告牌(Billboard):讓粒子永遠面對攝像機。
  • ----拉伸廣告牌(Stretched Billboard):粒子將通過下面屬性伸縮。
  • -------攝像機縮放(Camera Scale):決定攝像機的速度對粒子伸縮的影響程度。
  • -------速度縮放(Speed Scale):通過比較速度來決定粒子的長度。
  • -------長度縮放(Length Scale):通過比較寬度來決定粒子的長度。
  • ----水平廣告牌(Horizontal Billboard):讓粒子延Y軸對齊,面朝Y軸方向。
  • ----垂直廣告牌(Vertical Billboard):當面對攝像機時,粒子延XZ軸對齊。
  • ----網格(Mesh):粒子被渲染時使用mesh而不是quad。
  • -------網格(Mesh):渲染粒子所用的網格引用。
  • 材質(Material):材質。
  • 排序模式(Sort Mode):繪畫順序可通過具體,生成早優先和生成晚優先。
  • 排序校正(Sorting Fudge):使用這個將影響繪畫順序。粒子系統帶有更低sorting fudge值,更有可能被最后繪制,從而顯示在透明物體和其他粒子系統的前面 。
  • 投射陰影(Cast Shadows):粒子能否投影?這是由材質決定的。
  • 接受陰影(Receive Shadows):粒子能否接受陰影?這是由材質決定的。
  • 最大粒子大小(Max Particle Size):設置最大粒子大小,相對於視窗大小。有效值為0-1。

粒子系統檢視面板

管理復雜的粒子效果,untiy提供了粒子編輯器,用戶從監事面板的粒子組件面板可以點擊"Open Editor"按鈕。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM