Schampu
When WASM got released (around 2017), there was already that discussion to allow direct bindings without a JS roundtrip, but AFAIK there is still no actual implementation for this in any browser.
[0] https://www.sciencemediacenter.de/alle-angebote/rapid-reacti...
Unfortunately the license of Ultralight is questionable, and it's not open-source either by bypassing the WebKit license (which is very questionable as well since WebKit itself is BSD-licensed).
Having such a project as a free open-source variant would be a huge game changer in my opinion.
Show HN: Chromium + Hardware accelerated Ray Tracing
The Ray-Tracing Extension is currently only available for Windows and Linux.
My next plan is to implement the extension into Dawn's D3D12 backend, so I can build chromium with my Dawn fork and have Ray-Tracing available directly in the browser (at least for myself) :)
Real-Time Ray-Tracing in WebGPU
Real-Time Ray-Tracing in WebGPU
Show HN: Early WebGPU API for Node
Show HN: A Photorealistic Path Tracer with NVIDIA RTX
Show HN: Azula – Lightweight GPU Accelerated Electron Alternative
Show HN: Vulkan RTX Ray Tracer Written in JavaScript
Show HN: A Tiny RTX Ray Tracer
Show HN: A Real-Time Ray Tracer Written in JavaScript and Vulkan
Show HN: A tiny Real-Time Ray Tracer
Show HN: Vulkan API for JavaScript/TypeScript
Show HN: Vulkan API for JavaScript
Multi-threading is possible with SharedArrayBuffers [0] and N-API allows to take the memory address of it. NVK is only a thin layer above Vulkan and JavaScript <-> C++ interopability is pretty fast. You only notice some overhead when making thousands of calls, because the C++ code cannot be inlined. But again, this is not something common in Vulkan.
Also JavaScript doesn't have essential features like Compute shaders for years now. Vulkan has all of it. Even though WebGPU [1] is in development, I don't expect it to give access to the Vulkan RTX pipeline anytime soon.
[0] SharedArrayBuffer: https://v8docs.nodesource.com/node-4.8/d4/db8/classv8_1_1_sh...
[1] WebGPU: https://github.com/gpuweb/gpuweb
Show HN: RTX Real-Time Ray Tracing in JavaScript
Both implementations are very optimized and fast. Also DataView offers working with 64-bit values using the new BigInt type [2].
Here [3] a short example on how you can quickly build C-like structures in JavaScript
[0] DataView: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Refe...
[1] TextEncoder: https://developer.mozilla.org/en-US/docs/Web/API/TextEncoder
[2] BigInt: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Refe...
[3] C-like Structures: https://jsfiddle.net/5tz0hsjq/
Show HN: A Vulkan Rendering API for JavaScript
Show HN: NVK – Vulkan API Bindings for JavaScript
Show HN: NVK – A Vulkan Rendering API for JavaScript
[0] https://github.com/maierfelix/node-vulkan/blob/master/exampl...
[1] https://github.com/maierfelix/node-vulkan/blob/master/genera...