溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

c#如何使用Unity粒子實(shí)現(xiàn)炮塔發(fā)射系統(tǒng)

發(fā)布時間:2022-04-26 10:24:36 來源:億速云 閱讀:246 作者:iii 欄目:開發(fā)技術(shù)

今天小編給大家分享一下c#如何使用Unity粒子實(shí)現(xiàn)炮塔發(fā)射系統(tǒng)的相關(guān)知識點(diǎn),內(nèi)容詳細(xì),邏輯清晰,相信大部分人都還太了解這方面的知識,所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來了解一下吧。

一、進(jìn)行粒子效果生成練習(xí)

1、生成一個空項(xiàng)目

Assets->Import Package->Custom Package->SceneShot.unitypackage

c#如何使用Unity粒子實(shí)現(xiàn)炮塔發(fā)射系統(tǒng)

c#如何使用Unity粒子實(shí)現(xiàn)炮塔發(fā)射系統(tǒng)

2、創(chuàng)建一個粒子系統(tǒng)

GameObject->Effects->Particle System

在場景中創(chuàng)建一個粒子系統(tǒng),并將其移動到場景中的Turret炮塔對象的發(fā)射管前

c#如何使用Unity粒子實(shí)現(xiàn)炮塔發(fā)射系統(tǒng)

3、更改粒子系統(tǒng)參數(shù)

Duration:3.32
Start Delay:1
Start Lifetime:1 - 10
Start Speed:Curve
Start Size:0.87
Start Rotation:180
Start Color:Gradent(#2EFE2E - #FFFFFF)
Simulation Space:Custom
Custom Simulation Space:Cube(Transform)
Max Particles:500

c#如何使用Unity粒子實(shí)現(xiàn)炮塔發(fā)射系統(tǒng)

4、Emission屬性更改參數(shù)

Rate over Time:0Rate over Distance:0

Brusts

TimeCountCyclesIntervalProbability
01482infinite0.011

c#如何使用Unity粒子實(shí)現(xiàn)炮塔發(fā)射系統(tǒng)

5、Shape屬性更改參數(shù)

Shape:Sphere

Radius:3.52

Radius Thickness:0

c#如何使用Unity粒子實(shí)現(xiàn)炮塔發(fā)射系統(tǒng)

6、發(fā)射管相關(guān)參數(shù)

Inspector->Position: 通過鼠標(biāo)移到兩個發(fā)射管之一
Inspector->Ratation: x=0, y=0, z=0
Inspector->Particle System->Start Lifetime:0.5,
Max Particles:100
Inspector->Particle System->Emission->Rate:500
Inspector->Particle System->Shape:Cone, Angle:0.5
Inspector->Particle System->Velocity over Lifetime->打勾,Z: 10
Inspector->Particle System->Color over Lifetime->打勾,選紅色
Inspector->Particle System->Renderer->打勾,
Render Mode:Stretched Billboard, Length Scale: 0.5,

c#如何使用Unity粒子實(shí)現(xiàn)炮塔發(fā)射系統(tǒng)

7、發(fā)射管粒子對象

(1)Hierarchy-〉Particle System-〉Edit-〉Duplicate,復(fù)制另一個粒子對象,并拖到另一個發(fā)射管前

(2)運(yùn)行,察看粒子運(yùn)行效果

(3)再次單擊Play按鈕,結(jié)束游戲。

(4)按Ctrl+S,保存場景

(5)將另一個發(fā)射管前的粒子參數(shù)做一個更改,觀察二者的區(qū)別。如修改shape->shape,將值由Cone改為Sprte。

c#如何使用Unity粒子實(shí)現(xiàn)炮塔發(fā)射系統(tǒng)

二、粒子系統(tǒng)參數(shù)總結(jié)

1、主面板Particle System

Duration:粒子發(fā)射周期,意思就是在發(fā)射3.32秒以后進(jìn)入下一個粒子發(fā)射周期。如果沒有勾選looping的話,3.32秒之后粒子會停止發(fā)射。

Looping:粒子按照周期循環(huán)發(fā)射。

Prewarm:預(yù)熱系統(tǒng),比如說我有一個空間大小的粒子系統(tǒng),但是粒子發(fā)射速度有限,我想在最開始的時候讓粒子充滿空間,此時就應(yīng)該勾選Prewarm。

StartDelay:粒子延時發(fā)射,勾選后,延長一段時間才開始發(fā)射。

StartLifeTime:粒子從發(fā)生到消失的時間長短。

StartSpeed:粒子初始發(fā)生時候的速度。

3DStartSize:這個屬性是當(dāng)你需要把粒子在某一個方向上擴(kuò)大的時候使用。

StartSize:粒子初始的大小。

3DStartRotation:需要在一個方向旋轉(zhuǎn)了子的時候可以使用。

StartRotation:粒子初始旋轉(zhuǎn)。

RandomizeRotation:隨機(jī)旋轉(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)的大小。

MaxParticles:粒子系統(tǒng)可以同時存在的最大粒子數(shù)量。如果粒子書數(shù)量超過最大值粒子系統(tǒng)會銷毀一部分粒子。

AutonRandomSeed:隨機(jī)種子,如果勾選會生成完全不同不重復(fù)的粒子效果,如果勾選即為可重復(fù)。

2、Emission模塊

RateOverTime:隨單位時間生成粒子的數(shù)量。

RateOverDistance:隨著移動距離產(chǎn)生的粒子數(shù)量。只有當(dāng)粒子系統(tǒng)移動時,才發(fā)射粒子。

  • Bursts:

Time:從第幾秒開始。

Min:最小粒子數(shù)量。

Max:最大的粒子數(shù)量,粒子的數(shù)量會在Min和Max之間隨機(jī)。

Cycles:在一個周期中循環(huán)的次數(shù)。

Interval:兩次兩次Cycles的間隔時間。

3、Renderer模塊

(1)RenderMode

  • Billboard:粒子總是面對相機(jī)。

  • StretchedBillboard:伸展板,可以根據(jù)相機(jī)、速度、長度來調(diào)節(jié)粒子的縮放。

  • HorizontalBillboard:粒子平面平行于Floor平面。

  • VerticalBillboard:粒子平面平行于世界坐標(biāo)的Y軸,但是面向相機(jī)。

  • Mesh:將粒子渲染到網(wǎng)格上去。

(2)TrailMaterial:需要使用拖尾效果的時候,才附材質(zhì)。

(3)Material:用于渲染粒子的材質(zhì)。

(4)SortMode

  • ByDistance:根據(jù)粒子離相機(jī)的距離渲染。

  • OldestInFront:先渲染出來的在最上層。

  • YoungestInFront:后渲染出來的在最上層。

(5)SortingFudge:排序容差,僅影響整個系統(tǒng)在場景中出現(xiàn)的位置。Sorting值越小,就越容易粒子系統(tǒng)在其它透明的

(6)GameObjects上繪制的機(jī)會。

(7)Pivot:修改粒子渲染的軸點(diǎn)。

(8)VisualizePivot:可視化軸點(diǎn)。

Masking:

  • CustomVertexStreams:在材質(zhì)的頂點(diǎn)著色器中配置哪些粒子屬性可用

  • CastShadows:使用陰影。

ReceiveShadows:規(guī)定陰影是否可以投射到粒子上,只有Opaque(不透明)的材質(zhì)可以接受陰影。

以上就是“c#如何使用Unity粒子實(shí)現(xiàn)炮塔發(fā)射系統(tǒng)”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會為大家更新不同的知識,如果還想學(xué)習(xí)更多的知識,請關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI