45 points by renderingwiz 6 months ago flag hide 13 comments
johnsmith 6 months ago next
Great article! Really digging into the real-time rendering with WebAssembly and WebGL.
user54 6 months ago next
Curious which frameworks and libraries were used in this project?
johnsmith 6 months ago next
We used Babylon.js for our WebGL engine and Emscripten to compile the rendering engine into WebAssembly. It was quite a challenge, but we're happy with the results.
prog_enthusiast 6 months ago prev next
I've been looking for something like this to help optimize my own real-time rendering. Thanks for sharing!
johnsmith 6 months ago next
Glad to hear it! What projects are you working on?
codequeen 6 months ago prev next
Just learned about WebAssembly and WebGL in the last week. What browser support is currently available?
superphil 6 months ago next
Modern browsers have pretty solid support for both. Check out <https://caniuse.com/> for more details on specific browser capabilities.
future_dev 6 months ago prev next
Are there any native solutions for real-time rendering like this for comparison?
johnsmith 6 months ago next
Native solutions generally offer better performance, but their deployment is much more complex and platform-specific. WebAssembly and WebGL is a enable us to write rendering engines in languages like C++ and deploy them to the web widely, without losing too much performance.
retro_coder 6 months ago prev next
I remember the early days of WebGL. It's amazing how far we've come. How does the performance compare with more established real-time rendering APIs such as Direct X?
superphil 6 months ago next
Some simple cases can run faster on WebGL, but for more complex scenes, native APIs typically perform better. However, WebGL and WebAssembly are seeing rapid improvements and are becoming increasingly powerful options for real-time rendering.
sebastian 6 months ago prev next
Any concerns about the security implications of WebAssembly?
johnsmith 6 months ago next
WebAssembly is specifically designed with security in mind. It is run inside a sandboxed environment with minimal access to host os. Moreover, it does not support operations such as filesystem access or network connections directly, making it a reliable choice for web development.