-Dcanvas vs -Dwebgl vs -Ddom?

Can some one please explain the differences between compilation of the following keys:

-Dcanvas
-Dwebgl (highest FPS)
-Ddom

Also, is there other keys for rendering other than those?

I’ve noticed that the fastest one is -Dwebgl, however, lots of users noticed black color over the project canvas like this after a while of playing:

These are different kinds of rendering

WebGL is a 3D context, using OpenGL APIs

Canvas uses CanvasRenderingContext2D APIs, which is more similar to using BitmapData APIs

DOM uses 3D CSS transforms with ordinary DOM elements, which may be images, DIVs, or canvas elements, depending on the APIs you use

So, which one is prefered if my app will run on iPads, Tablets?

WebGL is the default, with canvas being the fallback if WebGL is not supported on the target browser. -Dcanvas and -Ddom are available as options if someone doesn’t want to use WebGL. DOM is preferable for applications that will be more static, or might need deeper DOM integration. WebGL is a good default for most games

Thanks, so even if I did not use -Dcanvas canvas being the fallback if WebGL is not supported?

Yep, we always keep canvas if we use WebGL, to help expand support for everyone

Would it be possible to fallback to canvas in case of webgl errors (ex: the black color over the stage like bove ) ?

Can we see the developer console, and see if there was an error?

Actually he is not a developer, she’s a customer and she was sad that my app is not working as expected so I told her to switch to Firefox and then the problem is gone! she was using Chrome, so it seems that Firefox is much better than Chrome when using webGL