RealFlow 學習筆記 004 – Hybrido 1

前言

會說是 1 ,是因為 RealFlow  2013 裡頭,Hybrido 改版為2,據說手感大大不同!

但是此處學習筆記以RealFlow 5 的 Hybrido 1 為主

 

1. RealFlow 5 之後,那個名為 Grid Fluid 的傢伙便是 Hybrido (大規模水體模擬器)

image

2. 要先建立一個 Domain 在裡面建立模擬 (Hybrido 2 不用)

3. Hybrido  的發射器,要選一個模型作為依憑,有一點類似 Fill Objects,只要給予場作用力(daemon),Hybrido 的水體粒子就會傾瀉而出,而且模型當然必須在Domain內( import的模型當然也可以用)

4. 同個場景內,當然也可以建立多個 Domain,同個模型也可以橫跨兩Domain喔!

不過基本上不太有實用價值  除非剛好符合要的動態內容

5. 看一些基本的  Hybrido 屬性

  • compressitility (可壓縮性):預設0.5, =0 表示水體不可壓縮,彈力變低; =1 水體可壓縮性提高,彈力變大 。
  • resolutiion:doamin 以 cell 顯示 (display 標籤下可調出來) 可以看到大略 47*47*47 格,這是因為 resolution = 預設 10^5 最接近的三次方就是 47^3 (比 10^5 大)
  • 注意單元格的最外一層都不會有粒子!

6. 持續發設粒子

製作好發射器後,就到 Emitter 標籤 > Stream 改 YES 並設定 initial speed > 0,即可持續的發射(或者說傾瀉)粒子

  • stream 設定 yes 的話,該模型內填充的粒子不會跑出,no 則會溢出
  • jittering 一樣是一開始的例子不要那麼BCC
  • 注意發射器中間的十字架會有箭頭, 那就是發射的方向

7. 先製作一個簡單的岸邊 (善加利用小的 scale數值 ,可以加速模擬)

  • 來個模型,作為發射器(選取、點選 Emitter)
  • 覆蓋岸邊水體的大致範圍後,添上重力場,這樣應該可以初步產生沖刷岸邊的效果
  • 沖刷效果不足請調整箭頭方向、並且可以設定發射的 speed,有變化的 speed 可以變成人工海浪
  • 提高整個 domain 的解析度,找到不錯的初始態之後,Make initial state
  • 加強波浪效果,可考慮增加一個較小的長條型模型,再建立發射器,放在離岸比較遠的地方。並將其發射的 stream = yes ,  speed 則設定關鍵影格,來回震盪發射”波浪”,此法適用小波浪
  • 大波浪則先放大發射用的模型,也加高一點,如此,等到此發射器一放開,就會形成湧動的大浪。
  • 記住,可能模擬的一開始 speed 就可以歸零,不然粒子太多了(甚至一個 frame 就過多了)
  • 另外調整 jittering 容器方向還有粒子初始的速度方向,最後就有一定程度的大浪了。

8. 飛濺

  • 執行 Grid fluid > splash ,生成一個盒子,這盒子會生成飛濺粒子,請將盒子縮放並覆蓋要產生飛濺粒子的區域(基本上就是全部海面啦)
  • 記得使用飛濺時,要把Domain 的 Simulation 欄位改為 cache,據說這樣才可以模擬飛濺 然後也會比較快,觀察一下。
  • 把splash的顏色調成明顯的例如黃色,觀察看看splash是否在浪間產生。
  • 可以利用 k volume,除掉逃逸者或是跑到岸邊太遠者 (根據我的實驗,k volume殺不掉splash 粒子,不知道是不是我沒有操作正確)
  • 接下來,移走模型,因為飛濺是一種傳統粒子,如果不把模型移走,就跟飛濺粒子碰撞 產生預料外的問題。
  • 此時 Domain 已經有 Cache 所以模型直接移走也OK,不影響基本水體

10. 飛濺的屬性

  • 解析度小看起來對飛濺粒子的數量沒啥影響,但大大降低時間。
  • Emission rate:可以考慮拉高此值。 提高發射率 產生更多飛濺粒子。

11. 霧 

把 spalsh 也建立 cache (simulation   active –> cache)

霧 Grid fluid -> Mist  預設為無體積的十字架,把 bound 屬性 =Y 就會有體積,縮放調整位置,也是像飛濺一樣覆蓋整場,觀察飛濺粒子周圍,有否霧氣? 據說飛濺粒子不設定 Cache ,也可以建立霧。

  • radius thresold: =0 毫無霧氣,=0.1 幾乎沒有飛濺粒子了,幾乎變成霧
  • breakup thresold:<1 產生更多霧,>1 減少霧
  • strength: 霧濃
  • dispation: 霧的生命值,越大霧死亡越快

12.泡沫

先把 splash 也 Cache,生成泡沫,但是記得刪除跟重力的關連,不然泡沫會沉到底下去

  • radius thresold:半徑最小值,如果飛濺粒子小於此半徑,就不會產生泡沫,=0 就是永遠都能生成泡沫。
  • detail trhesold:泡沫距離夜體表面的距離,大、泡沫下沉,小、 泡沫上浮
  • 泡沫的生命值是在其屬性的 max min 之間取一隨機值
  • 摩擦力: 流體速度傳體給泡沫的百分比,也是max min 之間隨機值

13. 計算貼圖

  • 設定 Cacluate texture = yes
  • 此外,export Central 內的 foam texture 要勾選,並設定圖片格式。勾選後重新模擬,工程目錄內就有泡沫貼圖了
  • 貼圖解析度好像是跟domain大小

14. 也可以以用序列貼圖來貼上泡沫

  • 注意!貼圖只能靜態的導入,成為初始存在的粒子!
  • 點選 createparticel from image 併選取剛剛的序列貼圖
  • 使用圖片後,將其初始化,就不必在 reset 後,每次都要重新載入
  • 序列圖產生的泡沫,跟foam emiter的泡沫可以毫不相干,獨立存在。不過 foam emiter 不能刪除就是了 (不然從哪匯入貼圖?XDD)
  • 導入貼圖後,一定要 make initial ,不然隨便reset後就會消失

15. 生成 mesh

  • 執行  Grid mesh 即可。
  • detail tresold:調大, 細節丟失的越多
  • Filter 也打開(同時其內 steps 可以調大一點) ,先求把奇怪的網格怪稜線柔和化

16. Dispalcement

但是不必非要把所有效果都交給mesh!  比如一些波濤細節可以用 Displacment。

Doman 的屬性裡  dispalcement = yes 就有很多屬性跑出來囉!

同時, mesh 的 shader type = displacement,這樣才會正式啟動置換貼圖 Dispalcement

  • repeat UV:  調 UV密度
  • chopniess :增加紊亂效果
  • 最小波長
  • vertical scale: 垂直振幅
  • 風向
  • dimention:好像是類似漣漪的小波紋,數字越高波紋越多, 每個波紋都越小
  • Dispalcement  的效果幾乎都是即時顯示,可以玩玩。
  • Export Central內,fuid doman 勾選 displacement texture,再次模擬,再到工程目錄就會找到輸出的貼圖了

17. White Caps

Domain 屬性設定頁內的White Caps  ,這看起來很像是白浪波濤的設定。

  • choppiness屬性:中文是波浪翻滾、震盪格局… @@a
  • mesh 屬性的 White Caps 標籤 > thresold 屬性,好像可以增加其白浪滔滔程度(RF5 沒有)
  • 拉近看,紋路並不細緻,應增加 domsin 屬性的 Quality。
  • 輸出 displacement 貼圖時,White Caps 資訊也可以一起輸出在其 alpha chanal 之內。

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

這個網站採用 Akismet 服務減少垃圾留言。進一步瞭解 Akismet 如何處理網站訪客的留言資料