下面搭建壹個簡單的場景來說明問題,為什麽要開啟全局照明?
灰色地面,紅色背景墻,綠色茶壺,壹個VR太陽燈。
在沒有啟用GI的時候渲染,我們可以看到茶壺的壹側被直接照亮了。能把物體直接照亮的是直接照明。而茶壺的另壹側是漆黑的,這是由於他接收不到直接照明,而間接照明又沒有打開。
那麽,什麽是間接照明呢?在生活當中如下圖光源會先照射到墻上再反射到茶壺上,這種照明由於並不是直接照在茶壺上,而是照到別的物體上反射到茶壺上,所以叫做間接照明。
可以看到由於墻面是紅色,間接照明導致了茶壺的暗部受到了紅色的影響
從左側渲染時間上我們可以看到渲染間接照明會更耗時。因為計算了更多的信息。
全局照明就是把物體的直接和間接照明都進行計算,下圖的對比中啟用全局照明後渲染出了更好的光照信息。
我們知道生活中光源會發射無數條光線,而光線會根據物體的平坦程度產生漫反射,照射到茶壺的後面。
由於光線數量龐大,會有很多次的漫反射就像下面壹樣
這樣無數條光線,先照射到墻體上反射到茶壺上,再反射到地面上,再反射到墻面上。這樣無數次反射,直到能量消失。這種接近無窮盡的情況在V-Ray中妳永遠也渲染不完。
現在我們看下V-Ray全局照明的首次引擎和二次引擎是如何計算這種問題的。
燈光照射到墻面上會反彈壹下,V-Ray會計算壹下光線直接照射到這個點上會反射多少光線到其他物體上,具體反射多少是由粗糙度來決定,如果是鏡子就反射的就多,粗糙的木頭、泥土反射的就少。根據這個道理來運算出到底反射多少光線。這種第壹次的反彈,叫首次反彈。
第壹次反彈後,光線還會反彈到地板或者墻面上。這裏,我們統稱第壹次反彈後的所有反彈都為二次反彈
而V-ray裏面反彈的計算時相反的,即反向計算。
什麽是反向計算呢,如下圖現實生活中光源照射到物體上後再反射到我們的眼睛上,我們才能感受到物體的亮度,顏色和材質等信息。這是壹種正常的運算方式。
而V-Ray的算法恰恰是相反的,如下圖他先從攝像機發出射線,這個射線不是光線。我們壹般稱之為搜尋光線(eye rays),利用這種射線來辨別能看見什麽東西,比如他看見了茶壺然後再看是誰照亮了茶壺。
V-Ray不論首次還是二次***四種運算方式,這四種除了光子圖有些特殊之外,都是反向運算,而光子圖的首次也是反向運算,但是他略有不同,正是這種反向運算的方式,讓我們減少了很多的渲染時間。