js スクリプトに渡す前に WebAssembly のバッファーを埋めてからキャンバスに表示する必要があるrust-wasm プロジェクトがあります。
(この記事に触発された)
static mut BUFFER: [u32; WIDTH * HEIGHT] = [0; WIDTH * HEIGHT];
しかし、Rust の static mut は安全ではないため、次のように宣言することはできません。#[wasm_bindgen]
js スクリプトでこの静的バッファのアドレスを取得するにはどうすればよいですか?
編集 :
私はこの解決策を見てきました:
const { instance } = await WebAssembly.instantiateStreaming(
fetch("./demo.wasm")
);
const buffer_address = instance.exports.BUFFER.value;
このコードで何が起こっているのかよくわかりません。また、wasm-pack ビルドツールを使用しているため、これを使用できません。wasm ファイルに対応する .js ファイルが作成されますが、まだ取得できません。バッファアドレス。
どんな助けでもいただければ幸いです