介绍

光线追踪是图形学中非常常用的一种成像方式,并在不同的领域(如游戏、动画、电影)得到了广泛的应用。而类似本文这样的关于光线追踪的入门文章也数不胜数,但鲜有用python实现的文章。本文将以python为主要实现语言,编写一个Ray Tracing的渲染器。

(至于为何使用python, 单纯是因为python简单易写,可调的包丰富)

基本知识

按照惯例,在说光线追踪之前,务必要提到光栅化(Rasterization)。所谓光栅化,就是将几何模型经过一系列变换(MVP),最终转换为像素呈现在显示设备上的过程。即对于一个object, 扫描其

Reference

  1. CS4620: Introduction to Computer Graphics (cornell.edu)

  2. GAMES101:现代计算机图形学入门 – 计算机图形学与混合现实研讨会 (games-cn.org)

  3. Fundamentals of Computer Graphics, Fourth Edition

  4. Ray Tracing in One Weekend Series