作者簡介:
張迺剛
現任力方國際數字科技有限公司(華北地區)藝術總監,力方國際天津公司總經理;
個人作品入選CGTalk、3DTotal、Raph精品畫廊,並獲得CGTalk五星精品獎;
2009年出版個人書籍《3ds Max/VRay 印象超寫實建築效果圖表現技法》;
更多個人作品請關注http://blog.163.com/zng_c
注:本文內容選自《3ds Max/VRay 印象超寫實建築效果圖表現技法》
GI全名為Global Illumination(全局光照)。在一個場景中,根據照明中光能的來源,分為直接光照和間接光照,直接光照是有光源所發出的光能直接照射到場景中物體上所形成的照明效果,間接照明是光源發射的光能經由場景中其他物體表麵反彈後照射在某些物體表麵所形成的光照現象(間接照明中的光能來自與直接照明中被物體表麵所反彈的光能)。
理解上麵的分析後,就好理解什麼是GI了,Global Illumination (全局光照)就是由直接光照和間接光照一起形成的光照,全局照明更加符合現實中真實的光照。
其實 Global Illumination 在圖形領域裏麵已經不算是新的技術了,微軟,nvidia等廠商一直在開發GI技術,如今的GPU速度已經非常之快,並且浮點計算能力已經相當強大,普及Global Illumination全局光照技術是硬件廠商的必然發展方向,經典全局光照模型的公式如圖1所示。
圖1 經典全局光照模型的公式
#p#e#
通過上述簡單分析相信讀者已經對GI有啦大致的了解,GI參數麵板如圖2所示。
圖2 GI麵板
1. ON:GI的開關。
2. GI caustics:全局光焦散控製。這裏主要控製間接光照產生的焦散效果。全局光焦散是GI產生的焦散光學現象,可以由天光,發光物體等產生,注意,有直接光照產生的焦散不受這裏參數控製,可以在VRay:Caustics(焦散)展卷欄中的設置。使用GI焦散需要更多的樣本,否則會有比較大的噪波,所以需要設置更高的參數,渲染時間會變慢很多。
(1)Reflective 反射焦散控製是否讓間接光產生的反射焦散。間接光照產生反射焦散默認是關閉的。
(2)Refractive:折射焦散控製是否讓間接光產生的折射焦散。間接光穿過透明物體時會產生折射焦散 注意這和直接光穿過物體產生的焦散是不一樣的。
#p#e#
3. Post-processing:後加工選項組,主要是對間接光照在增加到最終渲染圖像前的一些修正。如飽和度、對比度。用戶可以根據自己的需要進行調節。
(1)Saturation:飽和度,值變大,飽和度會加強。
(2)Contrast :對比度,值變大,對比度會加強。
(3)Contrast base:對比度基礎,和對比度類似,這裏主要控製明暗對比度,值越高,明暗對比越強。
(4)Save Maps per frame(每幀保存):在渲染動畫時,控製每幀是否用Post-processing裏的參數來控製每幀的渲染圖像。
4. Primary bounces:初級漫射反彈選項組。
(1)Multiplier倍增值,這個參數控製為最終圖像貢獻多少初級漫射反彈,值越高,一次反彈的光的能量越強,渲染場景越亮。
(2)GI engine GI引擎這裏選擇初級反彈的GI引擎,包括下麵4個:Irradiance map(發光貼圖引擎)、Photon map(光子貼圖引擎)、Quasi-Monte-Carlo(準蒙特卡羅引擎)、Light cache(燈光緩存引擎)。
#p#e#
5. Secondary bounces:次級漫射反彈選項組。
(1)Multiplier 倍增值控製次級漫射反彈的光的倍增值,值越高,次級漫射反彈的光的能量越強,渲染場景越亮。
(2)GI engine(GI引擎)這裏選擇次級漫射反彈的GI引擎,包括下麵4個:None(不使用引擎)、Photon map(光子貼圖引擎)、Quasi-Monte-Carlo(準蒙特卡羅引擎)、Light cache(燈光緩存引擎)。
以上是Global Illumination(全局光照)麵板的介紹,本章重點詳解VRay Indirect Illumination(GI) 全局光照中的 Irradiance map(發光貼圖)渲染引擎以及Quasi-Monte Carlo GI(準蒙特卡羅GI)。在大多數建築表現圖的渲染中都使用 Irradiance map和Quasi-Monte Carlo的配合方式,這也是VRay中最常用的渲染引擎搭配方式。
在一級全局光照引擎下拉列表中有四中渲染引擎。第一種是Irradiance map發光貼圖渲染引擎,第二種是Photo map光子貼圖渲染引擎,第三種是Quasi-Monte Carlo準蒙特卡羅渲染引擎,第四種Light cache燈光緩存渲染引擎。這四種渲染引擎在第一級和第二級漫反射反彈中可任意搭配使用。
#p#e#
Irradiance map發光貼圖
發光貼圖的計算方式是基於發光緩存技術的,是隻計算場景中某一些特定的間接照明,對附近的區域進行插值計算。發光貼圖在最終圖象質量相同的情況下運行速度要快與其他集中渲染引擎。而且相比之下渲染出來的噪波較少。發光貼圖可以被保存,以便被載入使用,尤其是在同一場景表現動畫的時候,我們可以在不同角度疊加保存被計算的發光貼圖采樣點,以便加速渲染整個動畫過程。發光貼圖還可以加快麵積光源的計算。但由於采用了差值計算,所以容易在細節上或在設置時了運動模糊的場景中產生模糊和噪波。如果參數設置過低,渲染出的動畫很容易產生動畫跳幀。
Irradiance發光貼圖描述了三維空間中任意一點和全部可能照射到這一點的光線。通常照射這個點的每條光線都是不同的,但是渲染器在渲染時對這些光線也有限製,由於被照射的點都在場景中物體的表麵上,所以有一種約束叫做表麵約束。另外一種是渲染器隻考慮這個點被照射的所有光線數量而不去計算這些光線來自哪個方向。這些被計算的所有的點是一個3維空間方式的集合。當光線照射到物體表麵時,VRay會在發光貼圖中查找與當前計算過的點類似的點,並從已計算過的點中提取信息,根據這些信息將這些相似的點進行內差值替換。如果那個點與其他任何被計算過的點不同,就會被重新計算,保存發光貼圖到內存中。由於上述原因,所以發光貼圖是自適應的,它會根據我們給定的參數對場景中物體的邊界、物體交叉部分以及陰影等重要的部分進行精確的全局光照計算,在大量平坦的區域進行低精度的全局光照計算。發光貼圖是VRay渲染係統的默認渲染引擎,也是參數最多的渲染引擎。
通過上麵的分析,讀者已經對Irradiance發光貼圖不陌生了,下麵講解一下發光貼圖麵板設置,如圖3所示。
圖3 發光貼圖麵板
1. Built-in presets:內置預設,VRay默認的有8種模式,如圖4所示。
圖4 Built-in presets麵板
Current preset:當前選擇的模式,其下拉菜單包括8種模式:Custom(自定義)、Very Low(非常低)、Low(低質量)、Medium(中級)、Medium-Animation(中級-動畫)、High(高級別)、High-animation(高級別-動畫)、Very high(非常高)。這8種模式,。當選擇Custom(自定義)的時候,就可以手動調節Irradiance map裏的參數。
#p#e#
2. Basic Parameters(基本參數):主要控製樣本的數量,采樣的分布以及物體邊緣的查找精度,其具體參數如圖5所示。
圖5 基本參數麵板
(1)Min rate(最小比率):控製場景平坦區域的采樣數量,0表示計算區域的每個點都有樣本,-1表示計算區域的1/2是樣本,-2表示計算區域的1/4是樣本。
(2)Max rate 最大比率 控製場景中的物體細節的采樣數量,如邊線、角落、模型轉折複雜的地方 0表示計算區域的每個點都有樣本,-1表示計算區域的1/2是樣本,-2表示計算區域的1/4是樣本。
(3)HSph.Subdivs(半球細分):Hemispheric Subdivs的簡寫控製 VRay用來模擬光線的數量,值越高,光線數量越多,樣本精度也越高,渲染的精細度會更高,渲染時間會更慢。注意它並不代表被追蹤光線的實際數量,光線的實際數量接近於這個參數的平方值,並受QMC采樣器相關參數的控製。
(4)Interp.samples(插值采樣): Interpolation samples的簡寫,這個數值控製對樣本進行模糊的處理,較大數值得到比較模糊的效果,較小數值得到比較銳利的效果。需要根據經驗調節。
較小的數值可能會產生黑斑。
(5)Clr thresh(顏色極限值):color threshold的簡寫,這個值主要讓渲染器分辨哪些是平坦區域,哪些不是平坦區域。較小的數值將使發光貼圖對照明的變化更加敏感。
(6)Nrm thresh(法線極限值):normal threshold的簡寫,這個值主要是分辨哪些是交叉區域,那些不是交叉區域,並且按照法線的方向來區分他們。值越小,對法線方向的敏感度越高。
(7)Dist thresh(距離極限值):distance threshold的簡寫,這個值主要是分辨哪些是彎曲的表麵,這個參數確定發光貼圖算法對兩個表麵距離變化的敏感程度值越高,敏感越強烈。
#p#e#
3. Options
Options參數麵板如圖6所示。
圖6 Options參數麵板
(1)Show calc.phase:勾選的時候,顯示計算相位,在計算發光貼圖的時候會顯示出計算效果。
(2)Show direct light:顯示直接照明,隻有激活Show calc.phase選項才可以勾選該選項。
(3)Show samples:勾選此選項後,VRay以小圓點形態顯示發光貼圖中的樣本情況。
如圖7所示為Min為-8和-3的測試渲染效果對比,可以發現Min越大,對於畫麵的平坦區域樣本越多,Min數值越小,平坦區域樣本越少。
圖7 Min為-8和-3的測試渲染效果對比
如圖8所示為Max為-3和0的測試渲染效果對比,Max的參數越大,角落的樣本數量就越多,Max的參數越小,角落的樣本數量就越少,當Max的數值增大時渲染速度也會變慢。
圖8 Max為-3和0的測試渲染效果對比
如圖9所示為測試渲染效果及渲染時間的對比。
9 渲染效果以及渲染的時間的對比
#p#e#
Quasi-Monte Carlo GI (準蒙特卡羅 GI)
Quasi-Monte Carlo 準蒙特卡羅:準蒙特卡羅渲染引擎計算全局光照是一種非常優秀的計算方式。Brazil渲染器的全局光照方式與它非常的相似,它會驗算每個材質點的全局光照,因此渲染速度很慢,但效果也是最精確的,尤其是在具有大量細節的場景。它對運動模糊的計算也是最精確的, 但它同樣需要與其他的渲染引擎搭配使用才能得到更真實的效果,而且如果沒有較高的細分度,渲染出來的圖像會有顆粒效果。
準蒙特卡羅渲染引擎是一個非常優秀的全局光照計算方式,它可用單獨驗算每個著色點的間接照明,因此渲染速度十分的慢,它的計算方式類似於Brazil巴西渲染器的全局光渲染計算方式,效果是最精確的,尤其是表現大量細節的場景。但它也有一個缺點,如果細分度設置過低,渲染的效果會有顆粒感。即便是設置很高的細分,顆粒感也不會輕易消失。
目前在多種渲染中,間接光照都是被分為兩大部分來控製GI的產生,初級漫反射反彈和次級漫反射反彈。當光線在第一次反彈之後繼續在場景中反彈,就產生了次級漫反射反彈。所以可以將次級漫反射反彈簡單的理解為光線在完成第一次反彈以後的所有漫反射反彈的全局控製。而在 二次反彈中同樣可以使用Quasi-Monte Carlo GI,參數麵板如圖10所示。
圖10 Quasi-Monte Carlo GI參數麵板
(1)Subdivs(采樣):控製Quasi-Monte Carlo樣本的數量,數值越大效果越好,速度越慢,數值越小,會產生較多的雜點,渲染速度會快。
(2)Secondary bounces(二次反彈次數):如果Quasi-Monte Carlo在一次反彈中激活時,這個數值將不起作用,它控製著二次反彈的次數,數值越小,二次反彈效果越不充分,場景會較暗,同樣數值越高速度會越慢。一般超過12後的數值不會有太大的變化。
如圖11所示為不同采樣參數的測試渲染效果與渲染時間的對比。
圖11 Subdivs為2、8和20時的測試渲染效果及渲染時間的對比
觀察3張測試渲染效果得知,QMC采樣越大,雜點越少,同時速度越慢;采樣越小,雜點越多,渲染速度越快。
#p#e#
如圖12所示為不同Secondary bounces參數值的測試渲染效果的對比。
Secondary bounces為1、4、20和40的測試渲染效果對比
觀察4張測試渲染效果得知,二次反彈數值越大,光線反彈越充分,暗麵越亮;二次反彈數值越小,光線反彈約不充分。如Secondary bounces 為1時,暗麵非常灰暗(Secondary bounces的值過大時,對於畫麵的效果影響是很小的,如參數為40和20時畫麵效果幾乎是沒有變化的)。
上一篇 VRay常用參數詳解
下一篇 燈光材質小心得小技巧
熱門課程
專業講師指導 快速擺脫技能困惑相關文章
多種教程 總有一個適合自己專業問題谘詢
你擔心的問題,火星幫你解答這篇文章詳細介紹了如何學習使用UE4進行可視化製作,以及火星時代教育對此方麵培訓的專業性
麵對繁多的移動端UI培訓機構,如何選擇一個適合自己的呢? 本文將為你解答疑問,而火星時代教育,我們敢說是最好的選擇!
基於火星時代教育的高質量課程體驗, 揭示遊戲開發的前瞻性和職業發展前景。
以UE4作為工具來建構智慧城市,能大大提高其實用性和創新性。火星時代教育通過專業的UE4課程培訓來助力學習者掌握UE4建構智慧城市的技巧。
對於很多熱愛製作遊戲特效的朋友來說,擔心的一個問題就是,學習遊戲特效需要多少時間?火星時代教育為您詳細分析和解答。
了解影視原畫設計的基本知識和學習路徑,尤其是在火星時代教育的專業指導下,你將擁有更好的學習體驗。
1. 打開微信掃一掃,掃描左側二維碼
2. 添加老師微信,馬上領取免費課程資源
同學您好!