9

用 Rust 实现简单的光线追踪

 3 years ago
source link: http://frankorz.com/2021/05/05/rust-raytrace/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client
萤火之森

用 Rust 实现简单的光线追踪

发表于 2021-05-05|更新于 2021-05-04|图形学
字数总计:405|阅读时长:1 分钟 | 阅读量:5| 评论数:0

学 Rust 十来天了,自己被这个语言惊艳到,就跟着教程 Ray Tracing in One Weekend 写了个很简陋的光线追踪示例练习,项目在 Latias94/rust_raytracing

学这门语言的时候,感觉就是上手容易遇到很多新概念,容易学不下去,跟编译器作斗争… 不过作为一个还很新的系统编程语言,工具链如文章、包管理、格式化、编译器等很完善,官方教程很棒,社区也很活跃。

学 Rust 的契机其实是在 V2EX 上看到有人在纠结学 Go 还是 Rust,底下的帖子也有不少夸 Rust 语言的,因此自己也开始关注 Rust 语言。后来发现 Rust 的用武之地非常广,Github 上还能找到不少 Rust 做的游戏引擎,其中一部分主打 ECS 功能,例如:bevyengine/bevyRalith/hecs 等。

学习 Rust 语言,其实也是在了解一个现代化的语言该有的样子,了解 C++ 或其他语言部分设计上的不足,以及 Rust 是打算如何从根源解决这些问题的。这部分我作为一个初学者,不打算展开讲。大家有空可以了解一下 Rust 语言,看看官方的教程《Rust 程序设计语言》

总而言之,我觉得光线追踪的教程可以作为学一门新语言后严肃学习的项目,做完成就感也满满!

顺便推荐一篇好文:新技术学习不完全指北:以 Rust 为例

最后放下示例的渲染图:

五一劳动节快乐!


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK