< 返回版块

7sDream 发表于 2020-06-11 20:25

Tags:rust,图形学,光线追踪,渲染器,并行,开源

《Ray Tracing in One Weekend》是比较有名的图形学入门系列教程。

最近在随便找点有趣的东西学学,刷 Twitter 还是 Reddit 看见了这个教程,上周末就抽时间边教程边用 Rust 写了下,效果挺好。

⬇️️⬇️️⬇️ 这里有图,图床用的是我自己的服务器,可能有点慢 ⬇️️⬇️️⬇️

Repo:https://github.com/7sDream/remda

应该也有其他人用 Rust 写过,但我没去搜,欢迎评论区补充。

目前只完成了系列教程第一本的主要部分,扩展部分完成了一个并行化(使用 rayon),具体见项目里的 Current Progress。

现在跑的化渲染速度其实挺慢的(可以直接 cargo run --release 试下),我简单看了下第二本的目录,后面 BVH 加上之后应该会快很多。

这周末应该就会开始看第二本,但进度就不敢保证了,如果有兴趣的话可以 Star 了等着看后面的效果,或者用于自己学习时的参考。

准备这系列看完之后参考着 rs-pbrt 项目看看 《PBRT》,真到那时候再开个新项目吧。

评论区

写评论
skyzh 2020-11-16 22:15

https://github.com/skyzh/raytracer.rs/ 基本上实现了三本书的功能(

ldm0 2020-06-13 10:30

Hint: RTOW 原本的随机小球生成是有和大球距离判断,能避免题图中小球嵌入大玻璃球的情况,建议楼主加上,会更好看些。👍

ldm0 2020-06-13 10:27

好像做过一样的事情,但是没有像楼主一样做更多的优化:-P。Check: https://github.com/ldm0/RTOW-rs

Nalleyer 2020-06-11 21:17

我也写过类似的 这里

一开始是跟另一个教程写的,在master上,后来看了这个教程,加了间接光等等,简单地做了这个分支。

共勉。

1 共 4 条评论, 1 页