有沒有一種辦法可以很清晰理解shader中實現不同質感的關鍵要素?

比如說啞光塑料,高反射塑料,布料,金屬,要怎樣才能很好模擬他們的質感。

是否有一種相對通用的光照模型,只是用一些參數的值範圍不同就能體現出不同的感覺。

或者說什麼樣的質感一般需要用什麼樣的光照模型


對於真實感渲染來說,這個問題最好是使用基於物理的著色方法。

可閱讀《Physically Based Rendering, Second Edition (豆瓣)》及SIGGRAPH的相關課程材料:

  • SIGGRAPH 2014 Course: Physically Based Shading in Theory and Practice

  • SIGGRAPH 2013 Course: Physically Based Shading in Theory and Practice

  • SIGGRAPH 2012 Course: Practical Physically Based Shading in Film and Game Production


1.現在流行的physical based的方法就是從這一角度出發的. 首先你要有一個能領會參數的美工.

2.不同材質怎麼寫這個我只能說是理論結合感覺.

3.生活中多觀察,當然你要能夠處在一個適合創作的環境中,畢竟遊戲什麼的都是藝術.


https://www.shadertoy.com/ 試試這個工具網站


milloyip的答案很清楚 再推薦一篇 course 《exploring the potiential of layered bsdf models》基本能解答你所有的材質需求 另外你列出的這些材質基本上都能用多層microfacet模擬 可以參考microfacetbsdf的論文


可搜索BRDF,BSSRDF,Phase Function等關鍵字。。。至於想用幾個參數來調節,那就取決於參數空間的大小,通用BRDF的構造空間是無限的非線性的,有限參數只能表現有限情況,目前一個趨勢是通過對真實的材質進行BRDF採集,從不同方向打光,看它怎麼反射,然後用採集到的數據還原一個近似的四維BRDF場,對於用戶來說,不需要知道這些,構建一個材質庫,包括各類常見材質,以及材質間的線性組合,足夠用。要表現金屬等材質,加上環境反射效果更佳,這是從大腦感知角度出發。


推薦閱讀:

有哪些Autodesk Maya的技巧已經過時了?
如何拍攝/製作VR視頻,使其能在暴風魔鏡等入門級VR眼鏡上播放?
用三維滑鼠建模、操作電腦體驗如何?

TAG:遊戲開發 | 3D建模 |