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