Unity-3D-游戲場景設計實例教程CHAPTER-7-Unity3D粒子系統(tǒng)詳解課件_第1頁
Unity-3D-游戲場景設計實例教程CHAPTER-7-Unity3D粒子系統(tǒng)詳解課件_第2頁
Unity-3D-游戲場景設計實例教程CHAPTER-7-Unity3D粒子系統(tǒng)詳解課件_第3頁
Unity-3D-游戲場景設計實例教程CHAPTER-7-Unity3D粒子系統(tǒng)詳解課件_第4頁
Unity-3D-游戲場景設計實例教程CHAPTER-7-Unity3D粒子系統(tǒng)詳解課件_第5頁
已閱讀5頁,還剩72頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、Unity 3D 游戲場景設計實例教程CHAPTER 7 Unity3D粒子系統(tǒng)詳解7.1 Legacy Particles粒子組件7.2 Particle System粒子系統(tǒng)7.4 Unity粒子實例落葉的制作7.3 Unity粒子實例火焰的制作7.1 Legacy Particles粒子組件 Legacy Particles 是舊版遺留的粒子系統(tǒng),我們可以在 Component 組件菜單下的 Effects選項下進行創(chuàng)建,Legacy Particles 共包括 5 個組件,分別為 Ellipsoid Particle Emitter(橢球粒子發(fā)射器)、Mesh Particle Emi

2、tter(網格粒子發(fā)射器)、Particle Animator(粒子動畫)、Particle Collider(粒子碰撞器)和 Particle Renderer(粒子渲染器),如圖 7-1 所示。圖 7-1 從組件菜單中創(chuàng)建舊版遺留粒子系統(tǒng) 舊版的粒子系統(tǒng)只能作為組件添加到游戲對象上,如果想要單獨創(chuàng)建粒子效果,我們可以先創(chuàng)建一個空物體(Ctrl+Shift+N),然后將粒子組件添加到空物體上。一個完整的粒子系統(tǒng)必須包含三個獨立的組件部分:粒子發(fā)射器、粒子動畫以及粒子渲染,所以想要創(chuàng)建粒子效果我們必須對空物體添加 Ellipsoid Particle Emitter 或 Mesh Partic

3、le Emitter、Particle Animator 以及 Particle Renderer 這三種粒子組件,如果我們想要粒子具有碰撞物理特性,還可以為其添加 Particle Collider。 將粒子組件添加到游戲對象上后,我們可以在 Inspector 面板中對參數(shù)進行設置,如圖 7-2 所示,首先來介紹 Particle Emitter 粒子發(fā)射器參數(shù),參數(shù)名稱、中文含義以及功能解釋如表 7-1 中所示。圖 7-2 舊版粒子系統(tǒng)組件參數(shù)面板表7-1 Min Emitter Range 最小發(fā)射范圍可以確定粒子產生在橢球內的深度,如果設置為 0,將允許粒子在從球體外部邊緣到中心范圍

4、內的任何地方產生。若設置為 1,將限制在球體的邊緣范圍產生粒子,如圖 7-3 所示。圖 7-3 最小發(fā)射范圍參數(shù)設置對比 Interpolate Triangles(插入三角形)命令如果激活,粒子會在網格模型物體的表面產生,如果沒有激活,粒子只能在網格模型的頂點產生,如圖 7-4 所示,其中右圖為選項啟動后的效果。Systematic(系統(tǒng)性),如果激活選項粒子將會按照網格物體的頂點順序產生,此選項通常較少使用。Min/Max Normal Velocity(正常速度)為粒子從網格物體上拋出的最小或最大數(shù)量。圖 7-4 Interpolate Triangles 命令示意圖表 7-2表 7-3

5、表 7-4 Stretch Particles伸展粒子下拉菜單中一共包括五個選項:Billboard表示當粒子面對鏡頭時才呈現(xiàn);Stretched是朝粒子運動的方向去做拉伸延展;Sorted Billboard是當用混合材質時,粒子會依照距離鏡頭的遠近做排列;Vertical Billboard為所有粒子沿著 X 和 Z 軸對齊飄動;Horizontal Billboard 是讓所有粒子沿著 X 和 Y 軸對齊飄動。 UV Animation粒子 UV動畫選項下包括三項設置:X Tile是根據(jù) X 軸每幀產生一次位移;Y Tile 是根據(jù) Y 軸每幀產生一次位移;Cycles 用來設置多久循環(huán)

6、一次。7.2 Particle System粒子系統(tǒng) Unity 3.5 版本更新后引入了全新的 Particle System 粒子系統(tǒng),之前舊版的粒子系統(tǒng)變成了遺留組件,兩個版本的粒子系統(tǒng)同時存在,雖然都可以制作各種類型的粒子特效,但新版粒子系統(tǒng)可以在 Hierarchy 面板中附加給任意的游戲對象,成為其子物體,而且可以無限制添加多個粒子系統(tǒng),舊版粒子系統(tǒng)只能作為組件添加給游戲對象,且只能添加一次不能重復。 我們在制作大型和復雜的粒子特效時,必須要通過多個粒子發(fā)射器相互疊加和組合,這時我們只能通過新版的粒子系統(tǒng)來實現(xiàn),同時新版粒子系統(tǒng)在粒子控制上更加復雜和多樣化,另外,從原則上來說 Un

7、ity 公司鼓勵用戶使用新版的粒子系統(tǒng),舊版粒子只是為了保證兼容性而保存下來。我們可以從 Unity 菜單欄 GameObject 游戲對象菜單下的Create Other 選項來創(chuàng)建 Particle System 粒子系統(tǒng),如圖 7-5 所示。圖 7-5 從游戲對象菜單下創(chuàng)建新版粒子系統(tǒng) 選中創(chuàng)建出來的粒子系統(tǒng),我們可以在 Inspector 面板中對其進行各項參數(shù)設置,首先在面板頂端顯示的是 Particle System 的初始化模塊,這是新版粒子系統(tǒng)的最基本模塊,它一直存在我們無法對其進行刪除或禁用,初始化模塊主要針對粒子的基本屬性進行設置,如圖 7-6 所示,下面通過表 7-5 來

8、詳細講解各項命令的功能含義。圖 7-6 粒子系統(tǒng)初始化模塊面板表 7-5 在 Particle System 初始化模塊面板下面還有一系列的選項面板,如圖 7-7 所示,每個面板都對應各種粒子控制選項參數(shù),我們可以有選擇性的啟用其中的一個或多個面板,下面針對每個面板的命令參數(shù)進行詳細講解。(1)Emission 發(fā)射模塊。 這個模塊用來控制粒子發(fā)射時的速率,可以在某個時間生成大量粒子,在模擬爆炸時非常有效。Rate(速率),每秒或每米的粒子發(fā)射的數(shù)量;Bursts(突發(fā)),在粒子系統(tǒng)生存期間增加爆發(fā);Time and Number of Particles(粒子的時間和數(shù)量),在指定時間發(fā)射指

9、定數(shù)量的粒子,用“+”或“-”按鈕調節(jié)爆發(fā)數(shù)量。圖 7-7 各項粒子系統(tǒng)參數(shù)控制面板(2)Shape 形狀模塊。 定義發(fā)射器的形狀,可以選擇球形、半球體、圓錐、盒子和網格模型,能提供初始的作用力,該作用力的方向將延表面法線或隨機生成表 7-6續(xù) 表(3)Velocity Over Lifetime 存活期間的速度模塊。 該面板用來控制粒子的直接動畫速度。X、Y、Z 用來控制粒子的運動方向,可以通過常量值或曲線來控制。Space/World(局部 / 世界),選擇速度是根據(jù)局部還是世界坐標系確定方向。(4)Limit Velocity Over Lifetime 存活期間的限制速度模塊。 可以控

10、制粒子模擬拖動效果,如果有了確定的閥值,將抑制或固定速率。Separate Axis(分離軸),用于每個坐標軸的控制;Speed(速度),用來控制粒子所有方向軸的速度,用 X、Y、Z 不同的軸向分別控制;Dampen(阻尼),通過 01 的數(shù)值確定多少過度的速度將被減弱,舉例來說,值為 0.5,將以 50% 的速率降低速度。(5)Force Over Lifetime 存活期間的受力模塊。 與Velocity Over Lifetime模塊參數(shù)基本相同。X、Y、Z 用來控制作用于粒子上面的力,可以通過常量值或曲線來控制;Space/World(局部 / 世界),選擇速度是根據(jù)局部還是世界坐標系

11、來確定方向;Randomize(隨機),每幀作用在粒子上面的力都是隨機的。(6)Color Over Lifetime 存活期間的顏色模塊。 Color(顏色),控制每個粒子在其存活期間的顏色,存活時間短的粒子變化會更快。 可以選擇常量顏色、兩色隨機、使用漸變動畫或在兩個漸變之間指定一個隨機值。(7)Color by Speed 顏色速度模塊。 該模塊可以使粒子顏色根據(jù)其速度產生動畫效果,為顏色在一個特定范圍內重新指定速度。Color 顏色選項與 Color Over Lifetime 模塊中的相同。Speed Range(速度范圍),Min 和 Max 值用來定義顏色速度范圍。(8)Size

12、 Over Lifetime 存活期間的尺寸模塊。 Size(尺寸大?。?,控制每個粒子在其存活期間內的大小,可以通過常量、曲線或兩曲線間隨機等方式進行控制。(9)Size By Speed 存活期間的尺寸速度模塊。 Size(尺寸大?。?,用于指定速度。Speed Range(速度范圍),Min 和 Max 值用來定義速度的范圍。(10)Rotation Over Lifetime 存活期間的旋轉速度模塊。Angular Velocity(旋轉速度),控制每個粒子在其存活期間內的旋轉速度,可以使用常量、曲線、兩常量間隨機或兩曲線間隨機來進行控制。(11)Rotation By Speed 旋轉速

13、度模塊。 Angular Velocity(旋轉速度),與 Rotation Over Lifetime 模塊中的參數(shù)含義相同,用來控制粒子的旋轉速度。Speed Range(速度范圍),用兩個常量數(shù)值來定義旋轉速度范圍。(12)Collision 碰撞模塊。 為粒子系統(tǒng)建立物理碰撞,現(xiàn)在只支持平面碰撞。下面通過表 7-7 來詳細了解功能參數(shù)的含義。表 7-7續(xù) 表(13)Sub Emitter 次級粒子發(fā)射模塊。 這是一個非常好用的模塊,當粒子在出生、死亡和碰撞時可以生成其他次級粒子。 Birth(出生),在每個粒子出生的時候生成其他粒子系統(tǒng);Death(死亡),在粒子死亡的時候生成其他粒子

14、系統(tǒng);Collision(碰撞),在粒子碰撞的時候生成其他粒子系統(tǒng)。(14)Texture Sheet Animation 紋理層動畫模塊。 在粒子系統(tǒng)存活期間設置面片的 UV 動畫。Tiles(平鋪),定義貼圖紋理的平鋪;Animation(動畫),指定動畫類型,可以選擇整格或是單行;Cycles(周期),指定 UV 動畫的循環(huán)速度。(15)Renderer 渲染器模塊。 渲染模塊顯示粒子系統(tǒng)渲染組件的屬性,具體參數(shù)命令含義見表 7-8。表 7-8續(xù) 表7.3 Unity粒子實例火焰的制作 火焰是游戲中常見的粒子特效,通常用于制作火把、火盆、法術或大面積的燃燒效果,如圖 7-8 所示?;鹧嫘?/p>

15、果的制作應用了最基本的粒子參數(shù)設定,可以幫助初學者更加直觀和快速地掌握 Unity 粒子系統(tǒng),本節(jié)就帶領大家了解火焰粒子特效的制作流程和方法。圖 7-8 各種類型的火焰粒子特效 首先在 3ds Max 中制作一個三足銅鼎模型,用來作為火焰燃燒的載體,如圖 7-9 所示。圖 7-9 制作銅鼎模型 將制作完成的銅鼎模型導出為 FBX 文件,這里注意模型、材質球和貼圖的名稱要統(tǒng)一。將 FBX 和模型貼圖文件放置于 Unity 項目文件夾下的 Assets 目錄中,在 Unity 引擎編輯器中新建一個場景,將銅鼎模型導入到 Unity 場景視圖中,將銅鼎材質球的 Shader 設置為 Specular

16、 高光模式,如圖 7-10 所示。圖 7-10 將模型導入到 Unity 引擎編輯器中 接下來通過 Unity 菜單欄中的 GameObject 菜單創(chuàng)建一個 Particle System 默認粒子系統(tǒng),將粒子系統(tǒng)移動對齊到銅鼎模型的上方,如圖 7-11 所示。圖 7-11 創(chuàng)建 Particle System 粒子系統(tǒng) 然后通過 Inspector 面板對粒子系統(tǒng)的參數(shù)進行設置,我們首先選中激活粒子系統(tǒng)的 Shape 面板,將粒子發(fā)射器的形狀設置為 Cone 類型,調整發(fā)射器圓柱圖形的半徑以及高度,如圖 7-12 所示。圖 7-12 調整粒子發(fā)射器外形 我們暫時把白色的粒子光球看作噴發(fā)出的

17、火焰,然后對粒子的基本參數(shù)進行設置,在初始化模塊中設置 Start Lifetime(初始生命存活時長)、Start Speed(初始速度)和 Start Size(初始粒子尺寸大?。┑葏?shù),調整粒子噴射的形態(tài),讓其具有火焰的基本外觀,如圖 7-13 所示。圖 7-13 調整粒子基本參數(shù) 利用Project項目面板中的 Create 按鈕新建一個材質球(Material),然后為其添加一張火焰的Alpha特效貼圖,將材質球的Shader設置為Transparent/ VertexLit模式,將材質球的主色調和高光色都設置為純白,如圖 7-14 所示。圖 7-14 創(chuàng)建火焰材質球 選擇粒子系統(tǒng),

18、激活下方的Renderer渲染面板,將剛剛制作的火焰材質球拖曳添加到渲染面板的Material選項中,渲染模式保持默認的Billboard(粒子面片永遠正對攝像機鏡頭)模式,這時我們就能看到火焰粒子的噴射效果了,如圖 7-15 所示。圖 7-15 將火焰材質添加到粒子系統(tǒng)中 這時火焰特效存在一個問題,就是粒子面片由從下方生成到消失在頂部,自始至終都是保持同一尺寸大小,火焰的噴射整體呈火柱狀,缺乏真實感,所以下一步我們需要對 Size Over Lifetime(存活期間的尺寸)模塊的參數(shù)進行設置,讓其火焰呈錐狀噴射。選中激活 Size Over Lifetime 模塊面板,選擇利用曲線來控制

19、Size 參數(shù),同時返回粒子初始化模塊,進一步調整粒子的各項參數(shù),這樣就制作出了真實的火焰粒子燃燒效果,如圖 7-16 所示。圖 7-16 進一步調整粒子參數(shù) 火焰特效制作完成后,我們可以利用同樣的方法制作出煙霧特效,讓火焰的燃燒更具真實感,煙霧粒子特效的參數(shù)設置與火焰特效基本相同,只是具體的參數(shù)數(shù)值不同,煙霧粒子應該比火焰粒子的存活時間更長,這樣才能夠實現(xiàn)煙霧的揮發(fā)效果,如圖 7-17 所示。圖 7-17 制作煙霧粒子特效 火焰和煙霧的粒子特效都制作完成后,我們在Hierarchy面板中將兩個粒子系統(tǒng)都拖曳到銅鼎模型的名稱上,這樣就實現(xiàn)了子父級關系的設定,如圖 7-18 所示,之后我們在引擎

20、編輯器中移動銅鼎模型,兩個粒子系統(tǒng)便會同時跟隨移動。最后在場景視圖中創(chuàng)建一盞點光源,調整攝像機的位置,然后單擊工具欄的播放按鈕,就可以在游戲視圖中觀看最終的特效效果了,如圖 7-19 所示。圖 7-18 設置父子層級關系圖 7-19 游戲視圖中的粒子效果7.4 Unity粒子實例落葉的制作 游戲中的粒子特效我們可以大致分為密集型粒子和分散型粒子。顧名思義,密集型粒子是指粒子個體分布比較密集的特效類型,如火焰、煙霧、爆炸和光束等。分散型粒子是指粒子個體排列相對分散的特效類型,如螢火蟲、落葉、下雨(見圖 7-20)等。在上一節(jié)中以火焰特效為例介紹了密集型粒子的制作方法,本節(jié)將以落葉效果為例為大家講解分散型粒子特效的制作流程。首先,在 3ds Max 中制作一棵樹木的植物模型,如圖 7-21 所示。圖 7-20 游戲中的下雨天氣粒子特效圖 7-21 制作樹木植物模型 將模型整體導出為FBX文件,啟動Unity引擎編輯器,新建項目文件和場景,然后將FBX文件連同模型貼圖文件一起放到Unity項目文件夾下的Assets 資源目錄中,這樣我們就完成了植物模型資源的導入,在Project項目面板中拖曳樹木模型到場景視圖,如圖7-22所示。樹葉和樹藤的材質球Shader要選擇Transparent半透明模式或Natural植物模式。圖 7-22 將樹木模型導入到

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論