【Rust日报】2022-12-17 Forma,一个高效的矢量图形渲染器

Forma,一个高效的矢量图形渲染器

Forma,一个 Rust 矢量图形渲染器,同时具有软件(CPU)和硬件(GPU)后端,它依靠 Rust 的 SIMD 自动矢量化和 Rayon 在 CPU 上良好的性能,同时使用 WebGPU 利用 GPU 的优势,具有以下目标:

  • 可移植,支持 Fuchsia、Linux、macOS、Windows、Android 和 iOS

  • 性能,利用以计算为中心的流水线,在指令级和线程级都高度并行化

  • 简单,实现一个易于理解的四级图形管线

  • 大小,尽量减少依赖的数量,只关注矢量图形

Github 链接,https://github.com/google/forma

备注:这并不是 Google 官方支持的产品

Tensor 混合编译时和运行时形状

大多数 ndarray/tensor crates 的形状在运行时或编译时是已知的。这篇博文研究如何混合编译时和运行时。

示例:

Tensor<(2, 3)> // 2d tensor with shape 2x3 known at compile time
Tensor<(usize, usize)> // 2d tensor with shape known at runtime
Tensor<(usize, 4, 5)> // 3d tensor with mixed dimensions
Tensor<(1, usize, 2, usize)> // 4d tensor with mixed dimensions
  1. 完全在编译时知道的形状

  2. 完全在运行时知道的形状

  3. 由编译时和运行时两个维度组成的形状

博客原文链接,https://coreylowman.github.io/2022/12/13/shapes.html

一个类似 OpenGL 的渲染器

tinyrenderer_rs,用 Rust 写了一个小的3D渲染器,是 Dmitry V. Sokolov 教授的 tinyrenderer 的 Rust 实现。

依赖有:

  • image 0.24.5: 图像加载和操作

  • piston_window 1.127.0: 用于显示渲染框架的窗口

  • obj-rs 0.6: 从.obj文件检索信息

  • nalgebra 0.31.4: 用于向量和矩阵的计算

Github 链接,https://github.com/ema2159/tinyrenderer_rs

Diesel-Async v0.2.0

Diesel-Async,是个 Diesel 的异步接口。Diesel 摆脱了数据库交互的模板,在不牺牲性能的情况下消除了运行时的错误。它充分利用了 Rust 的类型系统,创建了一个低开销的查询生成器。Diesel-async 为 diesel 的连接实现和任何可能发出查询的方法提供了一个异步实现。它是作为相应diesel方法纯异步替换而设计的。

支持的数据库:PostgreSQL 和 MySQL。

Github 链接,https://github.com/weiznich/diesel_async


From 日报小组 洋芋

社区学习交流平台订阅:

  • Rust.cc论坛: 支持rss

  • 微信公众号:Rust语言学习交流

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值