2025/03/02

lightning tyflow grow製作閃電效果

 

tyflow grow operator可以做出生長或是閃電的效果。 可以產生這樣的mesh之後,然後取其mesh,做出簡易的閃電動畫。


生長的效果是透過Grow中的Algorithm: Diffusion-limited aggregation做到的。這個只能產生"生長"的粒子。所以後面在接上Spline Paths產生實際的spline。當然也可以用tymesh產生mesh。

2025/02/26

recursive fracture tyflow 重複切割

 


tyflow是基於particle flow的概念,所以基本上是一個事件傳到另一個事件的event-based particle system; 相較於thinkingParticles則是rule-based的。這兩種系統各有各的優缺點。

2025/02/23

Fracture at contact points tyflow根據碰撞處進行碎裂

 

又是跟上一篇有關的內容。如果玻璃被掉到地上,要產生寫實的碎裂,在與地板接觸的位置應該有比較高密度的碎片。因此能根據接觸點來切割幾何體便很重要。

利用Birth Objects先把Box導入到tyflow中,tyflow預設便會計算地板碰撞。當PhysX Collision觸發到下一個Voronoi Fracture時,其Voronoi point mode切換成Point Cloud。

而Point cloud center則設置成At PhysX contact points, 這樣便會在Box與地板相接處的位置產生一群粒子,再利用這些粒子切割Box。





2025/02/21

At PhysX Contact Points 在撞擊點產生粒子

 

這篇是前一篇的補充。如果要在撞擊點產生Point Force,我們必須要利用At PhysX Contact Points這個參數。

Spawn operator中,Spawn mode選擇At PhysX Contact Points,這樣Point Force產生的位置才會在正好在子彈撞擊處。由上圖可看到Point Force的Gizmo顯示其範圍。


tyflow Point Force 點狀力場

 

繼續談玻璃碎裂特效。tyflow有一個operator很方便 - Point Force點力場。就是根據粒子產生力場,很實用 (不知道為何thinkingParticles沒有類似的功能?!)。

在撞擊的位置產生Spawn一顆粒子,然後產生Point Force。在Point Force中要指定受影響的玻璃碎片群組 - Simulation groups  - 2。 產生子彈撞擊的瞬間衝擊力。

2025/02/20

GPU Aid Simulation - Phoenix FD 用GPU加速模擬

 


Phoenix FD的Fire Smoke Simulator的Simulation選單中有個選項是Use GPU to Aid Simulation。一直很好奇這到底能加速到甚麼程度。實際模擬煙霧效果,勾選大約能減少5%的模擬時間,當然這跟你顯卡GPU性能有關,我的是RTX 1000 Ada Generation Laptop GPU。這只能對PCG方面的模擬進行加速,希望未來開發團隊能擴展到其他功能以及液體的模擬。雖然我不抱太大期望 (笑)


2025/02/19

tyFlow Multifracture - Radial 關鍵參數

 


tyFlow Multifracture - Radial 可以用來產生非常寫實的子彈射中玻璃的碎裂效果。本篇介紹其中的關鍵參數。

2025/02/18

tyflow raycast glass shattering 投射粒子在物體上

 


前一篇Glass Shattering with tyFlow玻璃碎裂特效part2,玻璃碎裂的中心是用一個sphere幾何體來控制,能不能改成用程序性的產生,槍指哪裡就在哪裡產生碎裂點呢? 答案就是tyflow的raycast operator。

Procedural texture程序性紋理用於雲朵或地形

 

Graident Ramp紋理可以產生用於地形或是雲朵的圖案。

2025/02/16

Phoenix FD Storage Quality & File size 壓縮品質檔案大小

 

因為官方網站上沒有相關資料,因此做瞭這個簡單統計,看看Phoenix FD的快取檔案中儲存品質(Storage Quality)與最終模擬產生的快取檔案的關係。


Storage Quality

File Size (Mb)

減少至原本的%

14

245

 -

13

211

86.1

12

178

72.6

11

146

59.5

10

116

47.3

Phoenix FD預設的Storage Quality為14,我模擬了煙的效果共16 frames產生的AUR總快取大小為245Mb。當Storage Quality設置為13,檔案大小降至211Mb。大約為原本的86%。當品質降至10,檔案大小甚至可降至原本的一半以下。

渲染出來的品質整體來說幾乎沒有差別,只有在很細微的地方有差異。可以用jpg壓縮的狀況來比擬。





2025/02/14

Glass Shattering with tyFlow玻璃碎裂特效part2

 


續上一篇,講完子彈發射後接著講玻璃碎裂的部分。會比子彈困難但也更有趣

2025/02/13

Glass Shattering with tyFlow玻璃碎裂特效part1

 


用tyflow可以製作出非常寫實的玻璃碎裂特效。其Multifracture operator碎裂的效果甚至比thinkingParticles的碎裂更加精細寫實。這篇我們先探討子彈的設置。

2020/10/04

用V-Ray 5的VRayDirt做舊化效果

 



文 / Hammer Chen; 

模型 / Lien Ying-Te

V-Ray 5的VRayDirt紋理增加了streaks選項,可以做出程序性舊化條紋效果。這裡寫一篇簡單的教學。

2020/07/26

VolumeActivate配合VolumeBreak製作摔盤子


文 / Hammer Chen

這個部落格已經很久沒更新了,決定要來把一些重要的場景檔拿來做教學文件。這個例子裏面,利用thinkingParticles的VolumeActivate Node,讓在物件(盤子)與地面(floor)碰撞的點,程序性地產生碎裂效果。用VolumeActivate配合volumeBreak Node的優點是 - 不是整體碎裂,而是根據撞擊點觸動(activate)碎裂,可以產生更寫實的碎裂動態效果。

整體群組流程是:
object(盤子)=>frag(第一次碎裂)=>more_frag(第二次碎裂)

2019/01/06

利用thinkingParticles製作破碎的玻璃杯教學

 
文 / Hammer Chen

本文將介紹常見的玻璃杯碎開的效果,利用thinkingParticles計算碎裂與rigidbody。

1. 首先,場景有一個玻璃杯,一個地板。四個dummy,其中兩個dummy用來控制球的速度方向。另外兩個靠近玻璃杯的dummy用來產生粒子(稱為impact),我們在之後的步驟會利用impact的粒子來控制volumeBreaker對玻璃杯的切割。

2018/12/26

如何回報軟體bug

文 / Hammer Chen

沒有任何軟體是完美的,尤其是新版的推出,往往會發現新的bug產生。遇到bug令用戶困擾,但如何回報這個錯誤,有幾點要注意:

用thinkingparticles做random horizontal的速度

做粒子特效的時候,水平隨機速度(random horizontal)是很常見的設定。例如shockwave或blast都需要這樣的速度類型。

2018/05/30

The Art of tweaking Parameters 調特效參數的技巧


文 / Hammer Chen
3D模型 / Lien Ying-Te

一直以來都想寫這樣的文章。身為TD / FX Artist,每日的工作不免要調整許多參數,或許算圖引擎的參數很多,特效軟體/外掛的參數更是繁雜。以模擬火焰為例,需要很多時間模擬才能得到滿意的結果,能很有效率地調整參數,似乎是生存的必備技能。以下談幾點自己在調整參數時會用到的技巧:

1. References 找參考圖片,影片。這是做特效的第一步,先找真實的照片或影片,除了在調參數作為"寫實"的參考依據外,還可以先prime your brain,預先讓自己的腦袋對甚麼是真實的火焰有個印象,植入潛意識中,在實際用CG軟體操作時,將有意想不到的幫助。

2. Unit 注意單位。單位是特效要成功的最重要基礎,從兩個方面來看:首先,如果單位適當,比方使用兩公分樹枝燒出寫實的火焰(而不是錯誤地使用兩公里的樹枝),比較容易調出真實的火焰; 另一方面,如果固定使用正確的單位,場景回收使用,用在下個專案上會更加容易,久而久之可建立自己的特效模板。如果每個場景都不使用標準的單位,那在合併場景,重複使用參數上,就難免遇到惱人的問題。

3. Autobackup 自動備份檔案。這個步驟不管你是不是在調參數,都很重要。如果可以的話將可undo的步驟設多一點,調參數有時候會想回到前面的好幾個步驟,如果有Autobackup可節省不少時間。甚至,避免掉令人懊悔的悲劇。

4. Create a Preview 產生預覽畫面。這與步驟3有相關,如果有產生預覽的習慣,就可知道三天前的測試效果到底是如何; 產生預覽也方便比較參數產生的結果差異。

5. Faster iteration 讓每輪的測試快一點。儘量把測試的場景弄得夠小,使每次得到的回饋快一點。比方說把Grid設定在場景的重點範圍,不需要讓Grid涵蓋整個場景。這樣每一輪的測試才能越快得到結果。一旦測試完成,才把Grid放大到案子的實際需要的尺寸。

6. One parameter at a time 一次只調一個參數。如果你一次調整三個參數,比方說調整了SPF, Scene Scale與Fuel amount,你就不知道到底哪個參數對火焰的高度產生怎樣的影響。除非很有經驗,否則不建議一次調整多個參數。

7. Know how to compensate the effect 知道如何代償某個參數帶來的效應。特效最困難之處在於,參數之間不是完全獨立的,經常,調整參數A也會連帶影響參數B。我們假定把參數A調高,會讓火焰變高,可是當我們調整參數B時,參數B會讓參數A對火焰變高的影響削弱。這時候我們在調整參數B後,就要再把A調高一點點。在軟體公司把這連帶關係都自動化之前,你都必須要運用細心的觀察,做好代償的調整。最常遇到需要代償的現象是當你由低解析度的Grid調到高解析度的時候,有可能是Conservation的Quality要隨之提高。

8. Finding the right value 找到最適當的數值。想要做出寫實的火焰,或許有超過十組的參數必須要調整,比方說Grid size, SPF, fuel amount, Scene scale, solver types...等等。首先,我們必須要確認這個參數對火焰是有影響的,從預設值為起始,我會給予極端值,比方說風力設定為99999,確認對場景有影響。再來,可以從預設值的兩倍多,五倍多,或者兩倍少,五倍少開始下手。比方說Scene scale預設為1,我們可以從0.2,2,5這樣的數值下手。比較這些數值所得到的結果,就更容易找到最適參數。

9. Reset to default 沒有差異就調回原本的數值。如果發現把參數A調成兩倍,得到相同的結果,那麼就建議你調回原本的數值,不要讓整體的參數離預設的參數越來越遠,最後達到難以收拾的混亂程度。

10. By process of elimination 排除法。有時候你拿到的場景放了很多燈,很多力場。建議在調參數時儘量越簡單的環境越好,把所有的力場都先排除掉,再一個一個加進來,如此方可請楚知道每個力場的效應為何。

11. Don't over tweaking 不要過度測試參數。有時候調參數到某個程度,會發現越調越差,這時候不用擔心,因為在步驟3我們已經有備份,配合步驟4的預覽,我們可以順利地找到上一個好看的測試結果。

2018/01/06

Lele談V-Ray Next Beta 1

Photo used under cc0 license

原文  / So, what's Next? But V-Ray, of course!
作者 / Emanuele Lecchi
翻譯 / Hammer Chen

接下來是什麼? 當然還是V-Ray!

如果您關注最近宣佈的V-Ray的公測版,您會注意到。 我們已經從名稱中刪除了V-Ray版本號,並採用一個比較自然的語言字來取代:

“Next”

不用擔心,V-Ray Next仍然是第四版(準確的說是4.02.01版)的第一個測試版本,但我們覺得有必要改變名稱,因為單單增加版本號難以表達這個軟體升級後的變化。

聽明白了,我本來很支持改名成Render Legion,當然,選擇這個詞的部分原因就是強調新的改版。 但是,其實還有更多的意涵:Next正是因為V-Ray徹底改變而選的名子。

Next不僅僅是一個版本,Next是一個里程碑:由於長期需求帶來的老化的代碼庫需要提升,而這正是V-Ray Next的目標。

在過去的幾年中,ChaosGroup公司投入了大量的資源來研究技術,盡全力地滿足用戶需求,但是這種工作往往受到幾年前必須做出的舊妥協,因而帶來的軟體開發局限的挫折,這種狀況使得導入功能變的困難。

V-Ray Next解開了ChaosGroup程式設計師身上的過去舊程式碼的枷鎖,經由全面性的清理與重構,以最新可用的科技來滿足給予的算圖任務。

更重要的是,製作V-Ray的二十年經驗將結成果實,就像一個乾淨的結晶般(like a clean slate)。

哇,這就代表:

這個過程的結果會有兩個層面:一方面,對舊版的兼容性會在某些地方被破壞,因為一些舊的軟體手段不再存在,或者在SDK中改變了名字,另一個層面來說,會增加很多新功能,採用現代化的工作流程,將會隨之顯現。

第一個測試版的外觀和感覺就像任何你用過的V-Rau 3.x版本一樣,這很好,因為許多徹底改變的代碼庫(radical code base)已經發生變化。

Beta階段1的目標正是為了找到功能行為與3.x版本不一致的地方,這樣可以快速地斬除這些潛在的問題。

當然, 沒有一些新的功能ChaosGroup是不會發布軟體更新的:你將有機會嘗試新的自適應圓頂燈(Adaptive Dome),向light portals說再見,或者新的自動曝光(Auto -Exposure)自動白平衡(Auto-WhiteBalance)功能,或至少一些早期導入的功能等等。

然後Next會變成怎樣呢?

那麼,當然我必須遵守NDAs合約,加上我個人才疏學淺,無法跟各位分享太多,但是我們(ChaosGroup)一直在傾聽,我們一直在為你努力帶來整體的巨幅改善,會先從你渲染工作上最花時間的地方開始:您的照明工具與材質工具,界面和行為,VFB,IPR和輔助技術,這樣轉換DCCs(譯者註: 全名digital content creation,通常指3dsMax, Maya...這類的3D軟體套件)就更容易了。

特別注意在第三方應用程序中完成的後期工作,以及在VFB內直接進行的“相機內”工作,目的是允許更大程度的技術控制和創造自由,用戶需要這些功能。 我們將在下一個測試版階段推出這些新功能,敬請期待!

所有授權用戶都有機會使用V-Ray Next, Beta 1 for 3DS Max,請訪問我們的網站(https://www.chaosgroup.com/vray/3ds-max#beta)以加入Beta測試!

祝你測試愉快,新年快樂!

p.s.: Vlado在以下連結展示了他最近在的工作成果https://www.linkedin.com/feed/update/urn:li:activity:6346723085571493889