This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
The WebGL2RenderingContext.fenceSync()
method of the WebGL 2 API creates a new WebGLSync
object and inserts it into the GL command stream.
WebGLSync gl.fenceSync(condition, flags);
condition
GLenum
specifying the condition that must be met to set the sync object's state to signaled. Must be gl.SYNC_GPU_COMMANDS_COMPLETE
.GLbitfield
specifying a bitwise combination of flags controlling the behavior of the sync object. Must be 0
(exists for extensions only).A WebGLSync
object.
gl
must be a WebGL2RenderingContext
. WebGLSync
objects are not available in WebGL 1.
var sync = gl.fenceSync(gl.SYNC_GPU_COMMANDS_COMPLETE, 0);
Specification | Status | Comment |
---|---|---|
WebGL 2.0 The definition of 'fenceSync' in that specification. | Editor's Draft | Initial definition for WebGL. |
OpenGL ES 3.0 The definition of 'glFenceSync' in that specification. | Standard | Man page of the (similar) OpenGL API. |
Desktop | ||||||
---|---|---|---|---|---|---|
Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | |
Basic support | 56 | No | 51 | No | 43 | No |
Mobile | |||||||
---|---|---|---|---|---|---|---|
Android webview | Chrome for Android | Edge Mobile | Firefox for Android | Opera for Android | iOS Safari | Samsung Internet | |
Basic support | 58 | 58 | No | 51 | 43 | No | 7.0 |
© 2005–2018 Mozilla Developer Network and individual contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/WebGL2RenderingContext/fenceSync