Chrome 56 Released With WebGL 2.0 By Default

97 views
Skip to first unread message

Jacob Goodson

unread,
Jan 25, 2017, 11:57:33 PM1/25/17
to StageXL
2.0 is here, I am sure stagexl will get even better now =)

Bernhard Pichler

unread,
Jan 26, 2017, 2:04:40 AM1/26/17
to Jacob Goodson, StageXL
Absolutely! I already begging the Dart team to add support for WebGL2 :)

You can show you support here:
https://github.com/dart-lang/sdk/issues/27180

Jacob Goodson <submissio...@gmx.com> schrieb am Do., 26. Jan. 2017 um 05:57 Uhr:
2.0 is here, I am sure stagexl will get even better now =)

--
You received this message because you are subscribed to the Google Groups "StageXL" group.
Visit this group at https://groups.google.com/group/stagexl.
To view this discussion on the web visit https://groups.google.com/d/msgid/stagexl/7737873b-49c8-4ab3-895f-eee0fad0f152%40googlegroups.com.

Neil H

unread,
Aug 15, 2018, 5:19:07 PM8/15/18
to StageXL
It looks like Dart 2.0 has support for all the WebGL2 constants via the WebGL class, and has support for RenderContext2 .

The getContext3d() method doesn't give back a WebGL2 context, but one could get one yourself.

Is it likely that you will add WebGL2 support to StageXL?

I currently use a Context2D with StageXL 0.10.3 (yes, that is old). I have a lot of customizations to StageXL to support the exact Flash API, and it is difficult to port them to your current code, as you have moved and refactored files.

If I do port my code forward, I want to be able to switch over to WebGL for performance. I can do that with regular WebGL, but if I go to the trouble, I want to re-write my imaging chain with custom WebGL2 shaders (for the extra image formats available). I'll find a way to shoe-horn these into StageXL.

You may get much of WebGL2 working just with changing to a new RenderContext2, but you probably want to re-write some things for perfomance. Would that be as easy as having an extra RenderContextWebGL2 class in the engine?


Thanks.

Bernhard Pichler

unread,
Aug 17, 2018, 4:21:43 PM8/17/18
to Neil H, StageXL
Hi,

Currently i have no plan to migrate StageXL to WebGL2. 
What kind of features do you want that are enabled by WebGL2?

Kind regards,
Bernhard



Neil H

unread,
Aug 23, 2018, 11:31:11 AM8/23/18
to StageXL
Hi Bernhard,

I use both 8-bit and 16-bit gray images (up to 4K x 5K size), which need processing with lookup tables, (and as they are tiled, de-tiling).  I currently do this in a custom imagining chain compiled with emscripten, combined with BitmapData in StageXL, with the standard 2D context.  Going to WebGL in StageXL, without re-coding the emscripten piece to WebGL would gain nothing in performance.

I did a prototype WebGL imaging chain in three.js many years ago.  It worked, but I noticed a few things that were not optimum:

* I need precision of highp in all shaders, and WebGL doesn't guarantee that.  WebGL2 does
* There was no high-bit gray texture format in WebGL, but there is in WebGL2 (making shaders easier and faster.  It isn't texture-filterable, but that is fine for the start of the chain).
* Uniform Buffer Objects seem like a performance win.
* Some limitations on non-power-of-2 textures (though I may not hit those).

So, I don't need any extra built-in functionality in StageXL.  If I need anything, I'll add it myself.  I just need StageXL to support the WebGL2 context -- and if it can gain some performance benefits, that's good too.

It seems like you could just have an alternate engine for WebGL2, and have an option for choosing which one prefers.  For myself, I would probably need to know if WebGL2 was supported before I even ran any StageXL code, as I would need to swap in a different imaging chain entirely for Context2D.

I can do this myself, I just thought it would be best to synchronize with your implementation, if you were going to support WebGL2.  There have been a number of times that I've made changes to my version of StageXL, only to find that you made similar changes, but in a different way later.

Thanks!
Reply all
Reply to author
Forward
0 new messages