用 taichi 写个软渲染器
What
- 起点是:可以 setup 一个画布,drawPixel(x, y, color),然后渲染到 GUI 或者 .png
- 目标是:加载 obj 模型文件和 .tga 贴图文件,并渲染出来
- 使用 taichi 作为 SIMD 加速 backend
- 复现一些 RTR/ PBRT 公式,最好是手写
import taichi as titi.init(arch=ti.gpu)n = 320
pixels = ti.field(dtype=float, shape=(n * 2, n))@ti.kernel
def paint(t: float):for i, j in pixels:pixels[i, j] = 1gui = ti.GUI("1-triangle", res=(n * 2, n))frame = 0
while gui.running:paint(frame)gui.set_image(pixels)gui.show() # or gui.show(f"{frame}.png")frame += 1