精品欧美无遮挡一区二区三区在线观看,中文字幕一区二区日韩欧美,久久久久国色αv免费观看,亚洲熟女乱综合一区二区三区

        ? 首頁 ? 百科知識 ?煙霧的制作

        煙霧的制作

        時間:2023-10-16 百科知識 版權(quán)反饋
        【摘要】:Sprite(精靈)粒子最簡單的屬性能夠產(chǎn)生的效果在前兩節(jié)已經(jīng)學(xué)過了,這一節(jié)就是用常用屬性制作常用特效煙霧。使用Cloud粒子也可以制作煙霧,但是與使用Sprite(精靈)粒子制作煙霧產(chǎn)生的效果是不一樣的,這一點(diǎn)我們可以在制作完畢Sprite(精靈)粒子煙霧以后將粒子類型改變成Cloud來了解其中的區(qū)別。

        第四節(jié) 煙霧的制作

        Sprite(精靈)粒子最簡單的屬性能夠產(chǎn)生的效果在前兩節(jié)已經(jīng)學(xué)過了,這一節(jié)就是用常用屬性制作常用特效煙霧。

        使用Cloud粒子也可以制作煙霧,但是與使用Sprite(精靈)粒子制作煙霧產(chǎn)生的效果是不一樣的,這一點(diǎn)我們可以在制作完畢Sprite(精靈)粒子煙霧以后將粒子類型改變成Cloud來了解其中的區(qū)別。

        要制作出煙霧,首先要制作煙霧的圖片序列,當(dāng)然可以從素材庫里找到,但是這里我們還是自己制作:

        首先在場景里面創(chuàng)建一個球體,我們將使用這個球體制作煙霧的貼圖元素:

        img743

        為球體添加一個新的lambert材質(zhì),然后將透明度調(diào)整到最高,使球體徹底透明:

        img744

        然后為材質(zhì)的Incandescence進(jìn)行貼圖,使用Maya的三維程序文理Cloud紋理:

        Incandescence貼圖:

        img745

        將Cloud紋理的參數(shù)作如下圖的調(diào)整,進(jìn)行渲染測試:

        img746

        粒子要貼的圖像元素大致圖像效果差不多了,接下來就是讓它變成動畫了,方法很簡單,只需要動畫3d紋理的紋理坐標(biāo)就可以了:

        img747

        然后把攝影機(jī)正對著紋理坐標(biāo)前進(jìn)的方向,渲染得到煙霧的元素序列:

        img748

        將渲染器的渲染尺寸設(shè)置成為64*64:

        img749

        最后渲染得到100張的圖片序列,但是我們制作貼圖的圖片序列使用的是材質(zhì)的Incandescence進(jìn)行貼圖,所以是沒有通道信息的,這樣直接貼圖到Sprite粒子上面是不會產(chǎn)生應(yīng)有的透明的。所以我們使用后期軟件制作圖片序列的通道。

        我們使用AdobeAfterEffect來制作通道,先倒入圖片序列:

        將圖片序列倒入以后,創(chuàng)建一個圖層軌道。

        img750

        創(chuàng)建通道的方法是使用SetMate來制作,首先復(fù)制一層軌道,然后命名為:通道層。

        img751

        接下來選擇圖片序列,使用菜單命令:Effect→channel→setmate為圖片序列制造通道,將該特效參數(shù)進(jìn)行如下設(shè)置:

        img752

        這樣圖片序列的通道就使用了自身的亮度(Luminance)信息,接下來隱藏掉“通道層”,于是有通道的圖片序列制作好了:

        img753

        顏色:

        img754

        通道:

        img755

        接下來就是將軌道上的內(nèi)容輸出成為含有通道的圖片序列(使用Tga格式),使用菜單命令Composition→MakeMove:

        img756

        于是,煙霧的貼圖元素制作完成了。接下去回到Maya中,我們制作一個需要用到煙霧的場景,這里制作一個車輪,快速的旋轉(zhuǎn)摩擦土地就會需要制作產(chǎn)生煙霧了:

        img757

        接下來,既然是輪子摩擦地面發(fā)出煙霧,那么就在輪子和地面交界處創(chuàng)建一個粒子發(fā)射器來產(chǎn)生粒子,然后使用力場和表達(dá)式控制粒子制作出煙霧來就可以了。

        所以首先還是使用菜單命令:Particles→CreateEmiter在輪子和地面交界處創(chuàng)建一個粒子發(fā)射器:

        使用體積發(fā)射器:

        img758

        體積類型為Cylinder:

        img759

        發(fā)射器發(fā)射速度屬性設(shè)置如下:

        img760

        在場景里如圖放置粒子發(fā)射器:

        img761

        車輪這就發(fā)出摩擦?xí)r的煙霧了,接下來用力場控制粒子的運(yùn)動產(chǎn)生煙霧的運(yùn)動。

        煙霧在摩擦?xí)r發(fā)出來,然后向車輪的反方向運(yùn)動,并向上飄起來,所以使用力場Uniform(統(tǒng)一場)來制作粒子向上的運(yùn)動是最好的,所以選中發(fā)射出來的粒子,使用菜單命令Fields→Uniform創(chuàng)建一個統(tǒng)一場(Uniform):

        img762

        img763

        接下來將粒子的生命周期調(diào)整到合適大?。?/p>

        img764

        增加粒子發(fā)射器的發(fā)射量(Rate到合適的數(shù)值:)

        img765

        于是,煙霧粒子的運(yùn)動狀態(tài)如下:

        img766

        這似乎有一點(diǎn)過于有規(guī)律了,灰塵的質(zhì)量并不是都一樣的,受力情況也是不一樣的,同時車輪后面是有亂流的,所以氣流也會有混亂。

        所以我們模仿真實情況,將粒子的質(zhì)量(mass)設(shè)置成為各不相同,為粒子的mass屬性添加Creation表達(dá)式:

        particleShape1.mass=rand(0,1);//每一個粒子的質(zhì)量都是一個0~1之間的隨機(jī)數(shù),這樣質(zhì)量不同,受到相同的力,速度就會不一樣,所以效果如下:

        img767

        img768

        接下來模仿車輪后面的亂流,使用一個混亂場就可以了,所以選擇粒子使用菜單命令Fields→Turblence為粒子創(chuàng)建一個亂流:

        img769

        總體的運(yùn)動差不多了:

        img770

        接下去就是制作煙霧了,首先當(dāng)然是把粒子類型轉(zhuǎn)換成Sprite類型,然后為粒子賦予Lambert材質(zhì),并給Color屬性一個文件紋理貼圖,使用上一節(jié)的知識我們很容易制作出使用循環(huán)動畫貼圖的Sprite(精靈)粒子。

        首先將粒子屬性改為Sprite類型:

        img771

        接下來給Sprite粒子一個新的Lambert材質(zhì),同時給Color屬性一個文件紋理貼圖使用煙霧貼圖序列的第一張(名字是Smoke.0000.iff):

        img772

        利用上一節(jié)學(xué)過的知識,很容易就可以將我們前面制作的煙霧的圖片序列進(jìn)行循環(huán)貼圖到Sprite粒子上面。

        使用UseImsgeSequence,并設(shè)置關(guān)鍵幀如下圖,同時啟動粒子貼圖緩存(UseInteractiveCathing)并且進(jìn)行設(shè)置如下:

        啟動貼圖序列:

        img773

        經(jīng)過上面的設(shè)置可以確定貼圖已經(jīng)循環(huán)了,然而現(xiàn)在的煙霧實在是慘不忍睹,所以接下來一步步的把這個很惡心的東西變成我們想要的煙霧。

        首先當(dāng)然是改變粒子的大小了,煙霧從車輪子下面出來的時候是很小很濃密的,隨之會逐漸變得面積很大顏色很淡,位置當(dāng)然也屬越來越高,最后淡到看不見為止,粒子的運(yùn)動我們已經(jīng)做好了?,F(xiàn)在先做大小變化,當(dāng)然還是添加spriteScaleYPP粒子屬性和.spriteScaleXPP屬性了:

        img774

        這兩個屬性分別控制了粒子在X和Y軸上的縮放比例的大小,我們需要粒子在生命周期開始的時候很小,在生命周期即將結(jié)束的時候變得最大,所以只需要為這兩個屬性創(chuàng)建Ramp控制就可以了。為了方便期間我們可以為兩個屬性使用同一個Ramp因為我們并不需要分別控制兩個方向的大小,只要一樣就可以了。

        先為spriteScaleXPP屬性添加Ramp控制,然后再Hapershade里面顯示粒子的輸入和輸出節(jié)點(diǎn),然后找到ArryMaper節(jié)點(diǎn),用鼠標(biāo)中鍵托放到粒子上面選擇defult,默認(rèn)的會自動打開ConnectionEditor:

        img775

        在彈出的ConnectionEditor里面連接OutValuePP和SpriteScaleYpp:

        img776

        這樣我們就是用一個Ramp控制了兩個屬性,操作起來就很方便了,我們將Ramp進(jìn)行如下調(diào)整:

        img777

        粒子變得從小到大了,但是小的太小,大的太大,所以進(jìn)一步我們要調(diào)整最大值和最小值:

        選擇粒子,在spriteScaleYPP粒子屬性或者spriteScaleXPP屬性上面用鼠標(biāo)右鍵單擊,在彈出菜單里面選擇EditArrayMapper:

        img778

        然后對參數(shù)進(jìn)行如下調(diào)整:

        img779

        可以自己隨意調(diào)整覺得合適的參數(shù),直到覺得粒子的大小滿意為止:

        img780

        濃煙滾滾,這個效果顯得比較夸張,接下來就進(jìn)入了細(xì)節(jié)調(diào)整階段,首先是透明度的控制,因為我們認(rèn)為這個煙太濃密了,根本就沒有辦法看出我們辛苦制作的煙霧貼圖的細(xì)節(jié)效果來,所以為粒子添加OpacityPP屬性,然后使用ramp控制粒子的透明,在生命周期里進(jìn)行改變,還是使用默認(rèn)創(chuàng)建就可以了。

        添加OpacityPP屬性:

        img781

        創(chuàng)建Ramp控制:

        img782

        調(diào)整Ramp結(jié)構(gòu):

        img783

        通過對透明的控制產(chǎn)生了足夠的透明感,但是煙霧還是黑色的,看來,僅僅使用透明屬性是不夠用的,這里想做的煙霧并不是黑煙,需要將黑色煙霧變成白色的,所以就需要使用rbgPP粒子屬性了。

        很簡單的為粒子添加顏色rbgPP屬性,然后為粒子rbgPP屬性添加ramp控制,將控制顏色的Ramp顏色結(jié)構(gòu)調(diào)整為上下全部是白色,當(dāng)然如果讀者有興趣可以調(diào)整為不同的顏色以產(chǎn)生不同時間產(chǎn)生的不同顏色:

        添加rgbPP屬性:

        img784

        創(chuàng)建Ramp控制:

        img785

        調(diào)整Ramp的顏色結(jié)構(gòu)為全部白色:

        img786

        得到效果:

        img787

        到此為止,煙霧似乎已經(jīng)可以了,但是細(xì)節(jié)還是不夠,因為每一個sprite粒子的旋轉(zhuǎn)角度都是一樣的,這樣產(chǎn)生的煙霧在細(xì)節(jié)上還是會有規(guī)律可查,接下來我們將最后的規(guī)律也打破,為粒子添加spriteTwistPP粒子屬性,這個屬性控制了每一個粒子的旋轉(zhuǎn)角度,我們讓粒子在生命周期中隨機(jī)旋轉(zhuǎn),每一個旋轉(zhuǎn)的角度和速度都不相同,這樣就更增加了煙霧的隨機(jī)性:

        為粒子添加spriteTwistPP粒子屬性:

        img788

        為了產(chǎn)生想要的隨機(jī)旋轉(zhuǎn),不同速度,我們需要一個自定義的粒子PerParticles的屬性,我們?nèi)∶麨閞ate:

        img789

        接下來是使用表達(dá)式產(chǎn)生每個粒子煙霧都有不同的旋轉(zhuǎn)速度和角度:

        首先是在粒子出顯的一瞬間要給粒子的spriteTwistPP屬性一個360°的隨機(jī)值,使用Creation表達(dá)式:particleShape1.spriteTwistPP=rand(360);就可以了。

        接下來運(yùn)動的時候粒子要繼續(xù)旋轉(zhuǎn),只需要一個Runtime表達(dá)式來為spriteTwistPP屬性的值,每一幀加上一個數(shù)值就可以了:particleShape1.spriteTwistPP+=rate;只要rate每個粒子都不一樣,那么粒子旋轉(zhuǎn)的速度就不一樣了。

        所以我們?yōu)榱W觿?chuàng)建的粒子屬性rate就是用在這里的,為rate屬性添加一個Creation表達(dá)式:particleShape1.rate=rand(2);于是每一個粒子都有了一個不同的rate。

        為粒子spriteTwistPP屬性添加一個Runtime表達(dá)式:

        particleShape1.spriteTwistPP+=particleShape1.rate;//粒子的spriteTwistPP屬性每一陣都增加rand(2)的大小產(chǎn)生不同的旋轉(zhuǎn)速度和角度。

        最后進(jìn)一步調(diào)整透明的ramp控制結(jié)構(gòu),直到滿意為止,所有的細(xì)節(jié)差不多就制作完成了:

        Creation表達(dá)式:

        img790

        RunTime表達(dá)式:

        img791

        最終效果:

        img792

        img793

        如果還是感覺粒子的貼圖邊緣太過于明顯的話,可以在紋理節(jié)點(diǎn)里面對AlphaGain屬性進(jìn)行進(jìn)行修改:

        img794

        這個屬性可以控制粒子通道的邊緣柔和程度。

        img795

        免責(zé)聲明:以上內(nèi)容源自網(wǎng)絡(luò),版權(quán)歸原作者所有,如有侵犯您的原創(chuàng)版權(quán)請告知,我們將盡快刪除相關(guān)內(nèi)容。

        我要反饋