代码拉取完成,页面将自动刷新
路径追踪是目前计算机图形学中进行三维渲染的主流算法,因其生成的图像真实感强,广泛应用于静态图、电影等离线渲染上。随着目前GPU算力的不断增强,电子游戏等实时渲染领域也逐渐采用光栅化和路径追踪的方法来增强画面效果。
本次大作业通过太极编程语言完成了一个简单的路径追踪渲染器,该渲染器支持OBJ文件的导入和渲染。但因时间原因,没有实现OBJ的纹理映射和各类空间求交加速算法。
在实现本大作业中,参考了太极图形课的路径追踪示例程序 (链接)
[Taichi] version 0.8.8, llvm 10.0.0, commit 7bae9c77, win, python 3.9.7
python path_tracing_obj.py
使用 默认OBJ文件:
需保证model
文件夹和path_tracing_obj.py
文件位于同一路径下
使用 自定义 OBJ文件:
可以修改path_tracing_obj.py
文件中scene_init
开头的函数以加载自定义模型,需注意可能需要对模型进行三维几何变换以让模型以合适的大小、位置、角度显示在屏幕上
下面为在康纳盒中显示不同OBJ模型的效果图
-LICENSE
-|data
-|model
-README.MD
-path_tracing_obj.py
-requirements.txt
path_tracing_obj.py
是项目源代码,其中包含Ray
类、Triangle
类、Model
类、ModelSphere
类、Scene
类、路径追踪中用到的反射折射方向计算函数和路径追踪函数、渲染函数、场景加载函数和main
函数。
Model
类,对Model
对象执行三维几何变换,将Model
对象添加到Scene
类中此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。