C4D野教程:用TP粒子製作線條流淌效果

C4D野教程:用TP粒子製作線條流淌效果


基本上算是正式復工了,還是蠻忙的,終於有點時間把文章寫完。


事情是這樣的,我在B站看到了一個國外大神的教程:

C4D野教程:用TP粒子製作線條流淌效果


大家都知道這個螺旋線條的效果可以用XP4.0來做,我沒有XP4.0,之前也沒有做出這個效果,所以一直耿耿於懷,相關文章可以查看:

C4D野教程:用TP粒子製作線條流淌效果


C4D野教程:用TP粒子製作線條流淌效果


原作者做個這效果沒有用XP,而是直接用R21以及TP粒子做的,這讓沒用過R21且不會TP粒子的我看得一臉懵逼。


但是一想到國外有很多教程都用過TP粒子,並且之前有下載過一個C4D工程也是用TP粒子做出螺旋效果的,於是我在B站上先看了一些Xpresso相關的基礎內容:

C4D野教程:用TP粒子製作線條流淌效果


然後又看了一些TP粒子的內容,沒有看完,只瞭解了一個大概:

C4D野教程:用TP粒子製作線條流淌效果


同時又在網上找來了一個關於TP粒子的中文幫助文檔輔助學習,文後我也會分享給大家,有興趣的童鞋可以獲取:

C4D野教程:用TP粒子製作線條流淌效果


這些好像都是大家很少去學的功能,看了以後感覺自己奇怪的知識又增加了:

C4D野教程:用TP粒子製作線條流淌效果


心想著雖然只學了個大概,應該通過工程文件也能分析出之前那個螺旋效果是如何製作的,結果找到之前的工程以後打開一看才發現自己很傻很天真:

C4D野教程:用TP粒子製作線條流淌效果


是的,原工程是用Python結合TP粒子做的!不會代碼的我徹底放棄這個螺旋效果了。


不過結合自己東拼西湊的知識總算也用TP粒子做出了一個線條的效果,個人覺得比之前用Particular4.1做出來的效果要好看一些,並且也是一個新的思路。


算是沒有XP4.0用戶最後的掙扎吧,來吧,今天我們就用TP粒子製作一個粒子線條流淌的效果吧!

C4D野教程:用TP粒子製作線條流淌效果

由於許多童鞋都沒有接觸過TP粒子和Xpresso,並且這兩個知識點其實系統是很強大的,一篇文章沒有辦法介紹完,所以開始之前我想先說明一下製作的思路:


1、首先運動圖形中的矩陣對象是可以生成TP粒子的,這就意味著,我們可以通過運動圖形中的各種效果器去定義粒子運動的方向。


2、但是光靠矩陣生成的TP粒子沒有辦法直接讓粒子沿著效果器定義的方向發射出來,這也可能是我自己還沒學透,沒有找到方法。


3、所以我這裡選擇的是創建兩個粒子群組,A群組定義粒子的方向,B群組定義速度,然後再讓B群組去獲取A群組粒子的方向從而達到我們想要的效果。


基本就是這個思路,後面的我們邊做邊解釋吧。


新建一個平面,尺寸我這裡設置的是2000*2000,分段數稍微多一點:

C4D野教程:用TP粒子製作線條流淌效果


給平面添加置換變形器,著色器裡添加噪波,置換強度大一些:

C4D野教程:用TP粒子製作線條流淌效果


然後著色器裡提高全局縮放的參數,做出這種起伏的感覺:

C4D野教程:用TP粒子製作線條流淌效果


因為後面我們要用平面發射粒子,TP粒子中的對象都需要是可編輯對象,所以選中對象鼠標右鍵當前狀態轉對象:

C4D野教程:用TP粒子製作線條流淌效果


接下來新建矩陣,模式為對象,以平面作為對象生成矩陣,勾選排列克隆,分佈為表面,數量可以多一點:

C4D野教程:用TP粒子製作線條流淌效果


隱藏掉平面,可以在變換面板修改一下縮放的數值,這樣是為了便於觀察:

C4D野教程:用TP粒子製作線條流淌效果


給矩陣添加著色效果器,著色器面板添加噪波,當然這裡你也可以嘗試選擇其他的貼圖例如漸變等,不同的貼圖效果不一樣:

C4D野教程:用TP粒子製作線條流淌效果


我這裡選擇的是稀疏迴旋,全局縮放大一點:

C4D野教程:用TP粒子製作線條流淌效果


讓著色效果器改變Z軸上的旋轉,這樣就能看到粒子將要運動的方向了,我這裡旋轉的是720度:

C4D野教程:用TP粒子製作線條流淌效果


效果器設置好以後我們就可以進行TP粒子的設置了,在模擬-TP粒子裡找到TP粒子設置:

C4D野教程:用TP粒子製作線條流淌效果


TP粒子設置裡,鼠標右鍵添加兩個粒子群組,更改顏色方便觀察,重命名一個用於定義方向,一個用於發射粒子:

C4D野教程:用TP粒子製作線條流淌效果


回到矩陣對象,將生成改為TP粒子,然後將方向粒子群組拖到TP粒子群組欄位,粒子優先權選擇為在效果器之後:

C4D野教程:用TP粒子製作線條流淌效果


新建一個空物體,鼠標右鍵添加Xpresso標籤:

C4D野教程:用TP粒子製作線條流淌效果


節點編輯器裡,新建一個粒子事件波動節點,這個節點大家簡單理解為XP粒子中的以對象發射粒子就好。


把平面拖到節點的對象欄位,發射數量多一點,拖入TP粒子的對象都要是可編輯對象才行哦:

C4D野教程:用TP粒子製作線條流淌效果


在粒子標準項裡新建一個粒子群組節點,把名稱為粒子這個群組拖到粒子群組節點裡,並把兩個節點連接起來,代表著粒子事件發射出來的全是名稱為粒子的這個群組。


需要注意的是在粒子輔助項裡也有一個粒子群組節點,這個粒子群組節點是配合粒子數據設置節點使用的,以後我們有機會再分享:

C4D野教程:用TP粒子製作線條流淌效果


粒子事件本身發射出來的粒子就是有速度的,我嘗試過在這個默認速度的基礎上直接去獲取方向粒子群組的方向,並不能達到想要的效果。


看來需要將速度和方向單獨分開來定義,在粒子創建體裡新建一個粒子傳遞節點,將名稱為粒子的群組拖進來,再在粒子動態項裡新建一個粒子速率節點,將它們連接上。


粒子速率節點只改變速度,速度我這裡設置為200就好,類型為取代,代表這裡的速度會覆蓋粒子事件本身的速度。


另外提醒一點,當我們要用到粒子動態項裡的節點的時候,通常會使用粒子傳遞節點與其連接才會有效果:

C4D野教程:用TP粒子製作線條流淌效果


接下來就是很重要的操作了,在粒子創建體裡新建粒子傳遞AB節點,然後把方向和粒子這兩個群組分別拖進來,距離類型為內部。


那麼根據距離,他們的某項參數就會越來越接近,至於這個距離是多少我們後面看著效果來調整:

C4D野教程:用TP粒子製作線條流淌效果


粒子輔助體裡新建一個粒子獲取數據節點,讓它獲取方向粒子群組的數據,並且添加一個對齊端口:

C4D野教程:用TP粒子製作線條流淌效果


在Xpresso的適配裡找到矩陣到矢量節點,將粒子獲取數據中的對齊端口連接給矩陣到矢量節點。


矩陣到矢量節點相當於是把一個對象在空間中的信息分解成了偏移(XYZ軸的位移)、V1(X軸的旋轉)、V2(Y軸的旋轉)以及V3(Z軸的旋轉):

C4D野教程:用TP粒子製作線條流淌效果


這個時候我們需要再次新建一個粒子速率節點,將改變改為方向:

C4D野教程:用TP粒子製作線條流淌效果


同時再添加一個方向端口:

C4D野教程:用TP粒子製作線條流淌效果


把V1或者V2的端口連接到方向端口,將粒子速率中的粒子端口連接到粒子傳遞AB中粒子群組的端口,代表著獲取方向粒子群組的X或Y軸的旋轉數據給粒子選組:

C4D野教程:用TP粒子製作線條流淌效果


為了方便觀察效果,這個時候我們就可以添加追蹤對象,追蹤粒子這個群組,將樣條類型改為B樣條,點差值方式為自然:

C4D野教程:用TP粒子製作線條流淌效果


這個時候其實粒子群組的運動就會獲取方向群組的數據進行運動了,但是你可能會看到效果並不是很好,例如粒子會往Y方向跑:

C4D野教程:用TP粒子製作線條流淌效果


這是由於粒子傳遞AB中的距離太小了,這個參數需要大家多嘗試一下,我這裡嘗試的結果是95就比較合適了:

C4D野教程:用TP粒子製作線條流淌效果


同時你可能會看到線段不夠圓滑,這裡只需要將控制方向的這個粒子速率節點類型改為附加,並且勾選每秒,就好了:

C4D野教程:用TP粒子製作線條流淌效果


做到這裡基本大效果就有了雛形了,細心的童鞋可能會有一個疑問,為什麼著色效果器裡控制旋轉的軸向是Z軸,而我們卻要獲取X軸或Y軸的數據來控制粒子的運動方向呢?


這裡我覺得只有用數據來解釋會更加直觀一點,我隨便新建一個立方體C掉,然後拖進節點編輯器,並且添加一個全局矩陣端口:

C4D野教程:用TP粒子製作線條流淌效果


然後在常規裡添加一個結果節點:

C4D野教程:用TP粒子製作線條流淌效果


將結果的類型改為矩陣,然後將他們連接上:

C4D野教程:用TP粒子製作線條流淌效果


當我去更改立方體Z軸旋轉的數值的時候,我們可以看到結果中只有X軸和Y軸的數值才會發生變化,Z軸並沒有變化。


其他幾個軸向的旋轉大家有興趣也可以去嘗試一下,這裡主要想到可能會有童鞋會問到,所以順便提一下。


其中的道理大家其實不用深究,我也不是特別清楚,實際操作中,其實我們只需要連接節點試一下就知道哪一個軸向上有效果了:

C4D野教程:用TP粒子製作線條流淌效果


繼續今天的內容吧,大體雛形出來了,但是大家會看到粒子會跑到平面外邊去,如果我們只想要它在平面裡面運動該怎麼辦呢?


其實也不難,我們只需要讓粒子在XYZ軸的位置大於平面時死亡就可以了。


再次添加粒子傳遞以及粒子獲取數據節點,同樣粒子傳遞裡拖入粒子群組,粒子獲取數據這一次我們添加一個位置端口,用來獲取粒子群組的位置:

C4D野教程:用TP粒子製作線條流淌效果


然後在適配裡找到矢量到實數這個節點,把XYZ軸的位置數據分別讀取出來:

C4D野教程:用TP粒子製作線條流淌效果


在邏輯裡添加一個比較節點,X連接輸入1,功能改為大於,因為我們平面的尺寸是2000*2000,這個是從座標原點算起的,所以這裡我們將數值改為1000:

C4D野教程:用TP粒子製作線條流淌效果


再複製一個比較節點,X連接輸入1,功能改為小於,數值改為-1000:

C4D野教程:用TP粒子製作線條流淌效果


然後在計算裡,用一個數學節點把這兩個大於1000和小於1000的結果加起來:

C4D野教程:用TP粒子製作線條流淌效果


再在粒子標準項裡添加一個粒子死亡節點,並且粒子死亡節點裡添加一個開啟端口:

C4D野教程:用TP粒子製作線條流淌效果


然後將數學加輸出端口連接到粒子死亡開啟端口,並且將粒子死亡的粒子端口連接到粒子傳遞,這樣X軸在位置大於1000小於-1000的粒子就會死亡:

C4D野教程:用TP粒子製作線條流淌效果


其他兩個軸向也是同樣的道理,我這裡就不贅述了,至此粒子線條流淌的效果就已經做完了:

C4D野教程:用TP粒子製作線條流淌效果


剩下的就是給場景添加一些小元素,以及上材質等了,這裡我借鑑了虎課的一個用XP4.0製作的案例構思。


首先我打算做一個150幀的動畫,在第150幀的時候,選中追蹤對象,鼠標右鍵當前狀態轉對象:

C4D野教程:用TP粒子製作線條流淌效果


新建克隆對象,克隆一個小球體,克隆模式為對象,以追蹤對象樣條為對象進行克隆。


取消每段的勾選,數量我這裡設置為200個,並且率和比率變化都給一定的數值,這樣小球會在樣條上進行隨機的運動。


為了方便觀察小球的運動狀態,可以先暫時隱藏掉追蹤粒子的追蹤對象:

C4D野教程:用TP粒子製作線條流淌效果


中間再新建一個球體這一步不用說吧:

C4D野教程:用TP粒子製作線條流淌效果


接下來就是上材質渲染了,我這裡還是用的OC,新建一個HDRI環境光,添加HDRI貼圖,給追蹤對象添加OC對象標籤,勾選渲染毛髮,調整粗細這些都不用說吧:

C4D野教程:用TP粒子製作線條流淌效果


材質方面線條就是一個普通的偏藍色的發光材質:

C4D野教程:用TP粒子製作線條流淌效果


中間的大球是一個普通的藍色透明玻璃材質:

C4D野教程:用TP粒子製作線條流淌效果


克隆小球的材質就是一個更弱一點的發光材質:

C4D野教程:用TP粒子製作線條流淌效果


接下來就是做攝像機動畫了,為了播放不那麼卡,我們可以先暫時將粒子事件波動中的粒子數量減少:

C4D野教程:用TP粒子製作線條流淌效果


攝像機動畫方面大家看著弄就好了,我這裡是用攝像機本身的位置屬性來控制攝像機的遠近以及平移。


然後用一個空物體作為攝像機的父級來控制旋轉,同時大球做了一個從上往下落的平移動畫:

C4D野教程:用TP粒子製作線條流淌效果


克隆小球的半徑我也K了一個關鍵幀,讓第0幀的時候沒有小球,第10幀的時候逐漸變成1:

C4D野教程:用TP粒子製作線條流淌效果


基本上就可以渲染出圖了,這裡可以不用渲染Alpha通道,我的建議還是分層渲染出來,由於場景中沒有漫射,所以我這裡只勾選了折射、反射以及粒子通道:

C4D野教程:用TP粒子製作線條流淌效果


老實說,這個圖我重複渲染了很多次,因為過程中總是有很多不滿意的地方,例如線不夠圓滑,攝像機角度不好等。


因此文章中所說的各個知識點,都是多次渲染失敗後總結出來的,還好這個效果渲染的時間並不是很長:

C4D野教程:用TP粒子製作線條流淌效果


AE裡的操作就簡單了,序列圖層放到最下層,其他分層圖層放在上面,混合模式為屏幕:

C4D野教程:用TP粒子製作線條流淌效果


新建一個調整圖層,添加發光特效:

C4D野教程:用TP粒子製作線條流淌效果


再添加一個銳化以及曲線,這個也不用說了吧:

C4D野教程:用TP粒子製作線條流淌效果


最後碼字排版看看靜圖和動圖的效果吧:

C4D野教程:用TP粒子製作線條流淌效果

靜圖


C4D野教程:用TP粒子製作線條流淌效果

動圖


動圖的尺寸壓縮的很厲害,還是看看視頻版:

視頻版稍後單獨發送


今天的篇幅也比較長,考慮到很多童鞋沒有接觸過TP粒子和Xpresso,所以寫的比較詳細,但可能還是會需要一些時間來消化理解。


唉,寫的好累,好啦,今天的分享就到這裡,想要TP粒子中文幫助文檔、源文件以及原視頻的童鞋後臺撩我獲取吧!


本文由“野鹿志”發佈

私轉必究


分享到:


相關文章: