主要观点:作者在网上看到关于物理的视频后,有将其用代码重现的冲动,此次选择用 JavaScript 和 Rust 编写一个简单的力排斥模拟实验。通过比较在 JavaScript 和 WASM(Rust)中运行的肥皂模拟,得出一些经验教训,如与 DOM 的交互导致性能提升不如预期,以及通过发送指针在 WASM 中实现从 Rust 到 JavaScript 的高效数据传递等。最后作者表示在这个过程中很有趣,期待 WASM 能完全控制 DOM 以获得更好性能,并鼓励大家进行类似挑战。
关键信息:
- 看到关于水盘和胡椒的视频后决定用代码重现。
- 先在 JavaScript 中编写,后用 Rust 重写核心逻辑并嵌入 WASM 提高性能。
- 发现与 DOM 交互影响 Rust 代码性能,通过发送指针实现高效数据传递。
- 展示了 JavaScript 和 Rust 中与模拟相关的代码片段。
- 期待 WASM 能完全控制 DOM 并鼓励大家进行类似挑战。
重要细节:
- 浏览器不支持 canvas 元素时会显示相应提示。
- 在 Rust 中模拟状态的结构体定义及相关函数。
- 在 JavaScript 中获取和使用从 WASM 传来的指针的方式。
- JavaScript 中通过点击屏幕添加肥皂点到模拟状态的代码。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。