### Usage For gcanvas is designed to follow WebGL API, find details of each API in [https://developer.mozilla.org/en-US/docs/Web/API/WebGL\_API](https://developer.mozilla.org/en-US/docs/Web/API/WebGL_API) ### Support Legend * Implemented: API is implemented . * **Undefined**: API is not defined. * _Empty_: API is defined but not implemented. | API Name | API Type | Status | | --------------------------------------- | -------- | ------------- | | viewport() | Method | Implemented | | vertexAttribPointer() | Method | Implemented | | vertexAttrib2fv() | Method | Implemented | | useProgram() | Method | Implemented | | uniformMatrix4fv() | Method | Implemented | | uniformMatrix3fv() | Method | Implemented | | uniformMatrix2fv() | Method | Implemented | | uniform4iv() | Method | Implemented | | uniform4i() | Method | Implemented | | uniform4fv() | Method | Implemented | | uniform4f() | Method | Implemented | | uniform3iv() | Method | Implemented | | uniform3i() | Method | Implemented | | uniform3fv() | Method | Implemented | | uniform3f() | Method | Implemented | | uniform2iv() | Method | Implemented | | uniform2i() | Method | Implemented | | uniform2fv() | Method | Implemented | | uniform2f() | Method | Implemented | | uniform1iv() | Method | Implemented | | uniform1i() | Method | Implemented | | uniform1fv() | Method | Implemented | | uniform1f() | Method | Implemented | | texParameteri() | Method | Implemented | | texImage2D() | Method | Implemented | | shaderSource() | Method | Implemented | | scissor() | Method | Implemented | | renderbufferStorage() | Method | Implemented | | pixelStorei() | Method | Implemented | | linkProgram() | Method | Implemented | | lineWidth() | Method | Implemented | | getUniformLocation() | Method | Implemented | | getShaderParameter() | Method | Implemented | | getAttribLocation() | Method | Implemented | | generateMipmap() | Method | Implemented | | frontFace() | Method | Implemented | | framebufferTexture2D() | Method | Implemented | | flush() | Method | Implemented | | enableVertexAttribArray() | Method | Implemented | | enable() | Method | Implemented | | drawElements() | Method | Implemented | | disableVertexAttribArray() | Method | Implemented | | disable() | Method | Implemented | | depthMask() | Method | Implemented | | depthFunc() | Method | Implemented | | deleteTexture() | Method | Implemented | | deleteShader() | Method | Implemented | | deleteRenderbuffer() | Method | Implemented | | deleteProgram() | Method | Implemented | | deleteFramebuffer() | Method | Implemented | | deleteBuffer() | Method | Implemented | | cullFace() | Method | Implemented | | createTexture() | Method | Implemented | | createShader() | Method | Implemented | | createRenderbuffer() | Method | Implemented | | createProgram() | Method | Implemented | | createFramebuffer() | Method | Implemented | | createBuffer() | Method | Implemented | | compileShader() | Method | Implemented | | colorMask() | Method | Implemented | | clearStencil() | Method | Implemented | | clearDepth() | Method | Implemented | | clearColor() | Method | Implemented | | clear() | Method | Implemented | | bufferData() | Method | Implemented | | blendFuncSeparate() | Method | Implemented | | blendFunc() | Method | Implemented | | blendEquationSeparate() | Method | Implemented | | blendEquation() | Method | Implemented | | bindRenderbuffer() | Method | Implemented | | bindFramebuffer() | Method | Implemented | | bindBuffer() | Method | Implemented | | bindAttribLocation() | Method | Implemented | | attachShader() | Method | Implemented | | activeTexture() | Method | Implemented | | validateProgram() | Method | Implemented | | texSubImage2D() | Method | Implemented | | texParameterf() | Method | Implemented | | stencilOpSeparate() | Method | Implemented | | stencilOp() | Method | Implemented | | stencilMaskSeparate() | Method | Implemented | | stencilMask() | Method | Implemented | | stencilFuncSeparate() | Method | Implemented | | stencilFunc() | Method | Implemented | | sampleCoverage() | Method | Implemented | | readPixels() | Method | Implemented | | polygonOffset() | Method | Implemented | | isTexture() | Method | Implemented | | isShader() | Method | Implemented | | isRenderbuffer() | Method | Implemented | | isProgram() | Method | Implemented | | isFramebuffer() | Method | Implemented | | isEnabled() | Method | Implemented | | isContextLost() | Method | *Empty* | | isBuffer() | Method | Implemented | | getVertexAttribOffset() | Method | Implemented | | getVertexAttrib() | Method | Implemented | | getUniform() | Method | Implemented | | getTexParameter() | Method | Implemented | | getSupportedExtensions() | Method | Implemented | | getShaderSource() | Method | Implemented | | getShaderPrecisionFormat() | Method | Implemented | | getShaderInfoLog() | Method | Implemented | | getRenderbufferParameter() | Method | Implemented | | getProgramParameter() | Method | Implemented | | getProgramInfoLog() | Method | Implemented | | getParameter() | Method | Implemented | | getFramebufferAttachmentParameter() | Method | Implemented | | getExtension() | Method | Implemented | | getError() | Method | Implemented | | getContextAttributes() | Method | *Empty* | | getBufferParameter() | Method | Implemented | | getAttachedShaders() | Method | Implemented | | getActiveUniform() | Method | Implemented | | getActiveAttrib() | Method | Implemented | | drawArrays / drawArraysInstancedANGLE() | Method | Implemented | | detachShader() | Method | Implemented | | depthRange() | Method | Implemented | | copyTexSubImage2D() | Method | Implemented | | copyTexImage2D() | Method | Implemented | | compressedTexSubImage2D() | Method | Implemented | | compressedTexImage2D() | Method | Implemented | | checkFramebufferStatus() | Method | Implemented | | bufferSubData() | Method | Implemented | | blendColor() | Method | Implemented | | bindTexture() | Method | Implemented | | commit() | Method | **Undefined** | | finish() | Method | **Undefined** | | framebufferRenderbuffer() | Method | Implemented | | hint() | Method | **Undefined** |