以體積像素加速之即時全域照明
No Thumbnail Available
Date
2018
Authors
Journal Title
Journal ISSN
Volume Title
Publisher
Abstract
隨著顯示設備的發展與VR、AR等實境裝置的推出,人們對於畫面品質的要求也跟著上升。全域照明(global illumination, GI)的計算,是追求繪製畫面擬真度非常重要的一環。全域照明的計算成本很高,往往需要耗費大量的運算資源以及時間來計算。非即時的全域照明演算法能計算出細緻且精確的間接照明,但卻很難應用在需要與使用者互動的動態場景中,即時地計算全域照明一直是計算機圖學中非常熱門的課題之一。
本篇論文將探討利用體積像素(voxel)與錐形光線追蹤(cone tracing)[1],即時的全域照明演算法。以即時的體積像素化(voxelize)演算法簡化場景,將必要的場景資訊與照明資訊以體積像素儲存於三維貼圖中,結合近代OpenGL的新API與compute shader平行化處理體積像素資訊,建立mipmap克服光線追蹤方法常見的雜訊問題。利用錐形光線追蹤從體積像素結構中取樣先前儲存好的資訊,在動態場景中即時的計算出近似的間接照明以及環境遮蔽效果。最後以近代的GPU設備測試此全域照明演算法之效能。
With the advance of display technology, the demand of visual quality has raised. Global illumination(GI) plays an important role in rendering realistic scenes. Generally, it costs vast quantity of computational resource and time to calculate GI. Those off-line GI algorithms are committed to produce accurate indirect illumination results, however, which are not applicable in games or other interactive applications. Therefore, calculating GI in real-time has always been an important research field in computer graphics. In this paper, we will discuss a real-time GI algorithm called "Voxel Cone Tracing"[1], as well as implementation details using modern OpenGL and compute shaders. In the algorithm, we first simplify the triangle based scene through real-time voxelization, and store necessary scene information and material data in voxel. Furthermore, we filter the voxel data by generating mipmaps in order to prevent noises and aliasing. Finally, we can calculate approximate indirect illumination and ambient occlusion with the voxel data which can be sampled efficiently through cone tracing.
With the advance of display technology, the demand of visual quality has raised. Global illumination(GI) plays an important role in rendering realistic scenes. Generally, it costs vast quantity of computational resource and time to calculate GI. Those off-line GI algorithms are committed to produce accurate indirect illumination results, however, which are not applicable in games or other interactive applications. Therefore, calculating GI in real-time has always been an important research field in computer graphics. In this paper, we will discuss a real-time GI algorithm called "Voxel Cone Tracing"[1], as well as implementation details using modern OpenGL and compute shaders. In the algorithm, we first simplify the triangle based scene through real-time voxelization, and store necessary scene information and material data in voxel. Furthermore, we filter the voxel data by generating mipmaps in order to prevent noises and aliasing. Finally, we can calculate approximate indirect illumination and ambient occlusion with the voxel data which can be sampled efficiently through cone tracing.
Description
Keywords
全域照明, 體積像素追蹤, 間接照明, 環境遮蔽, 即時繪製, global illumination, voxel cone tracing, indirect lighting, ambient occlusion, real-time rendering