Getting a WebGL Implementation: Difference between revisions

From WebGL Public Wiki
Jump to navigation Jump to search
Nobin (talk | contribs)
m Correcting small mistake
Updated page to reflect current state of WebGL 1.0 and 2.0 implementations
Line 1: Line 1:
The WebGL 1.0 specification has recently been released, and the latest builds of several browsers are close to reaching full conformance. Here are instructions on how to obtain a copy of a browser supporting the WebGL specification. As various implementations reach 100% conformance, expect that browsers will have this functionality built in to their latest releases, and not require any manual steps to enable it.
== WebGL 1.0 ==


=== Firefox ===
WebGL 1.0 is supported in the stable releases of most major browsers on both desktop and mobile platforms. Chrome, Firefox, Internet Explorer, Opera, and Safari are all known to have good WebGL support on both desktop and mobile browsers. See http://caniuse.com/#feat=webgl for availability details.


WebGL is supported in [http://www.mozilla.com/en-US/firefox/new/ Firefox/4.0]
Technical issues such as known hardware problems or lack of required GPU features may prevent WebGL from running in some cases.


For testing/debugging purposes, software rendering can be used through OSMesa (off-screen Mesa), by setting the "webgl.osmesalib" variable to point to the OSMesa shared library (typically /usr/lib/libOSMesa.so). Note that the OSMesa library is required to use "gl" prefixes, not "mgl".
== WebGL 2.0 ==


You can also try setting the "webgl.force-enabled" variable to true if WebGL is not working. Variables can be accessed by typing "about:config" in the address bar.
The [https://www.khronos.org/registry/webgl/specs/latest/2.0/ WebGL 2.0 specification] has recently been released, and developers can now begin experiementing with the new functionality in some browsers. Existing implementations have known functionality gaps and may lack some validation that will be present once WebGL 2.0 is available in stable builds. They are provided to encourage early developer feedback.


=== Safari ===
WebGL 2.0 requires hardware with OpenGL ES 3.0 support or comparable desktop OpenGL feature support. Not all systems capable of running WebGL 1.0 will be able to run WebGL 2.0.


WebGL is supported on Mac OS X 10.6 in the [http://nightly.webkit.org/ WebKit nightly builds] or in Safari 5.x and above
=== Firefox ===
 
After downloading and installing the browser, you can enable WebGL through the Develop menu. To enable the Develop menu, go to Safari->Preferences and on the Advanced tab ensure that the "Show Develop menu in menu bar" checkbox has been checked.
 
Once the Develop menu is enabled WebGL support can be toggled with the Develop->Enable WebGL menu option.


=== Chrome / Chromium ===
See https://wiki.mozilla.org/Platform/GFX/WebGL2 for instructions on how to enable WebGL 2 in Firefox.


WebGL is available in the stable releases of [http://www.google.com/chrome/ Chrome] and [http://www.chromium.org/Home Chromium] for desktop platforms. Chromium is included in many software repositories for Linux based systems. Chrome 30 and later for Android supports WebGL by default on devices advertising the GL_EXT_robustness extension and LOSE_CONTEXT_ON_RESET notification strategy -- basically, a "kill switch" for content which runs too long. Chrome for iOS does not support WebGL due to platform restrictions.
Please file bugs for any issues you discover with Firefox’s WebGL 2.0 implementation at https://bugzilla.mozilla.org/


On Android devices which do not support the GL_EXT_robustness extension, it is possible to enable WebGL by navigating to about:flags, enabling "Override software rendering list", and restarting the browser. It is not recommended to browse arbitrary web sites with this setting.
=== Chrome ===


Please report issues you find to either the [https://www.khronos.org/webgl/public-mailing-list/ public WebGL mailing list] or via the [http://code.google.com/p/chromium/issues/list Chromium issue tracker].
Experiemental WebGL 2.0 support is available in recent [https://www.google.com/chrome/browser/canary.html Chrome Canary] builds. In order to enable it you must pass the “--enable-unsafe-es3-apis” flag on the command line. At this point the flag is not accessible through about:flags.


=== Opera ===
When enabled, WebGL 2.0 contexts can be created with the “webgl2” context ID.


WebGL is supported in [http://www.opera.com/browser/next/ Opera 12 beta] but you must ''enable'' it
Please file bugs for any issues you discover with Chrome’s WebGL 2.0 implementation at https://crbug.com In addition to describing the problem please navigate to about:gpu and attach the contents of that page to your report, which will help the developers identify the problem in the case that the issue is GPU or OS specific.
in the user preferences. Enter opera:config in the address bar. In the User Prefs section set both
Enable Hardware Acceleration and Enable WebGL to 1. Scroll to the bottom of the list of user preferences
and click the Save button. Restart the browser.

Revision as of 16:54, 31 March 2015

WebGL 1.0

WebGL 1.0 is supported in the stable releases of most major browsers on both desktop and mobile platforms. Chrome, Firefox, Internet Explorer, Opera, and Safari are all known to have good WebGL support on both desktop and mobile browsers. See http://caniuse.com/#feat=webgl for availability details.

Technical issues such as known hardware problems or lack of required GPU features may prevent WebGL from running in some cases.

WebGL 2.0

The WebGL 2.0 specification has recently been released, and developers can now begin experiementing with the new functionality in some browsers. Existing implementations have known functionality gaps and may lack some validation that will be present once WebGL 2.0 is available in stable builds. They are provided to encourage early developer feedback.

WebGL 2.0 requires hardware with OpenGL ES 3.0 support or comparable desktop OpenGL feature support. Not all systems capable of running WebGL 1.0 will be able to run WebGL 2.0.

Firefox

See https://wiki.mozilla.org/Platform/GFX/WebGL2 for instructions on how to enable WebGL 2 in Firefox.

Please file bugs for any issues you discover with Firefox’s WebGL 2.0 implementation at https://bugzilla.mozilla.org/

Chrome

Experiemental WebGL 2.0 support is available in recent Chrome Canary builds. In order to enable it you must pass the “--enable-unsafe-es3-apis” flag on the command line. At this point the flag is not accessible through about:flags.

When enabled, WebGL 2.0 contexts can be created with the “webgl2” context ID.

Please file bugs for any issues you discover with Chrome’s WebGL 2.0 implementation at https://crbug.com In addition to describing the problem please navigate to about:gpu and attach the contents of that page to your report, which will help the developers identify the problem in the case that the issue is GPU or OS specific.