Skip to content

参考文献

本文档列出了项目中使用的算法和技术的学术参考。

渲染方程与路径追踪

[1] Kajiya, J. T. (1986). "The Rendering Equation". Computer Graphics (SIGGRAPH '86), 20(4), 143-150. DOI: 10.1145/15922.15902

[2] Veach, E., & Guibas, L. J. (1995). "Bidirectional Estimators for Light Transport". Photorealistic Rendering Techniques, 147-172.

[3] Pharr, M., Jakob, W., & Humphreys, G. (2016). Physically Based Rendering: From Theory to Implementation (3rd ed.). Morgan Kaufmann. ISBN: 978-0128006458

BVH 加速结构

[4] Wald, I. (2007). "On fast Construction of SAH-based Bounding Volume Hierarchies". IEEE Symposium on Interactive Ray Tracing, 33-41.

[5] Aila, T., & Karras, T. (2010). "Understanding the Efficiency of Ray Traversal on GPUs". High-Performance Graphics, 89-100.

[6] NVIDIA. (2023). "CUDA C++ Programming Guide". [在线] https://docs.nvidia.com/cuda/

光线排序与优化

[7] Hoberock, J., & Bell, N. (2010). "Thrust: A Parallel Algorithms Library". GPU Computing Gems, 353-366.

蒙特卡洛方法

[8] Pharr, M., & Humphreys, G. (2004). Physically Based Rendering. Elsevier. 第 7 章:Monte Carlo Integration.

经典教程与开源项目

[9] Shirley, P. (2020). Ray Tracing in One Weekend. [在线] https://raytracing.github.io/

[10] Beason, K. (2007). smallpt: Global Illumination in 99 lines of C++. [在线] http://www.kevinbeason.com/smallpt/

[11] NVIDIA. (2023). NVIDIA OptiX 7 API. [在线] https://developer.nvidia.com/optix


引用本项目

若您在学术工作中引用本项目,请使用以下 BibTeX 格式:

bibtex
@misc{cuda-raytracer,
  author = {AICL-Lab},
  title = {CUDA Ray Tracer: High-Performance GPU Path Tracing},
  year = {2024},
  publisher = {GitHub},
  url = {https://github.com/AICL-Lab/ray-tracer}
}

推荐阅读

入门教程

  • Ray Tracing in One Weekend - Peter Shirley 的经典入门教程
  • smallpt - Kevin Beason 的 99 行全局光照实现

进阶资料

  • Physically Based Rendering - 光线追踪圣经
  • GPU Gems 系列 - NVIDIA 的 GPU 编程技巧

CUDA 编程

  • CUDA C++ Programming Guide - NVIDIA 官方文档
  • Programming Massively Parallel Processors - Kirk & Hwu

Technical Whitepaper · Built with VitePress