blaze-2d
Version:
A fast and simple WebGL 2 2D game engine written in TypeScript
48 lines • 1.59 kB
JavaScript
import Logger from "../logger";
const ctx = self;
class BlazeWorker {
// geometryGenerator: GeometryGenerakor;
handleTask(task) {
let data;
// switch (
// task.task
// case "init-geometry-generator":
// const arr = task.data as Uint16Array;
// this.geometryGenerator = new GeometryGenerator({
// chunkSize: arr[0],
// chunkHeight: arr[1],
// excludeList: new Uint8Array(arr.slice(2)),
// });
// break;
// case "chunk-geometry":
// if (this.geometryGenerator) data = this.chunkGeometry(task.data as any);
// else
// throw new Error(
// "Worker: 'init-geometry-generator' must be executed at least once on a worker before 'chunk-geometry' can be executed."
// );
// break;
// ) {
// }
ctx.postMessage({ task: "completed", data });
}
handleMessage(msg) {
switch (msg.task) {
case "init-chunk-generator":
case "init-geometry-generator":
case "chunk-generation":
case "chunk-geometry":
if (msg.data)
this.handleTask(msg);
else
return void Logger.error("Worker", "Message must include data for chunk-generation and chunk-geometry.");
break;
default:
break;
}
}
}
const worker = new BlazeWorker();
ctx.onmessage = (e) => {
worker.handleMessage(e.data);
};
//# sourceMappingURL=worker.js.map