前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【Rust日报】 2020-02-17 WASM向量图形 --wasm_svg_graphics 0.3.0

【Rust日报】 2020-02-17 WASM向量图形 --wasm_svg_graphics 0.3.0

作者头像
MikeLoveRust
发布2020-02-21 17:09:28
1.1K0
发布2020-02-21 17:09:28
举报
文章被收录于专栏:Rust语言学习交流

WASM向量图形 --wasm_svg_graphics 0.3.0

一个用于通过WASM渲染SVG图形的Rust库

它提供了快速有效的方法,可以使用WebAssembly与SVG进行交互。它能够:

  • 声明形状和样式以用于这些形状
  • 使用SVG 标签将这些形状渲染到DOM
  • 自动检测两个形状是否相同,因此只有一个SVG 将添加到DOM中
  • 声明已命名的项目/容器,以便以后进行例如隐藏,重新显示和重新放置之类的调整。
声明

开发团队已测试版本0.3.0的稳定性,并且可以在开发中使用。

此软件包仍在开发中,但大多数对1.0.0的API调用已完成。如果发现任何错误,请在GitHub上提交问题或诉求。

原文请查阅crates.io网站

使用wasm-bindgen-test测试Rust + WebGL渲染器

一周前,作者对改进客户端代码体系结构的所有细节感到有些不知所措,但是从那时起,作者就为所有主要部分布置了数据结构和测试,并对所有组件的安装方式有了很好的认识一起。

因此,现在正在努力的只是编写和实施更多测试,直到所有内容都准备就绪。

在进行这种重构方面,似乎需要多花1~2周的时间,然后我们才能重新投入实际游戏的开发工作中。

  • 地形加载和渲染
  • 输入事件处理器系统
  • 用户界面元素
  • WebGL渲染器

详情前往作者博客查看。

Krabs:可以引导vmlinux的x86引导程序

Krabs是用Rust编写的实验性x86 / x86_64引导程序。

Krabs可以引导用bzip2压缩的ELF格式的内核、解压缩bz2映像并重新定位ELF映像,然后引导内核。

一些源代码使用libbzip2 C库进行解压缩,但其余的完全使用Rust。

Krabs正在致力于在32位/ 64位PC上引导以ELF格式格式化的vmlinux和其他内核,并且正在开发中。

Krabs还旨在仅支持最小的Linux启动协议。这使您可以指定内核命令行并在启动时操纵内核的行为。另一个功能是,为了节省空间,ELF格式内核在使用前先使用bzip2进行了压缩,并使用libbzip2库进行解压缩。

下面是一个例子:

代码语言:javascript
复制
$ ./tools/build.sh -k vmlinux -i initramfs.cpio.gz -c "clocksource=tsc" disk.img

工程详情与构建方法前往GitHub查看。

cow-utils:用于Rust写入时复制字符串实用程序

一些str方法执行的转换具有破坏性,因此String即使不需要修改,它们也可以分配,复制并返回新的方法 中。

此软件包提供了一种具有辅助特性的CowUtils,其中包含此类方法的直接插入变体,它们的行为方式相同,但是在不需要修改时避免额外的副本和分配。

目前,它仅针对&str和返回 实现std::borrow::Cow<str>,但将来可能会扩展到可能进行更有效处理的其他类型(例如,对可变字符串进行就地修改)。

性能

这个箱子的主要动机是在没有找到匹配的情况下执行零分配替换的功能,因此现在仅显示.replacevs的结果.cow_replace

实际结果将根据输入而有所不同,但这是一个品尝者,基于"a".repeat(40)输入和各种模式(不匹配,匹配和替换的所有内容,从开始到删除的所有匹配项):

参数

.replace(ns)

.cow_replace(ns)

区别 (%)

("a", " ")

408.59

290.27

-29

(“ b”,“ c”)

98.78

54.00

-45

(“ a”,“ b”)

985.99

1,000.70

+1

关于项目详情访问GitHub。


From 日报小组 @Lance

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-02-18,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Rust语言学习交流 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • WASM向量图形 --wasm_svg_graphics 0.3.0
    • 声明
    • 使用wasm-bindgen-test测试Rust + WebGL渲染器
    • Krabs:可以引导vmlinux的x86引导程序
    • cow-utils:用于Rust写入时复制字符串实用程序
      • 性能
      相关产品与服务
      容器服务
      腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档