"test:performance": "npm run build && esbuild perf.min=test/perf.main.mjs --outdir=dist --target=esnext --format=esm --platform=browser --bundle --sourcemap"
},
"devDependencies": {
- "@types/node": "^22.10.1",
+ "@types/node": "^22.10.5",
"@webgpu/types": "^0.1.52",
- "esbuild": "^0.24.0",
- "typescript": "^5.6.3"
+ "esbuild": "^0.24.2",
+ "esbuild-plugin-glsl": "^1.2.2",
+ "typescript": "^5.7.3"
},
"type": "module",
"exports": "./dist/main.js",
* UBO. High 4 bytes are the random value XOR'd with index of each thread.
*/
@compute @workgroup_size(256)
-fn main(@builtin(global_invocation_id) id: vec3<u32>
-) {
+fn main(@builtin(global_invocation_id) id: vec3<u32>) {
if (atomicLoad(&work.found) != 0u) { return; }
let threshold: u32 = ubo.threshold;