summaryrefslogtreecommitdiff
path: root/webhogg/wasm/pkg
diff options
context:
space:
mode:
Diffstat (limited to 'webhogg/wasm/pkg')
-rw-r--r--webhogg/wasm/pkg/main.js12
-rw-r--r--webhogg/wasm/pkg/worker-graphics.js1
-rw-r--r--webhogg/wasm/pkg/worker.js9
3 files changed, 17 insertions, 5 deletions
diff --git a/webhogg/wasm/pkg/main.js b/webhogg/wasm/pkg/main.js
index eec740d..ce96ee5 100644
--- a/webhogg/wasm/pkg/main.js
+++ b/webhogg/wasm/pkg/main.js
@@ -1,9 +1,13 @@
async function main() {
let fetchingSource = fetch('bin/webhogg-wasm.wasm');
let fetchedSource = await fetchingSource;
- let source = await fetchedSource.text();
- //alert(source)
- let workerGraphics = new Worker('pkg/worker-graphics.js');
-}
+ source = await fetchedSource.arrayBuffer();
+ let workers = [];
+ for (var type of ['graphics', 'logic']) {
+ let worker = new Worker('pkg/worker.js');
+ worker.postMessage([type, source]);
+ workers.push(worker);
+ }
+}
main();
diff --git a/webhogg/wasm/pkg/worker-graphics.js b/webhogg/wasm/pkg/worker-graphics.js
deleted file mode 100644
index 8360014..0000000
--- a/webhogg/wasm/pkg/worker-graphics.js
+++ /dev/null
@@ -1 +0,0 @@
-console.log('lelel');
diff --git a/webhogg/wasm/pkg/worker.js b/webhogg/wasm/pkg/worker.js
new file mode 100644
index 0000000..bd11676
--- /dev/null
+++ b/webhogg/wasm/pkg/worker.js
@@ -0,0 +1,9 @@
+onmessage = async function (e) {
+ importScripts('../bin/webhogg-wasm.js');
+ let ctx = await wasm_bindgen(e.data[1]);
+
+ if (e.data[0] === 'graphics')
+ ctx.start_graphics();
+ else if (e.data[0] === 'logic')
+ ctx.start_logic();
+}