1、最終效果和實現步驟
在3DSMAX中,製作火焰的方法是非常多的,不過粒子流製作的火焰更加逼真。今天我們要製作一個火球,最終需要實現的效果如圖 1。
效果 | 實現方法 |
---|---|
火舌從火球上產生 | 設置粒子流的發射源為火球 |
火舌抖動 | 多個Wind空間彎曲共同作用 |
火焰光芒 | Glow效果 |
消除顆粒感 | 運動模糊 |
火焰材質 | 在Opacity貼圖通道中使用由橙紅色到黑色的Gradient Ramp並添加少量躁波 |
2)建立一個攝影機,調整鏡頭對準物體“火球_Sphere”,按C鍵切換到攝影機視圖,如圖 3。
3)現在要建立粒子係統了,以前我們通過Create(創建)麵板來建立粒子流的發射器,不過今天我們使用另外一種方法,這樣可以更加完整地掌握粒子流和粒子視圖的操作流程。
按6鍵,打開粒子視圖,這時粒子視圖還是空空如也,單擊鼠標右鍵選擇“New->Particle System->Empty Flow”,這樣將會建立一個空的粒子流,如圖 4。
4)在粒子視圖的空白區域單擊鼠標右鍵,選擇“New->Operator Event->Position Object”建立一個新事件,將其命名為“火焰_Event”。 選擇Position Object操作器,在右側的屬性麵板中,單擊ByList按鈕,從彈出的對話框中選擇物體“火球_Shpere”,如圖 5。另外,還需要選擇Lock On Emitter選項,這個選項的功能是讓粒子發射之後停留在發射位置,不要移動,後麵我們將通過空間彎曲來移動粒子。
5)這時如果播放動畫仍然不會看到粒子發射效果,我們還需要一個Birth操作器。使用和上麵類似的方法為事件“火焰_Event”添加一個Birth操作器。 然後將PF Source 01的事件輸出和“火焰_Event”的事件輸入連接起來,如圖 6。
6)選擇Birth 01操作器,設置其粒子產生方式為Rate,設置參數為300,也就是每秒產生300個粒子。注意,這個參數的值是臨時的,為了製作更加真實的效果,後麵將會增大這個參數的值,現在設置小一點,這樣不至於影響製作的效率。這時播放動畫就可以看到球體表麵出現粒子了,這些粒子產生後會附著在球體表麵,如圖 7。
7)為事件“火焰_Event”添加一個Age Test測試,設置參數為Test Value=10,Variation=5,如圖 8。
8)新建一個事件,命名為“火舌_Event”,將事件“火焰_Event”的Age Test輸出和事件“火舌_Event”的輸入連接起來,如圖 9。
為“火舌_Event”添加一個Delete操作器,選擇刪除方式為By Particle Age,Life Span=10,Variation=50,它的作用是讓粒子產生之後經過一段時間後自動消失。
3、空間彎曲
1)打開Create(創建)->Space Warps(空間彎曲),向場景中添加三個Wind空間彎曲,方向均指向上方。添加多個Wind空間彎曲的目的是製作出火焰抖動的逼真效果,我們知道火焰抖動是隨機的,單個Wind空間彎曲很難製作的很逼真。設置這三個空間彎曲的參數如圖 10。
2)建立一個Drag空間彎曲,將其命名為“減速_Drag”,在其屬性麵板中選擇Linear Damping(線形阻尼),選中Unlimited Range,設置X、Y、Z三個方向上的阻尼值均為100%。另外別忘了設置它的作用時間(Time On和Time Off)為和動畫的時間等長,如圖 11。
3)向事件“火舌_Event”中添加一個Force操作器,選擇這個操作器,在其屬性麵板中單擊By List(通過列表添加),然後選擇上兩步中建立的四個空間彎曲,如圖 12。
現在,火焰的動態效果已經基本隻做完畢了,播放動畫可以看到如圖 13所示的效果。
4、材質
1)對於製作火焰效果而言,材質是一個非常關鍵的因素。首先應當設置好粒子係統的相關特性,向事件“火舌_Event”中添加兩個操作器Shape Facing和Material Dynamic。選擇Shape Facing,在其屬性麵板中單擊None按鈕,選擇攝影機Camera01,以後用這個攝影機視角進行渲染時,粒子將會始終顯示為一個對著Camera01的小正方形,如圖 14。
這時渲染一個靜幀可以看到大致如圖 15所示的效果。
2)打開材質編輯器(快捷鍵M),選擇一個空白樣本球,將其命名為“火焰_Material”。首先在Shader Basic Parameters卷展欄中選中Face Map。然後設置其Ambient顏色為橙黃色,Diffuse顏色為略淺的橙黃色,由於Ambient和Diffuse的顏色不同,因此別忘了關閉前麵的鎖定顏色的按鈕。Specular和Glossiness均設置為0,如圖 16。
3)進入Extend Parameters卷展欄,設置FallOff方式為Out,AMT為10,後麵的Type設置為Additive,如圖 17。這裏設置的是材質的Advanced Transparency(高級透明效果),通常對於類似玻璃的效果我們需要將Falloff方式設置為In,而對於煙霧和火焰效果則需要將Falloff設置為Out。AMT是Amount(強度)的縮寫。
5、運動模糊和發光效果
這時進行渲染會發現兩個缺陷,一是火焰有很明顯的顆粒感,二是火焰竟然不發光,如圖 20。為了修補這兩個缺陷,我們還還需要添加運動模糊和Glow效果。
至此,火焰效果的製作就算完成了。如果你對渲染出來的動畫效果不滿意,可以對粒子發射數量進行調整,通常數量越多越好,火焰效果會更加細膩。不過要注意一點,當你提高了粒子發射數量之後,應當相應地減小事件“火舌_Event”中Shape Facing的Size參數,同時運動模糊的參數也應當縮小。