【Rust日报】2022-12-17 Forma,一个高效的矢量图形渲染器
2023-03-07 09:14:31 时间
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
- 完全在编译时知道的形状
- 完全在运行时知道的形状
- 由编译时和运行时两个维度组成的形状
博客原文链接,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
相关文章
- 三方库移植之NAPI开发--异步调用:Callback&Promise(四)
- 你了解 Linux 文件权限和所有权吗?
- 2022年数据治理和运营安全领域的发展趋势
- 使用 useradd 命令在 Linux 中添加新用户
- Linux 中如何检查开放的端口
- 在Linux中,怎样只显示隐藏文件?
- Github上八个优秀的React项目
- 如何在 bash shell 脚本中 echo 一个新行
- 为什么2022年仍然存在数据孤岛?
- Go 语言怎么优化重复的 if err != nil 样板代码?
- OS内核的信号机制:所有的异步都可以是同步的
- React 的 SetState 是同步还是异步?
- 微服务权限处理,为什么这么难?
- 面向B端算法实时业务支撑的工程实践
- 如何构建一个流量无损的在线应用架构
- 使用 passwd 命令在 Linux 中处理用户密码
- 谷歌详解 Chrome 浏览器全新侧边栏:搜索更快更方便
- 如何在 Ubuntu 中安装 Viber
- HarmonyOS 基于ArkUI(ETS) 实现雷达扫描
- Github 推出“赞助商专用”仓库,根据赞助金额解锁新功能