今天這篇文章本來是27日就開始寫了,但是最近事情真的好多至扰,也不是很順心凰荚,所以截至到今天文章才發(fā)出來灵疮,請見諒。
最近事情真的好多呀拟蜻,見縫插針的找時間終于把B站上Lynda的TFD基礎(chǔ)教程看完了:
感興趣的鹿友推薦大家可以看看绎签,有中文字幕,雖然有些字幕翻譯的有問題酝锅,不過搭配TFD的官方幫助手冊還是可以讓我們學(xué)到很多東西:
另外這里安利一款叫做劃詞翻譯的Chrome插件诡必,因為我個人習(xí)慣看中英對照,谷歌網(wǎng)頁翻譯全部翻譯成中文總覺得不習(xí)慣搔扁。
相比網(wǎng)易有道詞典的話爸舒,單從網(wǎng)頁劃詞翻譯來說,我覺得這個插件更方便點稿蹲。
這個插件支持谷歌扭勉、百度、有道三大翻譯和朗讀引擎苛聘,可以方便的查看涂炎、復(fù)制和朗讀不同引擎的翻譯結(jié)果:
插件文后我也會分享給大家忠聚,感興趣的鹿友可以去獲取哈。
好啦唱捣,進入正題拉两蟀,不然感覺像是一直在給別人的教程和插件打廣告,之前寫過一篇粒子三件套的文章:
這篇文章當(dāng)時只是簡單分享了一下粒子三件套的配合流程爷光,并且由于當(dāng)時這套TFD基礎(chǔ)教程我也還沒看完垫竞,所以對于TFD插件本身的分享很少。
加上在我還沒開始學(xué)之前就有不少鹿友問過關(guān)于TFD插件的問題蛀序,后面也有鹿友對這種靜態(tài)煙霧的效果很感興趣:
所以我想雖然我也只是剛看完基礎(chǔ)教程欢瞪,但是還是可以把自己學(xué)習(xí)到的東西加上自己的理解分享出來,算是對于知識的鞏固徐裸。
開始之前先說明一下遣鼓,因為TFD插件本身其實功能還是挺多的,一篇文章沒有辦法介紹完重贺,所以今天分享的內(nèi)容僅限于我用過的且個人覺得常用的內(nèi)容骑祟。
來吧,今天我們就來對TFD這款插件進行一個概述分享并且通過一個OC渲染煙霧小動畫來上上手吧气笙!
首先對TFD這款插件次企,做一個籠統(tǒng)的介紹:
1、TFD流體插件適用于模擬煙霧潜圃、火焰等特效缸棵,不適用于液態(tài)類效果,液態(tài)類效果請使用RF插件模擬谭期。
2堵第、TFD總體來說的工作原理,是指定一個物體作為發(fā)射器隧出,通過緩存各種通道內(nèi)的各項參數(shù)踏志,配合TFD自身的各種力場(TFD流體不支持C4D自帶的力場或XP粒子的力場),加上自帶的火焰胀瞪、煙霧著色器的設(shè)置针余,最后通過C4D默認的標(biāo)準(zhǔn)渲染器或物理渲染器渲染模擬出火焰以及煙霧的效果。
3凄诞、TFD支持標(biāo)準(zhǔn)渲染器涵紊、物理渲染器,同樣也支持OC渲染器以及KK渲染器幔摸,本文會使用OC渲染制作一個靜態(tài)煙霧小案例摸柄。(各種渲染器渲染各有各自的優(yōu)勢和劣勢,由于我也沒有專門詳細研究過既忆,所以這里暫不表述了驱负,至于其他更多渲染器是否支持嗦玖,咱沒用過,咱也不知道跃脊,咱也不敢問宇挫。)
4、TFD不僅可以模擬煙霧以及火焰酪术,也可以對C4D默認粒子以及XP粒子產(chǎn)生影響器瘪,對于粒子而言,TFD就是一個力場绘雁。
5橡疼、經(jīng)測試,由于C4D自帶的粒子不可受XP粒子的力場影響庐舟,因此當(dāng)TFD作為力場去影響C4D粒子的時候欣除,可以再次添加C4D的力場去影響粒子的形態(tài),但是無法通過XP粒子的力場去影響挪略。
而反之由于XP粒子是可以受到C4D默認力場影響的历帚,所以當(dāng)TFD作為力場去影響XP粒子的時候,不僅可以通過再次添加XP粒子的力場去控制粒子的形態(tài)杠娱,還可以通過C4D自帶的力場去影響挽牢。(測試軟件版本:C4D R18&XP粒子2.1)
暫時想到這些吧,下面是我個人用過也覺得比較重要的幾個板塊摊求,同樣是我看了Lynda的教程以及用戶手冊以后加上一些自己的理解卓研。
Simulation Window(模擬窗口)板塊
Up-Res Simulation(二次模擬):需要在已經(jīng)緩存的基礎(chǔ)上進行二次模擬,前提是已經(jīng)緩存了速度通道睹簇,緩存文件會變得很大,但確實能夠增加不少細節(jié)寥闪,只支持CPU模擬太惠。
Start Interative Simulation(交互模擬):在不使用幀動畫的時候,建議切換到交互模擬的狀態(tài)下調(diào)至TFD的參數(shù)疲憋,這樣可以實時觀察到參數(shù)對于流體的影響凿渊,交互模擬不會生成緩存文件。
CPU/GPU:如果你的顯卡內(nèi)存是在4G以上缚柳,建議切換為GPU模擬埃脏,速度會有明顯的提升,當(dāng)模擬過程中超過了顯卡內(nèi)存秋忙,TFD會自動切換為CPU模擬彩掐。
Render when finished(模擬完畢自動渲染):當(dāng)你將一系列模擬的參數(shù)以及渲染的設(shè)置都設(shè)置完畢以后,可以勾選這個選項掛機灰追,緩存完畢以后會自動渲染堵幽。
Preview Fluid Container(預(yù)覽流體容器):正常的視窗里只能預(yù)覽火焰或者煙霧二選一狗超,而預(yù)覽流體容器該功能可兩者同時預(yù)覽。
TurbulenceFD Help(TFD幫助):打開以后是用戶手冊朴下,非常有用努咐!
Container(容器)
Voxel Size(體素大小):數(shù)值越小 殴胧,分辨率越大渗稍,占用內(nèi)存越多,模擬越精細团滥。
Cache Temp./Dens./Fuel/Burn(緩存溫度/密度/燃料/燃燒):TFD默認是勾選了緩存溫度通道的竿屹,當(dāng)我們需要模擬某個通道并且讓視窗中顯示出模擬效果的步驟是:
1、模擬面板里激活該通道
2惫撰、容器面板里勾選該通道
3羔沙、發(fā)射器的通道選項中給與一定的數(shù)值
4、視窗預(yù)覽面板中將通道一欄選擇為對應(yīng)的通道
由于緩存通道與Simulation(模擬)面板里的通道部分息息相關(guān)厨钻,所以我這里就同一歸為通道板塊一起分享扼雏。
Channels(通道)板塊
所有通道中的力可以相互影響。
Temperature(溫度):用于產(chǎn)生火焰夯膀,適用于模擬相對劇烈或者爆炸一類的火焰效果诗充。
Density(密度):用于產(chǎn)生煙霧,適用于模擬煙霧或者云等效果诱建。
Burn(燃燒):同樣產(chǎn)生火焰蝴蜓,適用于模擬相對微弱或者類似蠟燭一類的火焰效果。
Fuel(燃料):燃料通道是所有通道里相對最難理解的通道俺猿,參數(shù)相對比較多茎匠。
燃料顧名思義是一個可被點燃的物體,適用于模擬點火類的效果押袍。
使用燃料通道首先我們需要有一個用于點火的物體诵冒,通過燃料中的Fuel Mask Channel(通道蒙板)來選擇使用點火物體的哪一個緩存通道來點火,同時利用Fuel Mask Mapping的曲線編輯器來控制點火的快慢以及Fuel Mask Smoothing(模糊蒙板)上的數(shù)值來控制點火過程的平滑程度谊惭。
和現(xiàn)實生活中一樣汽馋,燃料本身也會產(chǎn)生溫度、密度以及燃燒圈盔。
燃料從點火到點燃全過程不僅受到燃料本身參數(shù)的控制豹芯,也會受到其他通道的參數(shù)以及發(fā)射器中給與各通道的數(shù)值影響。
總體來說燃料是TFD中最為復(fù)雜的一個通道驱敲,需要多加練習(xí)理解铁蹈,本文中暫時沒有安排案例,以后有機會會來分享鞏固:
Simulation(模擬面板)
模擬面板下有很多參數(shù)众眨,其實可以大體分為三類:General(總體設(shè)置)木缝、Velocity Field(力場)便锨、Channels(通道),通道我們前面已經(jīng)分享過了:
General(總體設(shè)置)中Frame Sub-Steps Limit(幀子步幅限制)選項在有高速運動物體的場景中會用到我碟,數(shù)值通常給到3就行放案。
Closed container boundaries(封閉容器邊界)在制作火焰碰撞墻壁、地板或者屋頂?shù)膱鼍爸袝玫健?/p>
Time Scale(時間尺度)在制作流體快慢動畫的時候會用到矫俺。
其余參數(shù)都不常用吱殉,通常默認即可:
Velocity Field(力場)
TFD的力場方面沒有太多的難點。
Velocity(速度):主要用于控制流體驅(qū)動粒子厘托,前提是已經(jīng)緩存了速度通道友雳。
Vorticity(渦力):讓流體表面產(chǎn)生小的卷曲效果,用于增加流體的細節(jié)铅匹。
Turbulence(湍流):讓流體產(chǎn)生躁動的形態(tài)押赊,也是用于增加流體的細節(jié)。
渦力與湍流中的強度映射只能使用已經(jīng)緩存了溫度/密度/燃料/燃燒通道包斑。
力場參數(shù)的調(diào)節(jié)流礁,建議可以將模擬窗口改為交互模擬,這樣觀察起來更加直觀:
Viewport Preview(視窗預(yù)覽)
視窗預(yù)覽中沒有太多可說的罗丰,你需要觀察哪一個通道的形態(tài)前提是已經(jīng)緩存了該通道神帅,其他的都僅僅用于顯示。
如果要觀察火焰就把通道選擇為溫度萌抵,然后把著色器選擇為火焰著色器找御。
如果要觀察煙霧就把通道選擇為密度,然后把著色器選擇為煙霧著色器绍填。
但是視窗里只能二選一進行觀察霎桅,如果要同時顯示煙霧和火焰需要使用Preview Fluid Container(預(yù)覽流體容器):
Rendering(渲染設(shè)置)
當(dāng)你需要使用默認渲染器渲染煙霧或者火焰的時候需要在TFD自帶的渲染設(shè)置里進行調(diào)節(jié),如果使用其他渲染器例如OC讨永,則不需要調(diào)節(jié)這里滔驶。
TFD的渲染設(shè)置主要分為通用設(shè)置、煙霧著色器以及火焰著色器三大板塊:
General(通用設(shè)置)
Frame Offset(幀偏移):數(shù)值為0時默認播放全部幀住闯,指定數(shù)值以后動畫會從0播放到該指定幀。
Frame Step(幀步幅):用于控制動畫的播放速度澳淑。
以上兩個數(shù)值可相互配合比原,當(dāng)幀偏移數(shù)值為負的總幀數(shù)且?guī)椒鶠?1的時候,動畫會反相播放杠巡;當(dāng)幀步幅為0時量窘,你可以通過修改幀偏移上的數(shù)值來選擇你想要的靜止幀。
Use Distance/Opacity Mapping(使用距離攝像機的位置對不透明度進行映射):勾選以后距離攝像機越近的流體氢拥,不透明度越低蚌铜,常用于制作一些云層穿梭的效果:
Smoke Shader(煙霧著色器)
煙霧著色器中看起來參數(shù)很多锨侯,其實都很好理解,也有很多是平常很少用到的冬殃。
Channel(通道):當(dāng)我們模擬煙霧的時候囚痴,通常我們會將通道選擇為密度通道,但不是絕對的审葬。
Sub-Grid Detail(子網(wǎng)格細分):子網(wǎng)格細分下的參數(shù)可以增加煙霧的細節(jié)深滚,大家可以多多嘗試,當(dāng)然細節(jié)越多涣觉,渲染的時間會越長痴荐。
Multiple Scattering(多重散射):當(dāng)你同時模擬火焰以及煙霧的時候,可以勾選改選項調(diào)整選項下的參數(shù)讓火焰對煙霧也產(chǎn)生照明官册,這樣會更真實生兆。
在進行煙霧著色器參數(shù)調(diào)整的時候,建議開啟Preview Fluid Container(預(yù)覽流體容器)膝宁,可以比較直觀的看到調(diào)整參數(shù)后的效果:
Fire Shader(火焰著色器)
火焰著色器有很多與煙霧著色器相同的參數(shù)鸦难,也有一些差別的地方。
Channel(通道):當(dāng)我們模擬火焰的時候昆汹,通常根據(jù)情況我們會將通道選擇為溫度或者燃燒通道明刷,但也不是絕對的。
Opacity(不透明度):會影響火焰的亮度满粗,數(shù)值越大辈末,火焰亮度越低。
Color Mode(顏色模式):Black Body(黑體)是一個物理精準(zhǔn)模式映皆,通過觀察色條上的變化來理解該模式下的參數(shù)含義會更直觀挤聘,該模式最常用于模擬真實的火焰。Manual(手動)模式下火焰顏色的調(diào)節(jié)更加自由捅彻,可用于做出一些奇怪顏色的火焰组去。
Sub-Grid Detail(子網(wǎng)格細分):子網(wǎng)格細分下的參數(shù)可以增加火焰的細節(jié),同樣細節(jié)越多步淹,渲染的時間會越長从隆。
在進行火焰著色器參數(shù)調(diào)整的時候,建議開啟Preview Fluid Container(預(yù)覽流體容器)缭裆,可以比較直觀的看到調(diào)整參數(shù)后的效果:
最后是Emitter標(biāo)簽
Collision Object(碰撞對象):勾選以后可以增加流體的細節(jié)键闺,但是模擬會變慢,緩存文件體積會增加澈驼。
Fill Object(填充對象):勾選以后流體會從對象內(nèi)部產(chǎn)生辛燥,前提是對象具有內(nèi)部空間,對象如果是平面則無效。
Restrict to polygon selections(使用多邊形選集):使用該功能Fill Object(填充對象)必須取消勾選挎塌。
Volume Texture(體積紋理):使用該功能Fill Object(填充對象)必須勾選徘六。
Surface Texture Channel(表面紋理通道):使用該通道Fill Object(填充對象)必須取消勾選。
材質(zhì)需要賦予發(fā)射對象榴都,并且紋理的投射方式為UVW貼圖待锈。
Particle emission intensity(粒子發(fā)射強度):當(dāng)產(chǎn)生流體的對象為粒子發(fā)射器或粒子幾何對象時,可以通過Particle property中映射粒子的各項屬性來控制流體發(fā)射的強度缭贡,從而控制流體消散的時間炉擅,例如制作炸開的石頭等效果。
Velocity Weight(速度的影響):當(dāng)產(chǎn)生流體的對象為粒子發(fā)射器時阳惹,該數(shù)值越大谍失,粒子對流體的影響越大。此參數(shù)可用于使用粒子驅(qū)動流體莹汤。(與力場中的Velocity正好相反)
Pressure(壓力):數(shù)值為正值膨脹快鱼,負值收縮。同時壓力為正值的時候纲岭,可以作為排斥力去排斥另外一個物體所產(chǎn)生的流體抹竹,反之負值為吸引力,可以吸引另外一個物體產(chǎn)生的流體止潮。
Channels(通道):當(dāng)你需要緩存某個通道的時候窃判,對應(yīng)的該通道必須要先給數(shù)值才能產(chǎn)生效果,至于數(shù)值是多少視情況而定:
啊啊啊喇闸,終于把TFD基本我覺得重要或者常用的內(nèi)容全都過了一遍袄琳,每張圖全部上備注好累人啊。
接下來再進入今天的煙霧小動畫吧燃乍,打開C4D唆樊,首先我們需要弄一個物體用于發(fā)射煙霧,我這里新建了一個膠囊體刻蟹,適當(dāng)?shù)目s小了尺寸:
想要讓煙霧有更多的細節(jié)逗旁,需要將發(fā)射體變得不規(guī)則一點會比較好,所以添加一個置換變形器舆瘪,著色器里添加一個噪波:
利用以前分享過的鏤空插件Trypogen把發(fā)射體做成一個鏤空的古怪玩意兒片效,參數(shù)方面大家看著調(diào)整就好:
將對象重命名為發(fā)射體后,鼠標(biāo)右鍵連接對象:
除了發(fā)射體本身不規(guī)則會增加煙霧的細節(jié)之外英古,碰撞也會增加細節(jié)淀衣,所以新建一個球體,適當(dāng)?shù)恼{(diào)整尺寸:
同樣的給球體添加鏤空插件哺呜,參數(shù)還是看著效果來舌缤,然后重命名為碰撞體:
將碰撞體鼠標(biāo)右鍵連接對象以后再新建一個寶石體,適當(dāng)?shù)目s小尺寸:
再給鉆石體添加一個晶格某残,參數(shù)同樣看著來搞国撵,重命名為框架:
對象搞好以后,就可以進入模擬煙霧的環(huán)節(jié)了玻墅,新建TFD的容器介牙,體素尺寸我覺得默認位1就好,適當(dāng)?shù)姆糯笕萜骺虻某叽纾?/p>
由于我們要模擬煙霧澳厢,所以先到模擬面板中把密度勾選啟用:
勾選以后环础,容器面板中的密度通道會自動勾選,然后我們再在視窗顯示面板里將通道切換為密度:
選中發(fā)射體鼠標(biāo)右鍵給它添加TFD的發(fā)射器標(biāo)簽剩拢,然后在通道欄將溫度和密度都給與一定的數(shù)值线得,讓它能夠同時模擬溫度和密度通道:
這樣就可以打開模擬窗口進行初步的模擬了,建議把模式切換為交互模式徐伐,我這里使用的是GPU模擬:
這個時候你就可以看著效果去進行力場的調(diào)整贯钩,例如我這里調(diào)整了渦力、湍流以及湍流的最大尺寸办素,并且把溫度中的浮力給取消了:
繼續(xù)的給煙霧添加細節(jié)角雷,發(fā)射體的發(fā)射器標(biāo)簽里,勾選碰撞和填充對象性穿,體積紋理里添加噪波勺三,適當(dāng)?shù)恼{(diào)整噪波的全局縮放以及對比度。
可以再增加一些法線力需曾,壓力也給一點吗坚,當(dāng)然這個都不是一定的,以看到的形態(tài)為準(zhǔn):
給碰撞體和框架都添加TFD的發(fā)射器標(biāo)簽胯舷,然后勾選碰撞:
發(fā)射器的通道里刻蚯,我讓溫度和密度的模式先為add模式在44幀的時候打上關(guān)鍵幀,然后在45幀的時候切換為set模式桑嘶。
這樣密度和溫度的數(shù)值一開始會進行疊加炊汹,這樣形態(tài)看起來就會比較濃密,等到45幀后切換為set模式逃顶,以免太過濃密:
感覺差不多了形態(tài)差不多了讨便,我們就可以先模擬緩存了,后面渲染的時候如果不合適再重新調(diào)整以政。
由于我們這個案例是用OC渲染霸褒,所以TFD里的渲染設(shè)置就用不上了,我這里就只緩存了溫度和密度通道:
打開OC盈蛮,先暫時新建一個環(huán)境光方便觀察:
OC里當(dāng)我們需要渲染TFD的時候废菱,只需要給TFD容器新建一個OC的對象標(biāo)簽,你會發(fā)現(xiàn)對象標(biāo)簽會多出來一個叫做粒子渲染的選項,這個時候TFD流體就可以直接看見了殊轴,很方便吧衰倦。
需要注意的是,這里也有一個體素大小旁理,這個體素大小默認是讀取了TFD模擬的體素大小樊零,你如果將數(shù)值改小不會提高流體的分辨率,只會讓渲染更慢孽文,所以默認即可驻襟。
至于其他的吸收/散射通道以及發(fā)光通道等,默認即可芋哭,運動模糊根據(jù)你自己的需求選擇是否勾選:
重點是下面這個體積介質(zhì)沉衣,用鼠標(biāo)點擊進入:
你會發(fā)現(xiàn)里面和SSS材質(zhì)分布基本是一樣的:
這樣我們就可以很輕松的去調(diào)整煙霧的密度以及顏色了:
材質(zhì)方面框架我使用的就是一個普通的金屬反射材質(zhì):
中間的發(fā)射體我用的是一個發(fā)光材質(zhì),發(fā)光材質(zhì)怎么調(diào)以前分享過很多次了减牺,這里就不贅述了:
碰撞體我這里是使用的SSS材質(zhì)厢蒜,但是由于用透明材質(zhì)做出來的SSS材質(zhì)渲染太慢,我這里換了另外一種方法烹植。
首先新建一個漫射材質(zhì)斑鸦,然后在漫射材質(zhì)的介質(zhì)通道添加散射介質(zhì),這里和傳統(tǒng)的SSS材質(zhì)調(diào)節(jié)方法一樣草雕,同樣也可以通過傳輸通道來控制對象的顏色巷屿。
這樣調(diào)節(jié)出來的SSS材質(zhì)最大的問題是沒有反射:
再新建一個金屬反射材質(zhì):
再新建一個混合材質(zhì),將金屬反射材質(zhì)和漫射的SSS材質(zhì)進行混合:
然后通過浮點來控制反射以及混合材質(zhì)各自的混合程度墩虹,這樣雖然麻煩了一點嘱巾,但是渲染速度會更快:
至于打燈我覺得就不用說了吧,佛系打燈诫钓,怎么好看怎么打:
設(shè)置渲染尺寸新建攝像機固定視角這些也不用說吧:
我看教程里介紹的煙霧保存格式最好是EXR格式供炼,這個大家自己把控吧:
基本差不多就這樣吧勉痴,今天的概述部分很多吨娜,我把備注的截圖單獨整理了一份出來巷折,供大家下載下來查看:
最后渲染出圖看看效果吧:
換一個近景看,感覺好像還要好一點:
今天的視頻內(nèi)容就只有案例的制作部分惧所,強烈建議大家閱讀今天的圖文內(nèi)容哦骤坐,下面是今天的視頻版:
好了,今天的內(nèi)容就分享到這里 下愈,想要的童鞋后臺撩我獲取吧纽绍!
更多內(nèi)容歡迎關(guān)注公眾號:
本文由“野鹿志”發(fā)布
轉(zhuǎn)載前請聯(lián)系馬鹿野郎
私轉(zhuǎn)必究