Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

What’s the basis for your 2x-4x speed difference estimate?


In the past, I have supervised cross-platform Unity and UE4 game projects. I even found and fixed a mobile GPU heat death bug :) So that 2x to 4x is just my personal experience.

Some things like GPU pixel shaders tend to be magically slower on WebGL, even if you send the same raw HLSL/GLSL source code. The reason appears to be that due to security concerns, the same shader source code is compiled differently by WebGL than by desktop OpenGL.

Also, many smart tricks like DMA from the SSD bus to the GPU are inherently very unsafe, so WebGL sandboxing simply doesn't allow them. The result is that you need to copy the data twice instead of once and if memory bandwidth is a bottleneck (it usually is for triple-A), then that can easily completely waste performance.


In my humble experience this is exactly the main reason why WebGL hasn't taken off for Web games as Flash did.

For the common consumer, they don't get why a graphics card that plays their collection just fine struggles with an Amiga 500 like game on their browser.


Wait, are you saying Flash was fast compared to WebGL??

Which Amiga 500 like browser games are you thinking of? Would you link to one that demonstrates WebGL dramatically underperforming compared to a desktop?

This seems quite exaggerated to me. @fxtentacle gave some specific reasons, but even the 2x-4x estimate seems over-stated for the average shader, and pixel shaders are only a small fraction of a typical game’s run time. The 2-4x claim is relative and lacking specifics. It could happen, especially with tiny shaders, but on average, I don’t believe it, and it’s easy to verify using ShaderToy for example. (Also plenty easy to see just by visiting ShaderToy that typical WebGL shader perf is fine.)

There are far bigger reasons consumers don’t go to individual web sites for their games than the difference in perf between WebGL and desktop OpenGL. Just to mention two that can each separately account for it, 1) asset loading in the browser over the internet every time you play is awful, and 2) a web site is not a distribution channel -- most people making games don’t also have the capacity to market, publish, and host their own games, and most consumers are already looking for games on Steam and other app stores. Throw in browser UI restrictions and lack of support for game controllers, vs native apps on top of that. It’s really easy to see that WebGL game adoption has nothing to do with perf.


Yes I am.

Unreal Engine 3 Support for Adobe Flash Player - Unreal Tournament 3

https://www.youtube.com/watch?v=UQiUP2Hd60Y

WebGL and WebAssembly still trying to catch up with 2011.


Hahaha, I appreciate the humor. If it was so great, why didn’t Unreal 4 support it? And when did web games on 3d Flash ever have high adoption? Your earlier claim was WebGL wasn’t used as much as Flash, but the only high adoption of Flash games on the web were 2d had nothing to do with UE3 flash player support.

“Why did Adobe decide to EOL Flash Player and select the end of 2020 date?

Open standards such as HTML5, WebGL, and WebAssembly have continually matured over the years and serve as viable alternatives for Flash content. Also, the major browser vendors are integrating these open standards into their browsers and deprecating most other plug-ins (like Adobe Flash Player).By announcing our business decision in 2017, with three years’ advance notice, we believed that would allow sufficient time for developers, designers, businesses, and other parties to migrate existing Flash content as needed to new, open standards”

https://www.adobe.com/products/flashplayer/end-of-life.html


Because iPhone and guys pushing for plugins free browsers, delaying progress for a decade.


Lol, Flash 3d is built on OpenGL and DirectX, which are still here. What “progress” was delayed? Adobe chose to kill flash because of WebGL.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: