WebGLRenderingContext: checkFramebufferStatus() method
        
        
          
                Baseline
                
                  Widely available
                
                
              
        
        
        
          
                
              
                
              
                
              
        
        
      
      This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
Note: This feature is available in Web Workers.
The WebGLRenderingContext.checkFramebufferStatus() method
of the WebGL API returns the completeness
status of the WebGLFramebuffer object.
Syntax
checkFramebufferStatus(target)
Parameters
- target
- 
A GLenumspecifying the binding point (target). Possible values:- gl.FRAMEBUFFER
- 
Collection buffer data storage of color, alpha, depth and stencil buffers used to render an image. 
 When using a WebGL 2 context, the following values are available additionally: - gl.DRAW_FRAMEBUFFER
- 
Equivalent to gl.FRAMEBUFFER. Used as a destination for drawing, rendering, clearing, and writing operations.
- gl.READ_FRAMEBUFFER
- 
Used as a source for reading operations. 
 
Return value
A GLenum indicating the completeness status of the framebuffer or
0 if an error occurs. Possible enum return values:
- 
gl.FRAMEBUFFER_COMPLETE: The framebuffer is ready to display.
- 
gl.FRAMEBUFFER_INCOMPLETE_ATTACHMENT: The attachment types are mismatched or not all framebuffer attachment points are framebuffer attachment complete.
- 
gl.FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT: There is no attachment.
- 
gl.FRAMEBUFFER_INCOMPLETE_DIMENSIONS: Height and width of the attachment are not the same.
- 
gl.FRAMEBUFFER_UNSUPPORTED: The format of the attachment is not supported or if depth and stencil attachments are not the same renderbuffer.
- 
When using a WebGL 2 context, the following values can be returned additionally: - gl.FRAMEBUFFER_INCOMPLETE_MULTISAMPLE: The values of- gl.RENDERBUFFER_SAMPLESare different among attached renderbuffers, or are non-zero if the attached images are a mix of renderbuffers and textures.
 
- 
When using the OVR_multiview2extension, the following value can be returned additionally:- ext.FRAMEBUFFER_INCOMPLETE_VIEW_TARGETS_OVR: If- baseViewIndexis not the same for all framebuffer attachment points where the value of- FRAMEBUFFER_ATTACHMENT_OBJECT_TYPEis not- NONE, the framebuffer is considered incomplete.
 
Examples
const canvas = document.getElementById("canvas");
const gl = canvas.getContext("webgl");
const framebuffer = gl.createFramebuffer();
// …
gl.checkFramebufferStatus(gl.FRAMEBUFFER);
Specifications
| Specification | 
|---|
| WebGL Specification> # 5.14.6> | 
| WebGL 2.0 Specification> # 3.7.4> | 
Browser compatibility
Loading…