[發明專利]一種在實時渲染系統中模擬IES精確光照的方法有效
| 申請號: | 201610628474.X | 申請日: | 2016-08-03 |
| 公開(公告)號: | CN106327567B | 公開(公告)日: | 2020-09-25 |
| 發明(設計)人: | 陳健 | 申請(專利權)人: | 陳健;廈門匯鑫元軟件有限公司 |
| 主分類號: | G06T15/50 | 分類號: | G06T15/50 |
| 代理公司: | 廈門創象知識產權代理有限公司 35232 | 代理人: | 尤懷成 |
| 地址: | 361000 福建省廈門市*** | 國省代碼: | 福建;35 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 實時 渲染 系統 模擬 ies 精確 光照 方法 | ||
本發明公開了一種在實時渲染系統中模擬IES精確光照的方法,摒棄了傳統的貼圖烘焙方法,通過對IES文件中角度及光照強度數據的提取與預處理,在模擬IES文件所反映出的光照曲線的情況下計算出實時光照參數,應用求解出的實時光照參數到實時渲染系統的固定管線光照或與固定管線相同的可編程著色器光照模型,形成實時照明。
技術領域
本發明涉及燈光仿真渲染方法,尤其涉及一種在實時渲染系統中模擬IES精確光照的方法。
背景技術
目前通用的精確IES光照一般使用烘焙貼圖的方法,即根據IES文件保存的光照物理數據,計算出影響范圍內的每個點得亮度,將這些亮度加成到三維模型的表面材質中作為光照貼圖。此種方法渲染模擬出的效果較為準確,但烘焙時間過長,無法實現實時渲染,并且額外增加了紋理資源的負載。
發明內容
本發明的目的在于克服上述現有技術的不足,提供一種在實時渲染系統中模擬IES精確光照的方法。
為實現上述目的,本發明采用以下技術方案:
一種在實時渲染系統中模擬IES精確光照的方法,包括以下步驟:
S1、讀取光源的IES文件中大于等于0的N+1個位置的光照角度A[i](i=0,…,N)及其對應的光照強度數據I[i](i=0,…,N),并將光照強度數據規范化為等光強的距離因子D[i](i=0,…,N);
S2、求解等光強的距離因子D[i]在極坐標中的X軸分量集dx[i]與Y軸分量集dy[i],并找出X軸分量集dx[i]中的最大值dx[m],則有,
dx[i]=D[i]*sin(A[i]),(i=0,…,N) 式1)
dy[i]=D[i]*cos(A[i]),(i=0,…,N) 式2)
dx[m]=max(dx[i]),(i=0,…,N;0mN) 式3);
S3、對所述X分量集dx[i]及Y軸分量集dy[i]作歸一化處理,獲得X軸分 量集的單位根集d′x[i]及Y軸分量集的單位根集d′y[i],則有,
S4、分別累加所述單位根集d′x[i]及d′y[i],獲得點坐標(X,Y),則有,
S5、求解點坐標(X,Y)與坐標軸X=0的夾角θ的余弦值,則有,
S6、對光源進行分類:尋找光照角度A[i]中的最大角度值當時,將光源視為聚光燈模型;當但D[n]≠D[0]時,仍將光源仍視為聚光燈模型,將θ與分別作為聚光燈的內角與外角;當且D[n]=D[0]時則將光源視為點光源模型;
S7、根據光源的分類求解對應的光照參數:
對于點光源模型,其光照表達式為對于聚光燈模型,其光照表達式為式中,c為衰減常數,l為一次系數,q為二次系數,θ為內角,為外角,d為距離,a為主光軸夾角,
不失一般性,令
定義IES文件中光照強度數據最大時,其光強強度P=1,隨著光照強度的遞減,光強強度線性衰減,則P=1時,c+l*d+q*d2=K,根據步驟2中dx[m]的下標m,取對應位置的距離因子D[m]和光照角度A[m],及坐標原點的距離因子D[0]和光照角度A[0]代入方程聯立方程組:
當為聚光燈模型時,代入步驟S6中的θ與值;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于陳健;廈門匯鑫元軟件有限公司,未經陳健;廈門匯鑫元軟件有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201610628474.X/2.html,轉載請聲明來源鉆瓜專利網。





