問題:
1、性能
算法的遞歸性質和大數目的追蹤光線,渲染過程可能持續數小時。80-90%的渲染時間花費在計算光線和物體交點上。
2、走樣
3、尖銳的陰影
基本的光線追蹤算法只能得到尖銳的陰影(因為模擬的是點光源)。
4、局部光照和著色
算法只追蹤少數目的光線,只有四種類型的光線被考慮在內,物體之間的漫反射光沒有被考慮在內,即算法并不包括全局光照。
解決方案:
1、性能
-
使用更多或者更好的硬件
-
大規模并行計算。每一個光線都相互獨立。將圖像分割,分配在多核上或者分布式網絡上;或者分配在多個線程上。
-
限制交點檢測的數目。使用包圍盒的層次關系??焖倥袛喙饩€是否和一組物體相交。物體被分組在封閉的包圍盒中。利用空間細分技術:octree,BSP,grid.
-
優化交點檢測
-
限制追蹤光線的數目,確定最大的遞歸層數。根據光線對當前像素點貢獻值大小來限制遞歸深度。一個閾值用來確定后續光線由于對像素點貢獻太小而不會被追蹤。
2、走樣
使用超采樣(super sampling)、抗鋸齒(antialiasing)、jittering
-
追蹤額外的主光線并取平均值。即超采樣,相對于每一個像素點取一條光線,你可以取特定數目的光線。每一個像素被分為亞像素,對每一個亞像素發射一條光線。當所有的亞像素點都處理完畢,對亞像素點的顏色值取平均值,并將其賦值給該像素點。這種方法大大增加了渲染時間。

-
自適應抗鋸齒。在顏色劇烈變化的地方使用追蹤的主光線,顏色變化不大的地方使用最少的主光線。

-
隨機抗鋸齒。隨機取樣代替常規取樣。

3、尖銳的陰影
原因:使用點光源、每個交點僅僅對應一條陰影光線。
-
區域光(area light)。使用一系列點光源來模擬區域光源。對于每一個交點,需要和點光源數目一樣多的追蹤光線。

-
Monte Carlo光線追蹤法。使用隨機超采樣,光源建模成球形光源,陰影光線指向代表光源的球上面的點。陰影光線顏色的平均值決定該交點最終的顏色值。

4、全局光照
依舊可以使用Monte Carlo法。使用Radiosity算法。
-
大數據
+關注
關注
64文章
9063瀏覽量
143760 -
光線追蹤
+關注
關注
0文章
185瀏覽量
22097
原文標題:舉例幾個光線追蹤的問題和解決方案
文章出處:【微信號:Imgtec,微信公眾號:Imagination Tech】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
電子凸輪同步追蹤的方案分析
大數據解決方案如何實施
東軟集團領跑中國醫療大數據解決方案市場
目標追蹤的簡易實現:模板匹配
基于RFID技術的固定資產管理與出入庫管理解決方案
御控工業物聯網大數據解決方案:排水設備遠程監控與大數據統計系統
拼多多商品推廣鏈接生成API:社交裂變的轉化追蹤利器
DALI數字照明控制的解決方案
LABVIEW遞歸獲取列表顯示到樹形結構
B1505A 功率器件分析儀/曲線追蹤儀
如何在ctd解決方案中使用FRS (ccg2,3)?
智能倉儲管理解決方案NRF5832
岳冉RFID技術智慧工廠生產物料實時追蹤管理解決方案
遞歸性質和大數目追蹤光線解決方案
評論