• 【Rust 日报】2022-08-28 Rust与GPU、WASM的应用


    simp:GPU加速图像处理程序

    现在已支持动图编辑!

    f9e7c8a6589cad35b3c474e3eb53d3e7.png

    目标包括:

    • 支持尽可能多的图像格式。

    • 60Hz,避免阻塞超过 16ms。

    • 无闪烁重绘。

    • 平滑缩放。

    • 尽可能始终使用 GPU 加速。

    • 桌面操作系统支持。

    • 基本图像处理。

    不包括:

    • 强大的处理(不是下一个 Photoshop)。

    • Web/移动平台支持。

    主页:https://simp.axelkappel.se/

    GitHub:https://github.com/Kl4rry/simp

    vortex:Rust和WASM海洋模拟

    一个类似元胞自动机的 Demo,可以产生波形模式。

    9775897fe3173924b123cfbbc18a67eb.png

    Demo:https://tom.cv/vortex/

    GitHub:https://github.com/0xTiger/vortex

    wrld:WGPU Rust描述符

    WRLD 是一组派生宏,基于 Learn wgpu 教程,用于让 wgpu 代码简单、愉悦、更安全。示例:

    1. use wrld::Desc;#[derive(Desc)]struct Test { #[f32x2(0)] position: [f32; 2], #[f32x4(1)] color: [f32; 4]
    2. }

    将生成:

    1. impl Test { pub fn desc<'a>() -> wgpu::VertexBufferLayout<'a> {
    2. wgpu::VertexBufferLayout {
    3. array_stride: std::mem::size_of::() as wgpu::BufferAddress,
    4. step_mode: wgpu::VertexStepMode::Vertex,
    5. attributes: &[
    6. wgpu::VertexAttribute {
    7. offset: 0u64,
    8. format: wgpu::VertexFormat::Float32x2,
    9. shader_location: 0u32,
    10. },
    11. wgpu::VertexAttribute {
    12. offset: 8u64,
    13. format: wgpu::VertexFormat::Float32x4,
    14. shader_location: 1u32,
    15. },
    16. ],
    17. }
    18. }
    19. }

    GitHub:https://crates.io/crates/wrld

    u8g2-fonts:基于u8g2的嵌入式图形文本呈现器

    这个是 u8g2 的纯 Rust 实现。示例:

    1. let font = FontRenderer::new::();let text = "embedded-graphics";
    2. font.render_aligned(
    3. text,
    4. display.bounding_box().center() + Point::new(0, 16),
    5. VerticalPosition::Baseline,
    6. HorizontalAlignment::Center,
    7. FontColor::Transparent(BinaryColor::On),
    8. &mut display,
    9. )
    10. .unwrap();

    6db9fa4cd4e2c37bf976ca61464c4a1e.png

    GitHub:https://github.com/Finomnis/u8g2-fonts

    用Rust写一个Container

    这个系列文章的目的是了解什么是容器,它是如何工作的,并创建一个 container 来创建和管理容器。内容如下:

    • 1 Introduction to containers

    • 2 Starting the project

    • 3 Creating the skeletton

    • 4 Birth of a child process

    • 5 Defining the container environment

    • 6 User namespaces and Linux Capabilties

    • 7 Syscalls and resources restriction

    • 8 Executing the binary

    教程地址:https://litchipi.github.io/series/container_in_rust

    Udemy的Rust课程

    Udemy 推出的(目前免费的)Rust 课程,内容包括:

    • Rust 语言基础、工具和生态。

    • 基本原理,如变量、作用域、函数、模块、标量和复合类型、控制流、字符串、Struct、Trait、Enums 等。

    • 使用 Rust 和系统编程有趣的 Tips 和技巧。

    • 理解 Rust 所必需的概念,如所有权、引用和借用、内存模型,以及为什么 Rust 关注安全性、并发和速度。

    共 8 个部分,35 课时,课程大纲:

    • 导论

    • 基础:Cargo、变量、作用域、内存安全、函数、模块系统。

    • 基本类型和控制流:标量、复合类型、控制流、字符串。

    • Rust 核心概念:所有权、引用和借用。

    • Rust 主要内容:Struct、Trait、Collections、Enums。

    • 终极内容:闭包、线程。

    • 项目

    课程地址:https://www.udemy.com/course/ultimate-rust-crash-course/?couponCode=BACKTOSCHOOL


    From 日报小组 长琴

    社区学习交流平台订阅:

    • Rustcc 论坛:支持 rss

    • 微信公众号:Rust 语言中文社区

  • 相关阅读:
    mysql中的date、datetime、timestamp你还不知道怎么使用吗
    【无标题】
    LeetCode每日一题(2014. Longest Subsequence Repeated k Times)
    cudann官网上不见了,找不到了安装CUDA和CUDANN时,发现CUDANN不见了,官网甚至找不到一丝它的信息,公告也没有
    仿上海学校网站学生网页设计作品 dreamweaver作业静态HTML网页设计模板 旅游景点网页作业制作
    如何使用vim粘贴鼠标复制的内容
    SpringSecurity原理解析以及CSRF跨站请求伪造攻击
    解决Vue 3 + Element Plus树形表格全选多选以及子节点勾选的问题
    最新JMeter面试题,紧扣面试实际要求,看完拿下20K
    Maven 没使用本地依赖,报错依赖找不到 Failure to find xxx
  • 原文地址:https://blog.csdn.net/u012067469/article/details/126576771