TermTrack - 终端渲染3D平台/迷宫游戏
TermTrack终端渲染3D平台/迷宫游戏库,专注于速通和自定义关卡创建。游戏需要在终端中运行,目前建议在Windows系统上使用Microsoft Store的Windows Terminal。该仓库提供了Windows和Linux版本的游戏压缩包,用户可以下载解压后直接运行。
游戏关卡是通过文本文件定义的,使用不同的字符表示不同的网格类型,如起点、终点、墙壁、地板、陷阱等。用户可以创建自定义关卡并将其放入专门的文件夹中运行。
https://github.com/TermTrack/TermTrack
rav1d - 跨平台的AV1视频解码器
rav1d是一个跨平台的AV1视频解码器,是dav1d解码器的Rust移植版本,专注于速度和正确性。它是用Rust编写的,可以使用标准的Rust工具链进行构建。
主要特点:
- 支持x86、x86_64和aarch64架构的稳定版本,arm和riscv64需要nightly编译器。
- 支持汇编优化、8位、10位和12位色深解码等特性,可通过cargo特性标志进行配置。
- 可跨平台编译,并提供了多种目标平台的示例编译命令。
- 使用Meson测试套件进行测试,提供了test.sh辅助脚本运行测试。
- 提供与libdav1d兼容的C API,可作为libdav1d的替代品使用。
https://github.com/memorysafety/rav1d
Rust 中字符串的优化方式
本文主要讨论了 Rust 中字符串的优化方式,以减少字符串在内存中的占用。文章围绕 spellbook 这个拼写检查库展开,该库需要在内存中存储大量单词词根及相关规则标志。作者提出使用 Box 而不是 String 来表示这些不可变的短字符串,从而避免存储不必要的容量信息,节省内存。
接着作者设计实现了一个名为 UmbraString 的新类型,它在 Box 的基础上进一步压缩存储,将字符串内容和相关的标志位存储在一起。这种"德语字符串"表示法能最小化内存占用。
文章还分析了一些可能会影响优化效果的缺陷,如指针对齐等问题。最后,作者总结了 UmbraString 相较于其他方案的内存节省效果,并对该项目贡献者表示感谢。
https://the-mikedavis.github.io/posts/german-string-optimizations-in-spellbook
--
From 日报小组 Mike
社区学习交流平台订阅:
评论区
写评论还没有评论