文/蘇靜 孔令德
輻射度方法主要依靠的是光能,它將物理學(xué)中的熱輻射運用進算法。為了便于計算,在建立模型場景的時候假設(shè)場景中的面片數(shù)值是恒定的;這就表示著要計算精確的輻射度圖像,模擬場景中的幾何部分必須細分為更小的區(qū)域,或者說面片,然后再把一個個小的區(qū)域組合起來得到最后的圖像。
場景模型是直觀反映算法的一個工具,通過模型間顏色的相互影響能較為清楚的辨別出算法實現(xiàn)是否實現(xiàn),或者說實現(xiàn)的難易程度。
首先創(chuàng)建一個平面模型,平面方程為:

通過平面方程,我們需要在平面方程上隨機的取點(x,y,z),方程中的系數(shù)A、B、C、D是4個常數(shù),通過三條方程求解方程組的辦法求解出這4個常數(shù)。

圖1:模擬場景效果圖
然后通過已知點與場景中的各個面求交,交點通過像素連接形成平面圖像。
假設(shè)圓錐的高度為h,圓錐底面圓的半徑為r,則圓錐的方程為:

建立三維坐標系,原點位于底面中心,則圓錐面的參數(shù)方程為:

球體方程為:
球心位于三維坐標的原點,設(shè)球面的半徑為r,則球面的參數(shù)方程為:

在構(gòu)建整體的場景模型前,我們首先要構(gòu)建一個半立方體模型,半立方體技術(shù)早在之前被許多學(xué)者研究過。半立方體是指除去正面的一個盒子模型,定義盒子底面中心的點坐標為(0,0,0),并且將半立方體分為五個平面,在定義平面大小的同時,將自發(fā)光、漫反射、鏡面高光、反射等結(jié)構(gòu)體一起定義進去。

圖2:模擬場景效果圖
場景為室內(nèi)的一個球體和一個圓錐,左側(cè)的墻面為藍色,右側(cè)墻面為綠色,上面的墻面為淡藍色,后面的墻面為紅色。在左上角設(shè)置高光,在輻射度的影響下,球體表面分別呈現(xiàn)出四面墻的顏色,而右側(cè)的圓錐只受到右側(cè)綠色墻面的輻射影響所以只顯示綠色效果,模擬場景效果圖如圖1。
改變顏色亮度和高光位置方向,重新繪制場景??梢娡ㄟ^改變高光位置,模型物體在平面上顯示的陰影方向改變;通過改變顏色亮度,墻面和頂部的顏色因為輻射度輻射到物體模型上的顏色更加明顯,模擬場景的效果圖如圖2。
本文僅僅完成了簡單模型場景的輻射度算法實踐,其中還有很多內(nèi)容需要更深入研究。諸如計算形狀因子、對場景面片集合映射的改進處理。在計算輻射度方程時其他迭代算法沒有實踐值得再去挖掘研究。