研究生: |
施忞 Shih, Min |
---|---|
論文名稱: |
Real-Time Ray Tracing with CUDA 基於CUDA實作即時光線追蹤演算法 |
指導教授: |
王俊堯
Wang, Chun-Yao 張鈞法 Chang, Chun-Fa |
口試委員: | |
學位類別: |
碩士 Master |
系所名稱: |
電機資訊學院 - 資訊工程學系 Computer Science |
論文出版年: | 2009 |
畢業學年度: | 97 |
語文別: | 英文 |
論文頁數: | 47 |
中文關鍵詞: | 電腦繪圖 、光線追蹤演算法 、可程式化圖形處理器 、圖形處理器通用運算 、平行程式 、CUDA |
外文關鍵詞: | Computer Graphics, Ray Tracing, Programmable Graphics Hardware, GPU Computing, Parallel Programming, CUDA |
相關次數: | 點閱:2 下載:0 |
分享至: |
查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報 |
由於當今圖形處理器(GPU)具有強大的計算能力及高記憶體頻寬,運用GPU實作光線追蹤演算法在近年來成了電腦圖學領域中的熱門研究課題。而CUDA──一種新的GPU通用運算架構──的問世更克服了許多傳統上基於GPU實作光線追蹤演算法所遇到的困難。
在這篇論文中,我們展示了一個高度最佳化的基於CUDA的光線追蹤演算法實作。我們檢視並評測了多種過去的GPU光線追蹤演算法設計,得到的結論是普通的kd-tree走訪演算法的效能表現最佳。在使用簡單的打光模型及僅處理從眼睛射出的光線的條件下,我們的實作在數個適度複雜的場景中達到了每秒處理30-43百萬條光線的執行速度。我們並呈現了一個Whitted式光線追蹤演算法的實作,該成果顯示了用GPU和CUDA處理高品質繪圖的可行性。
Didier Badouel. An Efficient Ray Polygon Intersection. In David Kirk, editor, Graphics Gems III, pages 390-393. Academic Press, 1992.
Carsten Benthin. Realtime Ray Tracing on Current CPU Architectures. PhD thesis, Saarland University, 2006.
Carsten Benthin, Ingo Wald, Michael Scherbaum, and Heiko Friedrich. Ray Tracing on the CELL Processor. In Proceedings of the 2006 IEEE Symposium on Interactive Ray Tracing, 2006.
Thierry Berger-Perrin. The radius project homepage. https://gna. org/projects/radius/.
Jacco Bikker. Real-time Ray Tracing through the Eyes of a Game Developer, in IEEE Symposium on Interactive Ray Tracing, 2007.
Solomon Boulos, Dave Edwards, J. Dylan Lacewell, Joe Kniss, Jan Kautz, Peper Shirley, and Ingo Wald. Packet-based Whitted and Distribution Ray Tracing. In Proc. Graphics Interface, May 2007.
Holger Dammertz, Johannes Hanika, and Alexander Keller. Shallow Bounding Volume Hierarchies for Fast SIMD Ray Tracing of Incoherent Rays. Computer Graphics Forum, Volume 27, pp. 1225-1233(9), 2008.
Jeff Erickson. Plücker Coordinates. Ray Tracing News, 1997. http://tog.acm.org/resources/RTNews/html/rtnv10n3.html#art11.
Foley, van Dam, Feiner, and Hughes. Computer Graphics - Principles and Practice, 2nd edition in C. Addison Wesley, 1997.
Tim Foley and Jeremy Sugerman. Kd-tree acceleration structures for a gpu raytracer. In HWWS '05: Proceedings of the ACM SIGGRAPH/EUROGRAPHICS conference on Graphics hardware, ACM Press, pp. 15-22, 2005.
Andrew Glassner. An Introduction to Ray Tracing. Morgan Kaufmann, 1989.
Johannes Günther, Stefan Popov, Hans-Peter Seidel, and Philipp Slusallek. Realtime Ray Tracing on GPU with BVH-based Packet Traversal. In IEEE Symposium on Interactive Ray Tracing, pp. 113-118, 2007.
Vlastimil Havran. Heuristic Ray Shooting Algorithms. PhD thesis, Faculty of Electrical Engineering, Czech Technical University in Prague, 2001.
Daniel Reiter Horn, Jeremy Sugerman, Mike Houston, and Pat Hanrahan. Interactive k-d tree GPU raytracing. In I3D ’07: Proceedings of the 2007 symposium on Interactive 3D graphics and games (2007), ACM Press, pp. 167-174, 2007.
Mike Houston. Performance analysis and architecture insights. In SUPERCOMPUTING 2006 Tutorial on GPGPU, Course Notes. 2006. http://www.gpgpu.org/sc2006/slides/10.houston-understanding.pdf.
Khronos Group. The OpenCL homepage. http://www.khronos.org/ opencl/.
David Luebke, Steven Parker. Interactive Ray Tracing with CUDA. Presentation from NVISION 2008.
Erik Månsson, Jacob Munkberg, and Tomas Akenine-Möller. Deep coherent ray tracing. IEEE Symp. on Interactive Ray Tracing, 2007.
Chas. Boyd. Direct3D 11 Compute Shader —More Generality for Advanced Techniques. Presentation from GameFest 2008.
Tomas Möller and Ben Trumbore. Fast, minimum storage ray triangle intersection. Journal of Graphics Tools, 2(1):21–28, 1997.
NVIDIA. The CUDA homepage. http://www.nvidia.com/cuda.
Ryan Overbeck, Ravi Ramamoorthi, and William R. Mark. Large Ray Packets for Real-time Whitted Ray Tracing. In IEEE Symposium on Interactive Ray Tracing, 2008.
Matt Pharr, Craig Kolb, Reid Gershbein, and Pat Hanrahan. Rendering Complex Scenes with Memory-Coherent Ray Tracing. In Computer Graphics (Proceedings of SIGGRAPH ’97), pages 101-108, 1997.
Stefan Popov, Johannes Günther, Hans-Peter Seidel, and Philipp Slusallek. Stackless KD-Tree Traversal for High Performance GPU Ray Tracing. In: Computer Graphics Forum 26(3), pp. 415-424, 2007, (Proceedings of Eurographics)
Timothy J. Purcell, Ian Buck, William R. Mark, and Pat Hanrahan. Ray tracing on programmable graphics hardware. ACM Transactions on Graphics (Proceedings of ACM SIGGRAPH), pp. 703-712, 2002.
Alexander Reshetov, Alexei Soupikov, and Jim Hurley. Multi-Level Ray Tracing Algorithm. ACM Transaction of Graphics, 24(3): 1176–1185, 2005. (Proceedings of ACM SIGGRAPH).
Benjamin Segovia. Cuda real time ray tracing - 100 millions ray/s?. http://bouliiii.blogspot.com/2008/08/real-time-ray-tracing-with-cuda-100.html.
Ken Shoemake. Plücker Coordinate Tutorial. Ray Tracing News, 1998. http://tog.acm.org/resources/RTNews/html/rtnv11n1.html#art3.
Seth Teller, John Alex. Frustum Casting for Progressive, Inte¬active Rendering. Technical Report MIT LCS TR-740, MIT, January 1998.
Niels Thrane and Lars Ole Simonsen. A Comparison of Acceleration Structures for GPU Assisted Ray Tracing. Master’s thesis, University of Aarhus, 2005.
Ingo Wald, Philipp Slusallek, Carsten Benthin, and Markus Wagner. Interactive rendering with coherent ray tracing. Computer Graphics Forum 20, 3, 153-164, 2001.
Ingo Wald. Realtime Ray Tracing and Interactive Global Illumination. PhD thesis, Saarland University, 2004.
Ingo Wald, Carsten Benthin, Solomon Boulos. Getting Rid of Packets - Efficient SIMD Single-Ray Traversal using Multi- branching BVHs -. In IEEE Symposium on Interactive Ray Tracing, 2008.
Turner Whitted. An Improved Illumination Model for Shaded Display. CACM, 23(6):343–349, 1980.