簡易檢索 / 詳目顯示

研究生: 陳冠惟
Kuan-Wei Chen
論文名稱: 使用預先計算材質之GLSL光線追蹤優化
Optimization of GLSL Shader-Based Ray Tracing with Precomputed Textures
指導教授: 張鈞法
Chang, Chun-Fa
學位類別: 碩士
Master
系所名稱: 資訊工程學系
Department of Computer Science and Information Engineering
論文出版年: 2014
畢業學年度: 102
語文別: 中文
論文頁數: 42
中文關鍵詞: 光線追蹤傳統光柵化效能GPGPUGLSL
英文關鍵詞: Ray Tracing, Traditional Rasterization, performance, GPGPU, GLSL
論文種類: 學術論文
相關次數: 點閱:197下載:7
分享至:
查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報
  • 隨著GPU計算能力越來越強大,GPGPU的使用越來越成熟且廣泛,而除了CUDA和OpenCL之外 ,GLSL也是一種GPGPU的使用,光線追蹤演算法很適合實作在GLSL上做平行化,因為就GLSL來說,fragment shader是對每個像素做運算,所以可以藉由實作在GLSL來達到平行化的效果。因此,除了演算法本身的優化,搭配使用GLSL來對光線追蹤做平行化,整體效能會有所提升,逐漸改善光線追蹤耗時的問題。
    在這篇論文中,我使用GPGPU的幫助,將光線追蹤實做在GLSL上以此達到平行化的效果。在過程中,就GLSL光線追蹤方面探討不同的資料處理方法,進而從中使用較適合且效能較好的方式來處理,並且對光線追蹤的演算法進行優化,提升整體的效能。最後,在同個場景和效果之下,我分析了GLSL光線追蹤與GLSL傳統光柵化之間效能的比較,整理出目前光線追蹤的效能較差的問題點,並且利用實驗的結果歸納出光線追蹤在使用GPGPU的發展趨勢,未來在GPU的發展下,光線追蹤和傳統光柵化的效能差距是有拉近的可能。

    With the growth of GPU computing capabilities, GPGPU becomes more and more mature and far-ranging. In addition to CUDA and OpenCL, GLSL is a kind of GPGPU. Ray Tracing algorithm is suitable for implementing on GLSL. For GLSL, the fragment shader does computation in every pixel, so it can reach the goal of parallelization by implementing on GLSL. Therefore, in addition to the normalization of algorithm, using GLSL to parallelize Ray Tracing can enhance the performance.
    In this paper, I use GPGPU, implementing Ray Tracing on GLSL to achieve the effect of parallelization. In the process, I discuss different methods of data processing in GLSL Ray Tracing and select the most suitable and most efficient method to use. Then, I extend the Ray Tracing algorithm to enhance the overall performance. Finally, I analyze the performance between GLSL Ray Tracing and GLSL Traditional Rasterization with the same scene and effect, sorting out the problem about the poor performance of Ray Tracing. According to the results of experiment, I summarize the trends of Ray Tracing in the use of GPGPU. With the improvement of GPU, it is possible to narrow the performance gap between GLSL Ray Tracing and GLSL Traditional Rasterization.

    第一章 簡介 1 第一節 研究背景 1 第二節 研究目的 2 第三節 論文架構 2 第二章 相關研究探討 4 第一節 光線追蹤 4 第二節 傳統光柵化 6 第三節 Phong Lighting 8 第四節 陰影 9 第五節 相關論文 10 第三章 研究方法與步驟 11 第一節 在shader上實作光線追蹤 11 第二節 傳統光柵化之相關設定 12 第三節 讀入場景之資料傳輸 13 第四節 Texture memory之使用 14 第五節 光線追蹤演算法之優化 15 第四章 實驗分析與結果 17 第一節 定義球之比較 17 第二節 uniform與texture方式之比較 18 第三節 texture與bounding box之比較 19 第四節 bounding box與傳統光柵化之比較 28 第五節 不同像素大小之比較 36 第五章 結論 37 參考著作 39 其他參考 40 附錄 42

    [AL09] Aila T., Laine S.: Understanding the efficiency of ray traversal on GPUs. In Proceedings of High-Performance Graphics 2009 (2009), 145–149.
    [C05] Christen M.: University of Applied Sciences Basel (FHBB)Diploma Thesis. Ray Tracing on GPU. January 19, 2005.
    [P04] Purcell T.J.: RAY TRACING ON A STREAM PROCESSOR. PhD thesis, Stanford University (2004).
    [PBM02] Purcell T. J., Buck I., Mark W. R., Hanrahan P.: Ray Tracing on Programmable Graphics Hardware. In ACM SIGGRAPH 2002.
    [PFL13] Parker S. G., Friedrich H., Luebke D., Morley K., Bigler J., Hoberock J., McAllister D., Robison A., Dietrich A., Humphreys G., McGuire M., Stich M.: GPU Ray Tracing. Communications of the ACM, May 2013.
    [SPD04] Schmittler J., Pohl D., Dahmen T., Vogelgesang C., Slusallek P.: Realtime Ray Tracing for Current and Future Games, 2004.
    [W79] Whitted T.: An improved illumination model for shaded display. Proceedings of the 6th annual conference on Computer graphics and interactive techniques (1979).
    [WB01] Wald I., Benthin C., Wagner M., Slusallek P.: Interactive rendering with coherent ray tracing. In Computer Graphics Forum (Proceedings of Eurographics 2001).

    下載圖示
    QR CODE