2016/11/26

Beta tester與軟體公司該做的事

文 / Hammer Chen

Beta tester該做的
1. 用軟體
   - 正常使用
   - 壓力測試 (高解析度的模型、high grid resolution...等等)
   - 流程測試
2. 回報bug
   -要能重現bug   簡化場景, 簡化至剛好可以重現bug寄給原廠
   -提供作業系統 軟體 額外使用的外掛的版本號
3. 提供wishlist意見,加到新增功能清單中。這時候可以私心加入自己想要的功能

軟體公司該做的事
1. Beta版到底有哪些新功能? 要列清單寫清楚。因為有時候beta tester拿到軟體,高高興興裝起來以為有什麼驚奇的東西,結果摸了老半天不知道新版到底多了什麼 ...
2. 要提供beta tester回到舊版的機制。Beta tester其實比其他同行更早裝了新軟體,很酷以外也擔負了風險。現行的專案可能因此爛掉。軟體公司要讓測試員能隨時回到stable build穩定版,無後顧之憂。 

PhoenixFD and VRay benchmark參數與算圖數據


文 / Hammer Chen

PhoenixFD以VRay渲染foam/splash/mist以預設參數會耗相當多時間。以下是很粗略參數的效能評測,可讓原本耗費1小時的圖減少至1~2分鐘,品質降低在可接受的範圍。

2016/11/16

V-Ray導入alShaders shader

原文 / v-rays implementation of the anders langlands alsurface shader
略譯 / Hammer Chen

(圖片請見原文連結)
alSurface shader的歷史
alShaders中的“al”是以作者Anders Langlands來命名的。 他目前任職於Weta Digital的VFX sequence主管 。他寫了一系列針對Arnold渲染器的shaders Anders的動機是希望導入製作上需要的shaders到Arnold原本沒有的功能中。其中一個他寫的最重要的shaders就是alSurface shader 也被稱為uber-shader,這個shader被大家拿來用在實體 、金屬、 透明物、 反射物,甚至次表面反射, 例如皮膚材質。他寫的shaders一直在業界廣為推崇, 但是其中最為津津樂道的是能重現皮膚材質。最近他開放了shader的原始碼, 讓其他人可以植入到別的渲染器中。他甚至開了一個網頁專門介紹他的alShader。

V-Ray首次導入alSurface shader
由於許多V-Ray用戶的要求 Luc Begins在V-Ray論壇上, 加上這個shader現在已經是開放程式碼的。 Vlado決定要植入alSurface shader的部份功能, 特別是皮膚材質的部份。這個shader會考量到diffuse, 兩階的specular與次表面散射, 唯一缺乏的部份是折射與透明度, 可能之後會添加進去。以下是V-Ray的alSurface shader的分解說明:

由於導入alSurface shader的目的是圍繞在皮膚材質, 因此我們來看看跟其他的皮膚材質 Arnold中的aiSkin shader與VRay Skin Mrtl這三者有什麼差異 (事實上作法很類似)

以下是差異點:
Diffuse: 
VRay Skin Mtl: Diffuse 與 Sub-Surface color事實上是兩個不同的map然後以diffuse amount混合在一起。
alSurface: Diffuse與 Sub-Surface color用的是同一張map, 然後有一個SSS控制surface如何受到subsurface scattering與Lambertian diffuse的影響

Sub-Surface Scattering次表面散射:
VRay Skin Mtl:有三階的次表面散射, 每個都平等地混合在一起,使用了標準的dipole model計算SSS
alSurface:同樣也有三階的SSS, 但是每個各有權重控制, 也提供幾種SSS模式 。Vlado已經導入了其中兩種到V-Ray版的alSurface shader Diffusion法, 可以比標準的dipole model保留更多細節 Directional法 允許使用單一個Scatter maps 產生更多的細節保留。

Specular高光:
VRay Skin Mtl: 使用了兩個lobe specular模型, 具有銳利的 與廣的反射, 同時使用Phong作為reflective BRDF 。這個模型在很多狀況都很好用, 但是在平視(glancing angles)的角度時 他會因此減切到SSS 產生變暗的問題。 這是因為Fresnel效應是根據一個函數計算觀察角度與表面法線角度 ,而忽略了從光線照明表面的方向

alSurface: 這個模型也用了兩個lobe specular , 但是除了使用如Phong或Blinn的平滑BRDF 它還此用了微表面(microfacet) 。Fresnel效應則是根據一部分BRDF的計算(也就是所謂的glossy Fresnel) 並且會考慮到觀察的角度, 表面法線與光線的方向 ,使用者可以選擇GGX與 Beckmann BRDF兩種模型 根據微表面的特性 可以避免掉變暗的問題 從平視角度到逆反射(retro-reflection) 除此之外這個模型在同樣的平視角度不包含SSS。

其他明顯的差異
用在Fresnel的IOR在兩個shader都不同, 因為計算fresnel的方式有所不同。 因此, 如果用戶使用相同數值 alSurface shader的看起來會反射更強。

VRay Skin Mtl使用glossiness 因此高數值就更光亮 而alSurface shader使用roughness因此數值越高就越diffuse 因此貼圖就必須要先反轉 如果你要轉換套用的話

VRay Skin Mtl以diffuse混合 表示數值1等於100% diffuse,  alSurface shader則是根據SSS混合 表示數值1等於100% SSS 如果你有用到貼圖Single Scatter Map 可能也需要反轉才能套用

[相關資訊]
alSurface shader Wikihuman project

2016/11/13

Phoenix FD best videos

Some of the best videos by using ChaosGroup PhoenixFD. For more videos, you could follow on my pinterest. Enjoy~



2016/11/09

PhoenixFD optimization效能最佳化


編譯 / Hammer Chen
翻譯了幾篇跟phoenixfd效能最佳化的討論,大部分都跟splash與foam的算圖有關,因為這兩個影響算圖甚鉅。可是要產生寫實的海浪水花,這些splash與foam卻都是關鍵。

2016/11/04

PhoenixFD 3.0 for 3dsMax Review測試報告


文 / Hammer Chen

優點
  • 快速設定預設Quick Setup presets,迅速上手14種特效情境
  • scene scale場景尺度參數方便全局調控模擬效果
  • 全新的FLIP Solver,比起舊版可更輕易模擬大量細節的液體
  • smoothness控制,有效減少grid artifact
  • 新的PCG Solver,massive vorticity可以產生更寫實、帶細節的煙霧、爆炸
  • fire有獨立的opacity控制,可製作更寫實的火焰
  • 可模擬水花、泡沫與霧氣,將寫實度提昇更高層次
  • 直接降速,就可以達到不錯的慢速流體效果
  • 業界領先,非常直覺的模擬後變速控制
  • 新的force類型,可產生變化多端的效果
  • 支援輸出Alembic格式

缺點
  • 缺乏專門的render elements,無法直接分開smoke與fire
  • 無法模擬rigid body dynamics
  • 缺乏狀態控制,無法靈活地控制轉換狀態
  • 變速與增加細節的cache都共用在Resimulation底下,應該要獨立分開

距上次筆者發表PhoenixFD 2.2版的測試報告又經過了六個月(點這裡觀看閱讀)。這段時間,有幸參與了PhoenixFD每日的nightly測試版,也因此能在短時間與各位讀者分享這次令人期待的新功能! 一套外掛要同時模擬水 、做火、做煙霧、甚至還要能渲染粒子,這本來就是野心很大目標,可以想見程式設計本身的困難度,以及使用者介面設計的棘手。

2016/10/09

無偏差( unbiased)算圖的真相

原文 / the truth about unbiased rendering
作者 / ChaosGroup lab
編譯 / Hammer Chen

多年來,大家都在爭執到底是偏差式算圖(biased)或是無偏差式算圖(unbiased)哪個比較好。『無偏差式的算圖』這個詞已被用了許多次了,幾乎等於精確算圖的代言人。事實上幾乎所有的算圖器其實多多少少都帶有偏差,即使是那些宣稱是無偏差的算圖器。 因為偏差式算圖真的比較快,更智慧,也不代表就不精確。為了要更了解這點,我們分成幾個方面來了解:


2016/10/04

Phoenix FD 3 vs FumeFX 4 Comparison

by Hammer Chen

last update: 2016/10/04


price
USD 845*
USD 830*
Simulation capability
fire, smoke and explosion
Fire, smoke, explosion, water, high viscosity fluid, Infinite ocean with splash and foam, beer foam, boat wake
UI
Floating UI
Rollout
cache file path
Absolute path
Relative path to scene, $(implicit)
Adaptive Grid
YES, plus expanding grid option
Fully controlled, fit in cam view
Opacity for smoke and fire
One for fire, one for smoke
shared One for fire, one for smoke
Particle shader

PHXFoam, able to render (large amount of) particle
Default Object Interaction
Inclusive list
Exclusive list
Ocean Texture Map

PhoenixFDOcean Tex
Color gradient / curve  editor
user friendly
difficult friendly with advanced controls
Particle source control
user friendly, radius with curve editor
through particle size or "Custom Prt Size"
Gravity helper
YES, straightforward and effective

Other forces

PlainForce, BodyForce and WaveForce
2D Simulation

YES
Viewport preview

accurate viewport preview
auto reduction
auto range
Interactive simulation (Simulation not locking the gui)
YES (start form FumeFX 4.0)
YES
Amp. resolution
Wavelet
Resimulation: wavelet, interpolate
retime
YES, Post Processing
YES, resimulation /time blend: general purpose or slow down
Mode: Linear, cache index, Loop
Frm.Blend: Interpolation, velocity
Workflow for resim / select cache
straightforward, Sim Mode
Automatic switch caches, might be confusing for beginner
Inertial forces
YES, Use Grid Motion
YES, can link sim grid to moving object, i.e.: moving torch
Dynamic solvers
Solvers: CG and QCG Advection: Default, Advanced (fields), Advanced(fields and vels)
Conservation: Direct Symmetric, Direct Smooth and Buffered, PCG Symmetric
Advection methods: Classic, Slow moving, Forward transfer, Multi-pass and FLIP
Advanced vorticity
vorticity II
Massive vorticity
Fluid Mapping
YES

heathaze

YES
displace voxels post-sim
NO
YES
Fire create smokes
YES
YES, Fuel: enable burning
Smoke buoyancy
Sensitive to dynamic, unlimited
range from 10 to -10
Cache optimization
Drop unused channels by post processing
1)Storage quality control (similar to jpeg compression)
2) No-Export Channels option in the Resimulation
Import Field3D, openVOD
support
support
Export PRT
support
support
Export Alembic

support
Self-illuminate acceleration
Illumination map
Grid-based
Render acceleration

probabilistic shading
Black-body shader
YES
YES, Allowed gradual transition between the default Black Body Fire model and an artistic model using the 'Physically Based' option
Sharpness control
Sharpen strength for fire and smoke
Sampler type: Box, Linear and Spherical
Content Smoothing for separate channel
Render elements
FumeFXfire, FumeFXsmoke, velocity, zdepth
YES for Maya version
Integration with Particle Flow
FumeFX Birth, Follow, Test
PhoenixFD Birth, Force, Test
Integration with thinkingParticles
FumeFX Birth, Follow, Probe

GPU Preview
Floating viewport
Through 3dsmax extended viewport or
Display on current viewport
Solid mode

YES
Network simulation
through backburner
"...it is possible to send many variations of the same simulation across the network and pick the result the user likes the most..."
Backburner or Deadline,
"... several simulations with varying parameters are simulated, each on a separate computer..."
Spline Follow
YES
YES, follow path
Render Warps
YES

Effectors
YES

Learning curve

Lots of parameters, take time to learn
New Quick Presets provides several quick settings as good starting point
Renderer compatability
mentalRay
V-Ray
Customer support

Offical forum and Facebook group
*Please check official website for their local store / sales details.

related posts:

2016/09/22

V-Ray電影製作裡的抗閃爍方法



原文 / ChaosGroup V-Ray RT GPU Fan Group
編譯 / Hammer Chen

Maarten Nauw問:大家有沒有試過上面影片中所用的方法 等不及有空的時候來試試看

Emanuele Lecchi答:我參與2012年時參與電影【Oblivion遺落戰境】的峽谷場景製作,用的設定是LC per frame, BF as primary engine,該場景具有移動的幾何體(模型破壞,也帶有拓譜改變) 粒子 每個frame有幾十一個polygon。用這樣個設定完全沒有閃爍的問題,而且還只是用V-Ray 2.x的版本而已。

我不會建議你用該影片中的方法做為通用作法 有兩個原因

2016/08/27

details for section斷面的細節

筆記 / Hammer Chen

thinkingParticles預設的volumeBreak切面太平滑。以下是網路上找到的幾個讓破碎斷面產生細節的技巧

bercon noise for lichens地衣遮罩


文 / Hammer Chen
免費的 BerconNoise程序性紋理,可以用在很多自然效果上,例如rusted metal生鏽金屬。這裡我們分析一下幾個關鍵參數,找到適合用在lichens地衣或是發霉的紋理上。