4 ms·
This is a very confusing article that doesn’t make much sense to me. The authors runs into performance limits on their laptop and states > maybe it’s time to p
by avianlyric 2y ago
This is a very confusing article that doesn’t make much sense to me. The authors runs into performance limits on their laptop and states
> maybe it’s time to port this to the web and not my machine be a blocker for the demo.
So their solution is to port from C++ and OpenGL to WASM and WebGL. Last I checked WASM and WebGL all ran on the local machine, how on earth would porting to WebGL and WASM allow the author to make their “machine be a blocker for the demo”. They’re not changing any of the hardware involved, and they’re barely changing the technologies involved.
- modeless 2y agoWebGL runs on the same machine but uses a very different path to the GPU. On Mac, OpenGL is deprecated and the implementation is very outdated and feature poor. WebGL is not deprecated, and uses the ANGLE library to run on top of Metal.
- shooly 2y agoFrom what I know, OpenGL on macOS is internally implemented using Metal and supports more features than ANGLE. ANGLE on macOS supports OpenGL ES 3.0 when running using Metal backend (source: https://github.com/google/angle https://github.com/google/angle), whereas macOS natively supports Core 4.1. And from my experience, there is basically no difference in performance between Apple's implementation and ANGLE, especially for simple things like what the author is doing.
- modeless 2y agoI don't have internal knowledge of Apple's implementation but it could potentially be layered on top of Metal for Apple Silicon (probably not for Intel) though if so it probably uses internal-only capabilities not exposed to Metal users. OpenGL ES 3.0 is newer than OpenGL 4.1. The feature set is broadly very similar. Native macOS OpenGL is a backwards compatibility feature and not intended for new development. Lack of KHR_debug and general bugginess makes it a poor choice for learning OpenGL or deploying software on. On the other hand, WebGL is currently supported and extensively tested, with much better validation and error messages and much (much, much) better cross platform compatibility.
- LoganDark 2y ago> WebGL is not deprecated, and uses the ANGLE library *on Chromium!!! Firefox and WebKit do not use ANGLE for rendering.
- modeless 2y agoThis is false. Source: I added WebGL 2 support to WebKit using ANGLE, with Apple's help (they made ANGLE's Metal backend). Firefox uses ANGLE on every platform for shader translation, and on some platforms it uses ANGLE for the entire API (on others it has a custom OpenGL to WebGL translation layer).
- LoganDark 2y agoDo they use it for the window surfaces? AFAIK Chromium is the only one that does that.
- beepbooptheory 2y agoNot only that, but the "lessons" learned here don't seem to have anything to do with the specific fact its an emscripten port anyway, just like general webgl troubleshooting. To be fair, its very explicit that this isn't really a typical writeup. The whole article is apparently just about giving you answers that the AI didn't give them: > I believe anyone can learn this tech with the presence of resource and LLMs, however, It’s worth to mention the mistakes that your cursor IDE might not be able to figure out after a while of composition to and fro.
- miningape 2y agoAs soon as I read that line I stopped reading, I really don't care what mistakes an AI made - it doesn't understand what it's doing so the mistakes are arbitrary, and relate more to it's inability to understand anything than some fundamental difficulty in the topic. Just look at the mistakes in the article: an off-by-one error with the lines of code for rendering, and a pointer bug that prevents the program from compiling. These are the kinds of mistakes you make in your first few weeks of programming, and don't have much to do with the underlying topic of rendering with a GPU - it could have just as easily been written about implementing a database, implementing an operating system: anything of sufficient complexity. Not to begrudge the author but this shows more about his faith in AI than anything related to GPU rendering.
- deciduously 2y agoYour last off-by-one bug was in your first few weeks of programming?