The WebGLVertexArrayObjectOES
interface is part of the WebGL {{domxref("OES_vertex_array_object")}} extension, represents vertex array objects (VAOs) pointing to vertex array data and provides names for different sets of vertex data.
WebGL extensions are available using the {{domxref("WebGLRenderingContext.getExtension()")}} method. For more information, see also Using Extensions in the WebGL tutorial.
Availability: This extension is only available to {{domxref("WebGLRenderingContext", "WebGL1", "", 1)}} contexts. In {{domxref("WebGL2RenderingContext", "WebGL2", "", 1)}}, the functionality of this extension is available on the WebGL2 context by default and the interface is named {{domxref("WebGLVertexArrayObject")}}.
When working with WebGLVertexArrayObjectOES
objects, the following methods of the {{domxref("OES_vertex_array_object")}} extension are useful:
- {{domxref("OES_vertex_array_object.createVertexArrayOES()", "ext.createVertexArrayOES()")}}
- {{domxref("OES_vertex_array_object.deleteVertexArrayOES()", "ext.deleteVertexArrayOES()")}}
- {{domxref("OES_vertex_array_object.isVertexArrayOES()", "ext.isVertexArrayOES()")}}
- {{domxref("OES_vertex_array_object.bindVertexArrayOES()", "ext.bindVertexArrayOES()")}}
Examples
var ext = gl.getExtension("OES_vertex_array_object"); var vao = ext.createVertexArrayOES(); ext.bindVertexArrayOES(vao); // ... // calls to bindBuffer or vertexAttribPointer // which will be "recorded" in the VAO // ...
Specifications
Specification | Status | Comment |
---|---|---|
{{SpecName('OES_vertex_array_object', '', 'OES_vertex_array_object')}} | {{Spec2('OES_vertex_array_object')}} | Initial definition. |
Browser compatibility
Feature | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
Basic support | {{CompatUnknown}} | {{CompatGeckoDesktop(25)}} | {{CompatUnknown}} | {{CompatUnknown}} | {{CompatUnknown}} |
Feature | Android | Chrome for Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
Basic support | {{CompatUnknown}} | {{CompatUnknown}} | {{CompatUnknown}} | {{CompatUnknown}} | {{CompatUnknown}} | {{CompatUnknown}} |
See also
- {{domxref("WebGLRenderingContext.getExtension()")}}
- {{domxref("WebGLRenderingContext.vertexAttribPointer()")}}
- WebGL2 equivalents:
- {{domxref("WebGLVertexArrayObject")}}
- {{domxref("WebGL2RenderingContext.createVertexArray()")}}
- {{domxref("WebGL2RenderingContext.deleteVertexArray()")}}
- {{domxref("WebGL2RenderingContext.isVertexArray()")}}
- {{domxref("WebGL2RenderingContext.bindVertexArray()")}}