9ballsyndrome / webgl_compute_shader Goto Github PK
View Code? Open in Web Editor NEWWebGL 2.0 Compute shader Demos
WebGL 2.0 Compute shader Demos
"Dear WebGL community:
Intel initiated the WebGL 2.0 Compute API in order to expose GPU compute facilities inside the existing WebGL API. Soon after, it became clear that due to portability issues, as well as to align with the new breed of low-level explicit APIs, the direction for GPU compute on the web would instead be the WebGPU API.
WebGL 2.0 Compute support was still left in the Chromium / Chrome browser behind a flag (not enabled by default on any platform) as a way for customers to prototype combined rendering and compute workloads on the web. Now that WebGPU is much farther along, the webgl2-compute context code will be removed from Chromium in order to save code space, which is needed by the WebGPU implementation.
If you have any feedback on this removal, or need the webgl2-compute code to remain in place a bit longer, please comment on this Chromium bug.
Thanks,
-Ken"
https://www.khronos.org/webgl/public-mailing-list/public_webgl/2009/msg00000.php
https://bugs.chromium.org/p/chromium/issues/detail?id=1131991
The features that were in Canary three months ago may now be in dev. It would help (for those of us interested in testing) to know the exact version to look for.
Thanks for the awesome demos. I've tested this on windows with chrome canary and it works like a charm.
I saw you changed the text in your readme to state there is now Linux support so I installed the chrome dev channel release from here: https://www.chromium.org/getting-involved/dev-channel
I was happy to see it listed in about:flags so I enabled it and gave it a shot:
I'm running ubuntu 18.04 with an intel 620 integrated GPU. WebGL and shaders seem to work fine but your compute demos don't.
I also tested this same laptop in windows with chrome canary and the demos did in fact work.
I wonder if it's a driver issue. Anyway, when I get home to my desktop I'll give it a shot with my linux box that has a Titan X GPU and see if it works there.
thanks again for the bleeding edge work!
On linux, compute context runs fine with just --enable-webgl2-compute-context
passed in (at least with my computer).
However, I am using relativly recent version of mesa, which not all linux distributions provide (cough cough debian cough cough). That means that ANGLE is in fact LIMITING for me (glxinfo tells me I can use OpenGL ES 3.2 which ANGLE has marked as "in progress" for OpenGL backend). I suggest that the README is edited to point out only --enable-webgl2-compute-context
is needed on linux.
Hi,
First of all, thanks for the great demos!
I have a problem while trying to run "webgl-compute-atomic", i'm getting MAX_FRAGMENT_ATOMIC_COUNTERS is zero.
I'm using Windows 10running on Intel i5-3470 CPU with integrated GPU.
Chrome version: 78.0.3888.0 (Official Build) canary (64-bit) (cohort: Clang-64)
running with flags : "--enable-webgl2-compute-context" and "--use-cmd-decoder=passthrough".
Furthermore, once I set "Choose ANGLE graphics backend" to OpenGL I can't get a WebGL2 Compute context anymore.
Can you please explain who you were able to run the "webgl-compute-atomic" demo?
Thanks!
Hi, I installed the latest Canary version (74.0.3729.108), when I chose --use-angle=gl, the browser became black screen, Then, I tried to use D3D instead of gl, it works.
I guess the reason is my OS is Win10 and Win7, there is something wrong when ANGLE applied OpenGL.
Can you tell me the version of your OS. Based on the above reason, I guess it is not windows, I want to verify whether it is right.
I think maybe other people could meet the similar issue, so, they can try this way to avoid this situation.
Thank you for the interesting repo and demos, I'm looking forward to trying out compute shaders. However it would be nice to have some examples in plain Javascript. This would allow you to remove TypeScript conf files and also webpack, since you would not need to compile and could use native modules, making the whole repo much more simple and easy to read.
Webgl is complicated enough so lets reduce the number of foreign concepts a newcomer has to grasp to get started, to showcase just what is possible to do in plain javascript (with the flags enabled obviously). In the current shape it is hard to read and see what is some typescript syntax, what is webgl, what is webpack stuff... It would be nice to just keep the webgl stuff, remove everything else, and keep it barebones. Great job otherwise!
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.