【Rust日报】2023-09-21 Arete Engine 0.1 发布

Arete Engine 0.1 发布

Arete 是一个全新的游戏引擎,最近发布了 0.1 版本。它采用了具有革命性的架构,通过并行计算等方式大大提升了性能。根据官方的对比数据,在 DOTS demo 场景下,其 CPU 帧时间比 Unity 快了 100 倍以上。(另外 benchmark 里也有提到了 bevy,比 bevy 也快出一个数量级,而且是商业引擎,付费制度类似 Unreal。不过可惜的是,具体的可以使用的引擎得 10 月份发布)

Arete 的目标是成为跨平台的通用游戏引擎,支持目前引擎的各种特性,包括 2D/3D 渲染、音频、网络、UI 等。它使用 Rust 语言开发,利用 Rust 在性能和内存安全方面的优势。

更多信息可以查看其官网介绍:Arete Engine 官网 https://www.areteengine.com/post/introducing-arete-engine-0-1

rustic_core - 快速的加密备份库

rustic_core是一个用于快速、加密、数据重复删除的备份的 Rust 库。它实现了 restic 格式的存储库,可以用于构建备份工具。

主要功能包括:

  • 初始化和打开 restic 存储库
  • 创建快照
  • 查看和恢复快照
  • 检查存储库完整性

一个初始化存储库的例子:

go 复制代码
let repo_opts = RepositoryOptions::default()
    .repository("/tmp/repo")
    .password("test");
let key_opts = KeyOptions::default();
let config_opts = ConfigOptions::default();
let _repo = Repository::new(&repo_opts)?
    .init(&key_opts, &config_opts)?;

rustic_core 使得构建快速、安全的备份工具变得很方便。

https://github.com/rustic-rs/rustic_core

Rust 浮点数总顺序比较函数

Rust 0.62 引入了total_cmp函数,用于浮点数的总顺序比较。但是由于 NaN 的存在,f64仍然不满足Ord trait。有些用户希望直接将f64提升为Ord,从而在泛型代码中直接使用cmp。但这是不可能的,必须使用total_cmp或用ordered_float新类型包装。

另一方面,total_cmp确实会比partial_cmp快一些,因为不需要检查Option值。所以如果要排序大量浮点数,可以考虑使用total_cmp的 key 进行基数排序。

详见讨论:Rust 浮点数总顺序比较 https://users.rust-lang.org/t/total-order-for-floats/99919

This Week in Rust 513

本周 Rust 周报中,介绍了一些 Rust 生态更新:

  • Rust 1.72.1 版本发布
  • Rust 基金会加入 OpenSSF
  • Servo 浏览器更新
  • Pagefind 1.0 发布
  • 开源 Grafbase 数据库引擎
  • Arroyo 0.6.0 发布
  • rust-analyzer 更新

此外还有一些关于 Rust 在嵌入式、WebAssembly 等方面的文章和讨论摘要。

更多内容可以查看本周 Rust 周报:https://this-week-in-rust.org/blog/2023/09/20/this-week-in-rust-513/

请关注我们的更新,以便了解更多有关 Rust 的新闻和动态!

From 日报小组 Cupnfish

社区学习交流平台订阅:

  • Rust.cc 论坛: 支持 rss
  • 微信公众号:Rust 语言中文社区
相关推荐
初願致夕霞几秒前
C++懒汉单例设计详解
服务器·开发语言·c++
脱胎换骨-军哥13 分钟前
C++分布式系统设计:从通信引擎到分布式共识
开发语言·c++·分布式
码事漫谈13 分钟前
Kimi K3 真实体验:全网评价整理,优缺点一次性说清楚
后端
Fanta丶15 分钟前
16.Activiti8 SpringBoot3.X 部署与测试
后端
用户2080468045618 分钟前
Python3 数据类型转换新手实战指南
后端
苏三说技术43 分钟前
为什么Spring要“抛弃”Feign?
后端
神奇小汤圆1 小时前
Java代理模式深度解析:静态代理 vs 动态代理 vs CGLIB
后端
爱勇宝1 小时前
AI不会淘汰所有人,但会淘汰这6种人
前端·后端·程序员
脱胎换骨-军哥1 小时前
C++零成本抽象理论深度拆解:现代C++如何在不牺牲性能的前提下提供高级语法封装
java·开发语言·c++
lbb 小魔仙1 小时前
VS Code Python 高级调试技巧:从入门到精通
开发语言·python