相信大家都知道,XP粒子官方更新為1030的FUSED套裝以後,它除了整合的地形插件、網格工具以及Cycles 4D渲染器以外。
XP粒子本身其實也有很多大的更新,例如用來制作剛體和柔體的Bullet等,但其實這些我都沒有用過。
主要原因是我喜歡對照着官方手冊來操作學習,雖然現在INSYDIUM官方的油管上已經有了一些教程:
但是如果使用頻率不高的話,很容易看過以後就忘記了,到時候使用起來又得回過頭來看教程。
而且新功能剛出來,也不排除會有一些bug,所以我一直在等官方手冊更新,但是截至到現在還沒有:
因此今天我想手動測試一個XP更新的小功能:xpOpenVDBMesher - UV Advection。
為什麼選擇測試這個功能,其實很簡單,大家還記得年初的時候我寫了一篇埃舍爾瀑布嗎:
由于XP的網格是沒有UV的,因此當時為了制作圖案随着液體流動的效果費了老大勁。
最後還是用粒子的通過紋理發射做出圖案的效果,然後讓粒子呈現流體的形态,最後再在上面加了一層透明的網格才勉強做出來的。
我們再來看看官方視頻介紹的這個效果:
雖然動圖壓縮的很厲害,但是相信大家也能夠看明白。
UV Advection這個功能簡單概括就是可以将紋理映射到動态xpOpenVDB網格,随着網格改變而發生變化。
但需要注意的時候,這個官方短短不到2分鐘的介紹視頻裡用的都是默認渲染器,對于OC以及RS是否支持這個功能都沒有任何說明。
所以今天的内容主要是臨摹官方的這個小效果并且測試UV Advection對RS及OC是否支持。
由于我使用的RS和OC都是歡樂版,所以這裡專門說一下測試軟件,C4D是R19.068,OC是3.07,RS是2.6.41。
好了,廢話了這麼多,開始進入今天的正題吧!
01
場景搭建
首先打開C4D,幀速率設置為25,就做個200幀的動畫吧:
新建球體,尺寸小一點,分段稍微多一點,類型我用的是二十面體:
新建克隆克隆小球,數量5個,克隆模式為發射,記得改一下軸向:
然後我們在克隆的半徑上K一下幀,K的數值如圖所示:
接下來再在偏移的數值上K一下幀,讓它一開始是0,在150幀的時候偏移-360度:
再新建一個大大的平面當作地面,基本上場景就是這樣哈:
02
流體模拟
接下來就是流體模拟部分,新建一個盒裝的發射器,适當的調整尺寸:
發射模式改為射擊,粒子類型為六邊形,發射兩幀就好,然後把速度關掉,粒子半徑為2:
給克隆對象添加XP的碰撞标簽,關掉反彈,摩擦力給到最大,點擊播放你會發現碰撞不起作用:
這是由于我們需要把克隆弄成一個對象才可以,所以給克隆添加連接,現在碰撞就起作用了:
接下來就是模拟流體了,對于這種中小場景,要求不高需要模拟流體翻滾的時候的,我推薦使用xpFluidFLIP來模拟流體。
添加xpFluidFLIP,适當的調整尺寸和高度,流體隻會在它的範圍框内進行模拟,因此地面都不用添加碰撞标簽了:
現在場景中還沒有重力,所以添加重力場,參數默認即可:
xpFluidFLIP參數設置方面,官方推薦體素尺寸是粒子半徑的3-4倍,因為我們的粒子半徑是2,所以這裡設置為6。
由于我們需要看到粒子翻轉的效果,所以粘度值就不用給了,适當的提高一點渦度值就好了。
然後原圖感覺球體有點推着液體走,所以我打開了黏住,提高了一點摩擦力:
接下來找一幀合适的粒子設置為初始狀态,然後将發射關掉:
03
粒子網格化
接下來就是将粒子網格化,新建OpenVDBMesher,體素以及點半徑大小大家看着調整就好:
濾鏡裡面添加一個高斯:
接下來終于到了我們今天的重點UV Advection了:
為了方便觀察,我這裡給OpenVDBMesher添加C4D自帶的噪波貼圖來說明問題。
默認情況下,由于OpenVDBMesher是沒有UV的,所以添加完畢之後看不到貼圖的樣式:
你可以修改投射的方式,但是同樣由于沒有UV,所以這樣的貼圖肯定是會出問題的。
并且鼠标右鍵也沒有辦法生成UVW坐标,感興趣的鹿友可以試試,無論是烘焙為ABC還是點級别對象都不行:
所以這個時候我們可以激活UV Advection,紋理就會正常的随着網格的流動而産生變化了:
投射的方式大家可以根據實際情況來進行選擇,但是需要注意的是,經過我測試前沿以及uvw貼圖這兩種方式會出錯。
由于官方也沒有更多的說明,所以我也不清楚是不是自己操作的問題:
另外UV Advection它并不隻是添加了uvw标簽,UV是帶有數據的,因此打開以後模拟會變得慢一些。
并且如果你需要緩存的話,需要把UV Advection一起緩存才可以,我這裡選擇的投射方式是空間哈:
最後補充一點,UV Advection這裡有一個開始幀,默認情況下我們應該是設置為1。
但經過我測試設置為1的時候,預覽沒有問題但是緩存出來第一幀會出錯,如果設置為0,預覽的時候是看不見的,但是緩存出來确實正确的。
可能是因為我把默認場景的幀速率從30改為了25的原因吧:
然後我這裡給網格又添加了一個置換變形器,着色器裡添加顔色,高度給一個負值,目的是讓網格薄一點,這個不用多說哈:
04
渲染器測試
接下來就是渲染器的測試了,因為我最終是打算用RS渲染,所以先測試OC吧。
打開OC,随意的新建一個環境光,不用太精細,我們主要是測試下功能而已:
新建材質球同樣制作一個漩渦圖案吧,至于怎麼制作以前分享過,這裡就不多說了哈:
點擊播放鍵,可以看到紋理也是正常的在流動,說明UV Advection能夠支持OC的紋理節點,挺好:
但需要注意的是如果你添加一個投射節點,改變一下紋理的投射方式,紋理就不行了:
因此我們不能改變紋理的投射方式,并且要保證它的投射方式是UVW貼圖才行:
接下來我們再來看看RS吧,同樣新建環境光,打開RS:
我這裡同樣用RS自帶的噪波以及漸變節點做出一個漩渦的圖案來:
點擊播放鍵你會發現紋理不會正常流動,看來UV Advection并不支持RS程序化的紋理節點:
因此隻能換一種方式,使用C4D着色器節點,通過RS的紋理節點把它轉化成一張貼圖:
然後在C4D着色器節點裡添加噪波制作出漩渦的圖案,點擊播放鍵,可以看到紋理正常流動了:
05
渲染部分
基本上測試方面就這樣吧,繼續把案例渲染完吧,這裡我又添加了一個漸變節點,将紋理進行了重新着色,然後調整了一下尺寸:
接下來設置渲染尺寸,新建攝像機固定視角,開啟GI這些都不用說哈:
主體材質裡我把塗層也打開了,這樣對象表面會有額外的高光:
小球的材質就是普通的發光材質:
地面的材質是普通的深色反射材質:
視情況再補幾盞燈吧:
這裡我們可以先暫時設置一下景深看看效果,後面渲染的時候關掉它,在多通道裡輸出深度通道然後後期去合成:
做一個攝像機旋轉動畫:
同樣主采樣我設置的是128,其他本地采樣是512:
多通道裡輸出深度通道,記得模式選擇為Z标準:
渲染的時間其實并不是很長,我渲染的2K的尺寸,隻用了6個多小時:
最後後期調整一下看看效果吧:
大概是那麼個意思吧,希望官網的手冊能盡快更新,下面是今天的視頻版:
視頻版稍後單獨發送
好啦,今天的分享就到這裡,想要源文件以及原視頻的鹿友後台撩我獲取吧!
更多内容歡迎關注公衆号:
本文由“野鹿志”發布
轉載前請聯系馬鹿野郎
私轉必究
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!