面向开发者的新功能 - 由 WebAssembly 提供

展示 WebAssembly 后现已在网络上提供的工具。

Thomas Nattestad
Thomas Nattestad

借助 WebAssembly,开发者能够将其他语言的高性能新功能引入到 Web 中。在过去的几年里,开发者已经真正利用了这种可能性。这篇博文仅列出了您可以受益的几种精彩新工具,其中要归功于 WebAssembly。

您现在可以使用的工具和库

言归正传,让我们继续撰写更多精彩内容 :D

SQLite

SQLite 的完全移植,为你提供了一个轻量级的嵌入式关系型数据库管理系统。如需了解详情,请参阅这篇博文,其中介绍了这项不可思议的移植以及如何使用它

FFmpeg.wasm

FFmpeg 是一个免费的开源软件项目,包含一套处理视频、音频以及其他多媒体文件和流的库和程序。您可以在此处找到 wasm 编译的版本GitHub 代码库),直接在浏览器中实现所有这些功能。

通用场景说明(美元)

Universal Scene Description (USD) 是一个针对 3D 计算机图形数据的框架,该框架专注于协作、无损编辑,并支持对图形数据的多种视图和观点。它是皮克斯、Autodesk、Nvidia 等公司支持的业界标准。其网络支持目前仍处于早期阶段,但 Autodesk 已经开放了一款网页版美元查看器,您可以在此处查看

CanvasKit

CanvasKit 是 Skia,是 Chrome 和 Android 的渲染引擎,直接编译为 WebAssembly。有了它,您可以通过简单的 JavaScript API 访问 Skia 渲染引擎的所有强大功能。其功能包括复杂渲染、文本形状设置、动画和手写等功能。查看 npm 软件包快速入门指南

TensorFlow.js

TensorFlow.js 通过一个简单的 JavaScript API 将 TensorFlow 的强大功能直接引入浏览器。从本质上讲,它会跨 GPU 和 CPU 优化模型(包括 SIMD 优化),以最大限度地提升性能。您可以查看入门指南直接查看部分演示

OpenCV

OpenCV 是主要用于实时计算机视觉的编程函数的业界标准。此处提供了易于使用的 npm 软件包,对于 Emscripten 用户,我们还提供了有关执行完整构建的详细说明。如需了解 SIMD 和线程如何提升这些工作负载的性能,您可以观看 Modern WebAssembly Chrome 开发者峰会演讲的这一部分

可可群岛

Cocos 是一个功能强大且备受欢迎的游戏引擎,开发者可以使用它构建具有跨平台支持的游戏,现在平台也包括 Web 平台。它加入了众多游戏引擎,可通过 wasm 实现 Web 导出。要开始使用,请跳转到 Cocos 编辑器并按照这些说明操作。

总结

除了这些具体示例之外,WebAssembly 有可能在改变新 Web 功能的发展步伐方面也让人感到兴奋。Chrome 甚至设立了高级 Web 应用基金,帮助开发者为改进面向所有开发者的网络功能提供资金支持!

主打图片,来自 Pexels,作者:Ann Marie Kennon