Documentation
¶
Index ¶
- Constants
- Variables
- func ActiveTexture(texture GLenum)
- func AttachShader(program Program, shader Shader)
- func BindBuffer(target GLenum, buffer Buffer)
- func BindBufferBase(target GLenum, index GLuint, buffer Buffer)
- func BindBufferRange(target GLenum, index GLuint, buffer Buffer, offset GLintptr, size GLsizeiptr)
- func BindFramebuffer(target GLenum, framebuffer Framebuffer)
- func BindSampler(unit GLuint, sampler Sampler)
- func BindTexture(target GLenum, texture Texture)
- func BindVertexArray(array VertexArray)
- func BlendColor(red, green, blue, alpha GLclampf)
- func BlendEquationSeparate(modeRGB, modeAlpha GLenum)
- func BlendFunc(sfactor, dfactor GLenum)
- func BlendFuncSeparate(srcRGB, dstRGB, srcAlpha, dstAlpha GLenum)
- func BlitFramebuffer(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1 GLint, mask GLbitfield, ...)
- func BufferData(target GLenum, size GLsizeiptr, data []byte, usage GLenum)
- func BufferSubData(target GLenum, dstOffset GLintptr, data []byte)
- func Clear(mask GLbitfield)
- func ClearBufferfi(buffer GLenum, drawBuffer GLint, depth GLfloat, stencil GLint)
- func ClearBufferfv(buffer GLenum, drawBuffer GLint, values Float32List)
- func ClearBufferiv(buffer GLenum, drawBuffer GLint, values Int32List)
- func ClearBufferuiv(buffer GLenum, drawBuffer GLint, values Uint32List)
- func ClearColor(r, g, b, a GLclampf)
- func ClearDepth(depth GLclampf)
- func ClearStencil(stencil GLint)
- func ColorMask(r, g, b, a GLboolean)
- func CompileShader(shader Shader)
- func CopyTexSubImage2D(target GLenum, level, xoffset, yoffset, x, y GLint, width, height GLsizei)
- func CullFace(mode GLenum)
- func DeleteBuffer(buffer Buffer)
- func DeleteFramebuffer(framebuffer Framebuffer)
- func DeleteProgram(program Program)
- func DeleteSampler(sampler Sampler)
- func DeleteShader(shader Shader)
- func DeleteSync(sync Sync)
- func DeleteTexture(texture Texture)
- func DeleteVertexArray(array VertexArray)
- func DepthFunc(fn GLenum)
- func DepthMask(mask GLboolean)
- func DetachShader(program Program, shader Shader)
- func Disable(cap GLenum)
- func DisableVertexAttribArray(index GLuint)
- func DrawArrays(mode GLenum, first GLint, count GLsizei)
- func DrawArraysInstanced(mode GLenum, first GLint, count, instanceCount GLsizei)
- func DrawBuffers(buffers []GLenum)
- func DrawElements(mode GLenum, count GLsizei, dtype GLenum, offset GLintptr)
- func DrawElementsInstanced(mode GLenum, count GLsizei, pType GLenum, offset GLintptr, ...)
- func DrawingBufferHeight() int
- func DrawingBufferWidth() int
- func Enable(cap GLenum)
- func EnableVertexAttribArray(index GLuint)
- func Finish()
- func Flush()
- func FramebufferTexture2D(target, attachment, texTarget GLenum, texture Texture, level GLint)
- func FramebufferTextureLayer(target, attachment GLenum, texture Texture, level, layer GLint)
- func FrontFace(mode GLenum)
- func GenerateMipmap(target GLenum)
- func GetBufferSubData[T DataTypes](target GLenum, srcOffset GLintptr, data []T)
- func GetExtension(name string) any
- func GetProgramInfoLog(program Program) string
- func GetShaderInfoLog(shader Shader) string
- func InitFromCanvas(htmlCanvas js.Value, opts ...ContextOption) error
- func InitFromID(canvasID string, opts ...ContextOption) error
- func InvalidateFramebuffer(target GLenum, attachments []GLenum)
- func IsSampler(sampler Sampler) bool
- func LineWidth(width GLfloat)
- func LinkProgram(program Program)
- func PolygonOffset(factor, units GLfloat)
- func ReadPixels(x, y GLint, width, height GLsizei, format, dtype GLenum, offset GLintptr)
- func SamplerParameterf(sampler Sampler, pname GLenum, param GLfloat)
- func SamplerParameteri(sampler Sampler, pname GLenum, param GLint)
- func Scissor(x, y GLint, width, height GLsizei)
- func ShaderSource(shader Shader, source string)
- func StencilFuncSeparate(face, fun GLenum, ref GLint, mask GLuint)
- func StencilMaskSeparate(face GLenum, mask GLuint)
- func StencilOpSeparate(face, fail, zfail, zpass GLenum)
- func TexImage2D(target GLenum, level, internalFormat GLint, width, height GLsizei, ...)
- func TexParameteri(target, pname GLenum, param GLint)
- func TexStorage2D(target GLenum, levels GLsizei, internalFormat GLenum, width, height GLsizei)
- func TexStorage3D(target GLenum, levels GLsizei, internalFormat GLenum, ...)
- func TexSubImage2D(target GLenum, level, xoffset, yoffset GLint, width, height GLsizei, ...)
- func TexSubImage3D(target GLenum, level GLint, xoffset, yoffset, zoffset GLint, ...)
- func Uniform1f(location UniformLocation, x GLfloat)
- func Uniform1i(location UniformLocation, x GLint)
- func Uniform2f(location UniformLocation, x, y GLfloat)
- func Uniform2i(location UniformLocation, x, y GLint)
- func Uniform3f(location UniformLocation, x, y, z GLfloat)
- func Uniform3i(location UniformLocation, x, y, z GLint)
- func Uniform4f(location UniformLocation, x, y, z, w GLfloat)
- func Uniform4i(location UniformLocation, x, y, z, w GLint)
- func UniformBlockBinding(program Program, index, binding GLuint)
- func UniformMatrix4fv(location UniformLocation, transpose GLboolean, data []GLfloat)
- func UseProgram(program Program)
- func VertexAttribIPointer(index GLuint, size GLint, dtype GLenum, stride GLsizei, offset GLintptr)
- func VertexAttribPointer(index GLuint, size GLint, dtype GLenum, normalized GLboolean, stride GLsizei, ...)
- func Viewport(x, y GLint, width, height GLsizei)
- type Any
- type Buffer
- type ContextOption
- func WithOptionAlpha(alpha bool) ContextOption
- func WithOptionAntialias(antialias bool) ContextOption
- func WithOptionDepth(depth bool) ContextOption
- func WithOptionDesynchronized(desynchronized bool) ContextOption
- func WithOptionFailIfMajorPerformanceCaveat(fail bool) ContextOption
- func WithOptionPowerPreference(pref PowerPreference) ContextOption
- func WithOptionPremultipliedAlpha(premultiplied bool) ContextOption
- func WithOptionPreserveDrawingBuffer(preserve bool) ContextOption
- func WithOptionStencil(stencil bool) ContextOption
- func WithOptionXRCompatible(compatible bool) ContextOption
- type DataTypes
- type Float32List
- type Framebuffer
- type GLbitfield
- type GLboolean
- type GLbyte
- type GLclampf
- type GLenum
- type GLfloat
- type GLint
- type GLint64
- type GLintptr
- type GLshort
- type GLsizei
- type GLsizeiptr
- type GLubyte
- type GLuint
- type GLuint64
- type GLushort
- type Int32List
- type PowerPreference
- type Program
- type Resultdeprecated
- type Sampler
- type Shader
- type Sync
- type Texture
- type Uint32List
- type UniformLocation
- type VertexArray
Constants ¶
const ( DEPTH_BUFFER_BIT = 0x00000100 STENCIL_BUFFER_BIT = 0x00000400 COLOR_BUFFER_BIT = 0x00004000 POINTS = 0x0000 LINES = 0x0001 LINE_LOOP = 0x0002 LINE_STRIP = 0x0003 TRIANGLES = 0x0004 TRIANGLE_STRIP = 0x0005 TRIANGLE_FAN = 0x0006 ZERO = 0x0000 ONE = 0x0001 SRC_COLOR = 0x0300 ONE_MINUS_SRC_COLOR = 0x0301 SRC_ALPHA = 0x0302 ONE_MINUS_SRC_ALPHA = 0x0303 DST_ALPHA = 0x0304 ONE_MINUS_DST_ALPHA = 0x0305 DST_COLOR = 0x0306 ONE_MINUS_DST_COLOR = 0x0307 SRC_ALPHA_SATURATE = 0x0308 FUNC_ADD = 0x8006 BLEND_EQUATION = 0x8009 BLEND_EQUATION_RGB = 0x8009 BLEND_EQUATION_ALPHA = 0x883D FUNC_SUBTRACT = 0x800A FUNC_REVERSE_SUBTRACT = 0x800B BLEND_DST_RGB = 0x80C8 BLEND_SRC_RGB = 0x80C9 BLEND_DST_ALPHA = 0x80CA BLEND_SRC_ALPHA = 0x80CB CONSTANT_COLOR = 0x8001 ONE_MINUS_CONSTANT_COLOR = 0x8002 CONSTANT_ALPHA = 0x8003 ONE_MINUS_CONSTANT_ALPHA = 0x8004 BLEND_COLOR = 0x8005 ARRAY_BUFFER = 0x8892 ELEMENT_ARRAY_BUFFER = 0x8893 ARRAY_BUFFER_BINDING = 0x8894 ELEMENT_ARRAY_BUFFER_BINDING = 0x8895 STREAM_DRAW = 0x88E0 STATIC_DRAW = 0x88E4 DYNAMIC_DRAW = 0x88E8 BUFFER_SIZE = 0x8764 BUFFER_USAGE = 0x8765 CURRENT_VERTEX_ATTRIB = 0x8626 FRONT = 0x0404 BACK = 0x0405 FRONT_AND_BACK = 0x0408 CULL_FACE = 0x0B44 BLEND = 0x0BE2 DITHER = 0x0BD0 STENCIL_TEST = 0x0B90 DEPTH_TEST = 0x0B71 SCISSOR_TEST = 0x0C11 POLYGON_OFFSET_FILL = 0x8037 SAMPLE_ALPHA_TO_COVERAGE = 0x809E SAMPLE_COVERAGE = 0x80A0 NO_ERROR = 0x0000 INVALID_ENUM = 0x0500 INVALID_VALUE = 0x0501 INVALID_OPERATION = 0x0502 OUT_OF_MEMORY = 0x0505 CW = 0x0900 CCW = 0x0901 LINE_WIDTH = 0x0B21 ALIASED_POINT_SIZE_RANGE = 0x846D ALIASED_LINE_WIDTH_RANGE = 0x846E CULL_FACE_MODE = 0x0B45 FRONT_FACE = 0x0B46 DEPTH_RANGE = 0x0B70 DEPTH_WRITEMASK = 0x0B72 DEPTH_CLEAR_VALUE = 0x0B73 DEPTH_FUNC = 0x0B74 STENCIL_CLEAR_VALUE = 0x0B91 STENCIL_FUNC = 0x0B92 STENCIL_FAIL = 0x0B94 STENCIL_PASS_DEPTH_FAIL = 0x0B95 STENCIL_PASS_DEPTH_PASS = 0x0B96 STENCIL_REF = 0x0B97 STENCIL_VALUE_MASK = 0x0B93 STENCIL_WRITEMASK = 0x0B98 STENCIL_BACK_FUNC = 0x8800 STENCIL_BACK_FAIL = 0x8801 STENCIL_BACK_PASS_DEPTH_FAIL = 0x8802 STENCIL_BACK_PASS_DEPTH_PASS = 0x8803 STENCIL_BACK_REF = 0x8CA3 STENCIL_BACK_VALUE_MASK = 0x8CA4 STENCIL_BACK_WRITEMASK = 0x8CA5 VIEWPORT = 0x0BA2 SCISSOR_BOX = 0x0C10 COLOR_CLEAR_VALUE = 0x0C22 COLOR_WRITEMASK = 0x0C23 UNPACK_ALIGNMENT = 0x0CF5 PACK_ALIGNMENT = 0x0D05 MAX_TEXTURE_SIZE = 0x0D33 MAX_VIEWPORT_DIMS = 0x0D3A SUBPIXEL_BITS = 0x0D50 RED_BITS = 0x0D52 GREEN_BITS = 0x0D53 BLUE_BITS = 0x0D54 ALPHA_BITS = 0x0D55 DEPTH_BITS = 0x0D56 STENCIL_BITS = 0x0D57 POLYGON_OFFSET_UNITS = 0x2A00 POLYGON_OFFSET_FACTOR = 0x8038 TEXTURE_BINDING_2D = 0x8069 SAMPLE_BUFFERS = 0x80A8 SAMPLES = 0x80A9 SAMPLE_COVERAGE_VALUE = 0x80AA SAMPLE_COVERAGE_INVERT = 0x80AB COMPRESSED_TEXTURE_FORMATS = 0x86A3 DONT_CARE = 0x1100 FASTEST = 0x1101 NICEST = 0x1102 GENERATE_MIPMAP_HINT = 0x8192 BYTE = 0x1400 UNSIGNED_BYTE = 0x1401 SHORT = 0x1402 UNSIGNED_SHORT = 0x1403 INT = 0x1404 UNSIGNED_INT = 0x1405 FLOAT = 0x1406 DEPTH_COMPONENT = 0x1902 ALPHA = 0x1906 RGB = 0x1907 RGBA = 0x1908 LUMINANCE = 0x1909 LUMINANCE_ALPHA = 0x190A UNSIGNED_SHORT_4_4_4_4 = 0x8033 UNSIGNED_SHORT_5_5_5_1 = 0x8034 UNSIGNED_SHORT_5_6_5 = 0x8363 FRAGMENT_SHADER = 0x8B30 VERTEX_SHADER = 0x8B31 MAX_VERTEX_ATTRIBS = 0x8869 MAX_VERTEX_UNIFORM_VECTORS = 0x8DFB MAX_VARYING_VECTORS = 0x8DFC MAX_COMBINED_TEXTURE_IMAGE_UNITS = 0x8B4D MAX_VERTEX_TEXTURE_IMAGE_UNITS = 0x8B4C MAX_TEXTURE_IMAGE_UNITS = 0x8872 MAX_FRAGMENT_UNIFORM_VECTORS = 0x8DFD SHADER_TYPE = 0x8B4F DELETE_STATUS = 0x8B80 LINK_STATUS = 0x8B82 VALIDATE_STATUS = 0x8B83 ATTACHED_SHADERS = 0x8B85 ACTIVE_UNIFORMS = 0x8B86 ACTIVE_ATTRIBUTES = 0x8B89 SHADING_LANGUAGE_VERSION = 0x8B8C CURRENT_PROGRAM = 0x8B8D NEVER = 0x0200 LESS = 0x0201 EQUAL = 0x0202 LEQUAL = 0x0203 GREATER = 0x0204 NOTEQUAL = 0x0205 GEQUAL = 0x0206 ALWAYS = 0x0207 KEEP = 0x1E00 REPLACE = 0x1E01 INCR = 0x1E02 DECR = 0x1E03 INVERT = 0x150A INCR_WRAP = 0x8507 DECR_WRAP = 0x8508 VENDOR = 0x1F00 RENDERER = 0x1F01 VERSION = 0x1F02 NEAREST = 0x2600 LINEAR = 0x2601 NEAREST_MIPMAP_NEAREST = 0x2700 LINEAR_MIPMAP_NEAREST = 0x2701 NEAREST_MIPMAP_LINEAR = 0x2702 LINEAR_MIPMAP_LINEAR = 0x2703 TEXTURE_MAG_FILTER = 0x2800 TEXTURE_MIN_FILTER = 0x2801 TEXTURE_WRAP_S = 0x2802 TEXTURE_WRAP_T = 0x2803 TEXTURE_2D = 0x0DE1 TEXTURE = 0x1702 TEXTURE_CUBE_MAP = 0x8513 TEXTURE_BINDING_CUBE_MAP = 0x8514 TEXTURE_CUBE_MAP_POSITIVE_X = 0x8515 TEXTURE_CUBE_MAP_NEGATIVE_X = 0x8516 TEXTURE_CUBE_MAP_POSITIVE_Y = 0x8517 TEXTURE_CUBE_MAP_NEGATIVE_Y = 0x8518 TEXTURE_CUBE_MAP_POSITIVE_Z = 0x8519 TEXTURE_CUBE_MAP_NEGATIVE_Z = 0x851A MAX_CUBE_MAP_TEXTURE_SIZE = 0x851C TEXTURE0 = 0x84C0 TEXTURE1 = 0x84C1 TEXTURE2 = 0x84C2 TEXTURE3 = 0x84C3 TEXTURE4 = 0x84C4 TEXTURE5 = 0x84C5 TEXTURE6 = 0x84C6 TEXTURE7 = 0x84C7 TEXTURE8 = 0x84C8 TEXTURE9 = 0x84C9 TEXTURE10 = 0x84CA TEXTURE11 = 0x84CB TEXTURE12 = 0x84CC TEXTURE13 = 0x84CD TEXTURE14 = 0x84CE TEXTURE15 = 0x84CF TEXTURE16 = 0x84D0 TEXTURE17 = 0x84D1 TEXTURE18 = 0x84D2 TEXTURE19 = 0x84D3 TEXTURE20 = 0x84D4 TEXTURE21 = 0x84D5 TEXTURE22 = 0x84D6 TEXTURE23 = 0x84D7 TEXTURE24 = 0x84D8 TEXTURE25 = 0x84D9 TEXTURE26 = 0x84DA TEXTURE27 = 0x84DB TEXTURE28 = 0x84DC TEXTURE29 = 0x84DD TEXTURE30 = 0x84DE TEXTURE31 = 0x84DF ACTIVE_TEXTURE = 0x84E0 REPEAT = 0x2901 CLAMP_TO_EDGE = 0x812F MIRRORED_REPEAT = 0x8370 FLOAT_VEC2 = 0x8B50 FLOAT_VEC3 = 0x8B51 FLOAT_VEC4 = 0x8B52 INT_VEC2 = 0x8B53 INT_VEC3 = 0x8B54 INT_VEC4 = 0x8B55 BOOL = 0x8B56 BOOL_VEC2 = 0x8B57 BOOL_VEC3 = 0x8B58 BOOL_VEC4 = 0x8B59 FLOAT_MAT2 = 0x8B5A FLOAT_MAT3 = 0x8B5B FLOAT_MAT4 = 0x8B5C SAMPLER_2D = 0x8B5E SAMPLER_CUBE = 0x8B60 VERTEX_ATTRIB_ARRAY_ENABLED = 0x8622 VERTEX_ATTRIB_ARRAY_SIZE = 0x8623 VERTEX_ATTRIB_ARRAY_STRIDE = 0x8624 VERTEX_ATTRIB_ARRAY_TYPE = 0x8625 VERTEX_ATTRIB_ARRAY_NORMALIZED = 0x886A VERTEX_ATTRIB_ARRAY_POINTER = 0x8645 VERTEX_ATTRIB_ARRAY_BUFFER_BINDING = 0x889F IMPLEMENTATION_COLOR_READ_TYPE = 0x8B9A IMPLEMENTATION_COLOR_READ_FORMAT = 0x8B9B COMPILE_STATUS = 0x8B81 LOW_FLOAT = 0x8DF0 MEDIUM_FLOAT = 0x8DF1 HIGH_FLOAT = 0x8DF2 LOW_INT = 0x8DF3 MEDIUM_INT = 0x8DF4 HIGH_INT = 0x8DF5 FRAMEBUFFER = 0x8D40 RENDERBUFFER = 0x8D41 RGBA4 = 0x8056 RGB5_A1 = 0x8057 RGB565 = 0x8D62 DEPTH_COMPONENT16 = 0x81A5 STENCIL_INDEX8 = 0x8D48 DEPTH_STENCIL = 0x84F9 RENDERBUFFER_WIDTH = 0x8D42 RENDERBUFFER_HEIGHT = 0x8D43 RENDERBUFFER_INTERNAL_FORMAT = 0x8D44 RENDERBUFFER_RED_SIZE = 0x8D50 RENDERBUFFER_GREEN_SIZE = 0x8D51 RENDERBUFFER_BLUE_SIZE = 0x8D52 RENDERBUFFER_ALPHA_SIZE = 0x8D53 RENDERBUFFER_DEPTH_SIZE = 0x8D54 RENDERBUFFER_STENCIL_SIZE = 0x8D55 FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE = 0x8CD0 FRAMEBUFFER_ATTACHMENT_OBJECT_NAME = 0x8CD1 FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL = 0x8CD2 FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE = 0x8CD3 COLOR_ATTACHMENT0 = 0x8CE0 DEPTH_ATTACHMENT = 0x8D00 STENCIL_ATTACHMENT = 0x8D20 DEPTH_STENCIL_ATTACHMENT = 0x821A NONE = 0x0000 FRAMEBUFFER_COMPLETE = 0x8CD5 FRAMEBUFFER_INCOMPLETE_ATTACHMENT = 0x8CD6 FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT = 0x8CD7 FRAMEBUFFER_INCOMPLETE_DIMENSIONS = 0x8CD9 FRAMEBUFFER_UNSUPPORTED = 0x8CDD FRAMEBUFFER_BINDING = 0x8CA6 RENDERBUFFER_BINDING = 0x8CA7 MAX_RENDERBUFFER_SIZE = 0x84E8 INVALID_FRAMEBUFFER_OPERATION = 0x0506 UNPACK_FLIP_Y_WEBGL = 0x9240 UNPACK_PREMULTIPLY_ALPHA_WEBGL = 0x9241 CONTEXT_LOST_WEBGL = 0x9242 UNPACK_COLORSPACE_CONVERSION_WEBGL = 0x9243 BROWSER_DEFAULT_WEBGL = 0x9244 READ_BUFFER = 0x0C02 UNPACK_ROW_LENGTH = 0x0CF2 UNPACK_SKIP_ROWS = 0x0CF3 UNPACK_SKIP_PIXELS = 0x0CF4 PACK_ROW_LENGTH = 0x0D02 PACK_SKIP_ROWS = 0x0D03 PACK_SKIP_PIXELS = 0x0D04 COLOR = 0x1800 DEPTH = 0x1801 STENCIL = 0x1802 RED = 0x1903 RGB8 = 0x8051 RGBA8 = 0x8058 RGB10_A2 = 0x8059 TEXTURE_BINDING_3D = 0x806A UNPACK_SKIP_IMAGES = 0x806D UNPACK_IMAGE_HEIGHT = 0x806E TEXTURE_3D = 0x806F TEXTURE_WRAP_R = 0x8072 MAX_3D_TEXTURE_SIZE = 0x8073 UNSIGNED_INT_2_10_10_10_REV = 0x8368 MAX_ELEMENTS_VERTICES = 0x80E8 MAX_ELEMENTS_INDICES = 0x80E9 TEXTURE_MIN_LOD = 0x813A TEXTURE_MAX_LOD = 0x813B TEXTURE_BASE_LEVEL = 0x813C TEXTURE_MAX_LEVEL = 0x813D MIN = 0x8007 MAX = 0x8008 DEPTH_COMPONENT24 = 0x81A6 MAX_TEXTURE_LOD_BIAS = 0x84FD TEXTURE_COMPARE_MODE = 0x884C TEXTURE_COMPARE_FUNC = 0x884D CURRENT_QUERY = 0x8865 QUERY_RESULT = 0x8866 QUERY_RESULT_AVAILABLE = 0x8867 STREAM_READ = 0x88E1 STREAM_COPY = 0x88E2 STATIC_READ = 0x88E5 STATIC_COPY = 0x88E6 DYNAMIC_READ = 0x88E9 DYNAMIC_COPY = 0x88EA MAX_DRAW_BUFFERS = 0x8824 DRAW_BUFFER0 = 0x8825 DRAW_BUFFER1 = 0x8826 DRAW_BUFFER2 = 0x8827 DRAW_BUFFER3 = 0x8828 DRAW_BUFFER4 = 0x8829 DRAW_BUFFER5 = 0x882A DRAW_BUFFER6 = 0x882B DRAW_BUFFER7 = 0x882C DRAW_BUFFER8 = 0x882D DRAW_BUFFER9 = 0x882E DRAW_BUFFER10 = 0x882F DRAW_BUFFER11 = 0x8830 DRAW_BUFFER12 = 0x8831 DRAW_BUFFER13 = 0x8832 DRAW_BUFFER14 = 0x8833 DRAW_BUFFER15 = 0x8834 MAX_FRAGMENT_UNIFORM_COMPONENTS = 0x8B49 MAX_VERTEX_UNIFORM_COMPONENTS = 0x8B4A SAMPLER_3D = 0x8B5F SAMPLER_2D_SHADOW = 0x8B62 FRAGMENT_SHADER_DERIVATIVE_HINT = 0x8B8B PIXEL_PACK_BUFFER = 0x88EB PIXEL_UNPACK_BUFFER = 0x88EC PIXEL_PACK_BUFFER_BINDING = 0x88ED PIXEL_UNPACK_BUFFER_BINDING = 0x88EF FLOAT_MAT2x3 = 0x8B65 FLOAT_MAT2x4 = 0x8B66 FLOAT_MAT3x2 = 0x8B67 FLOAT_MAT3x4 = 0x8B68 FLOAT_MAT4x2 = 0x8B69 FLOAT_MAT4x3 = 0x8B6A SRGB = 0x8C40 SRGB8 = 0x8C41 SRGB8_ALPHA8 = 0x8C43 COMPARE_REF_TO_TEXTURE = 0x884E RGBA32F = 0x8814 RGB32F = 0x8815 RGBA16F = 0x881A RGB16F = 0x881B VERTEX_ATTRIB_ARRAY_INTEGER = 0x88FD MAX_ARRAY_TEXTURE_LAYERS = 0x88FF MIN_PROGRAM_TEXEL_OFFSET = 0x8904 MAX_PROGRAM_TEXEL_OFFSET = 0x8905 MAX_VARYING_COMPONENTS = 0x8B4B TEXTURE_2D_ARRAY = 0x8C1A TEXTURE_BINDING_2D_ARRAY = 0x8C1D R11F_G11F_B10F = 0x8C3A UNSIGNED_INT_10F_11F_11F_REV = 0x8C3B RGB9_E5 = 0x8C3D UNSIGNED_INT_5_9_9_9_REV = 0x8C3E TRANSFORM_FEEDBACK_BUFFER_MODE = 0x8C7F MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS = 0x8C80 TRANSFORM_FEEDBACK_VARYINGS = 0x8C83 TRANSFORM_FEEDBACK_BUFFER_START = 0x8C84 TRANSFORM_FEEDBACK_BUFFER_SIZE = 0x8C85 TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN = 0x8C88 RASTERIZER_DISCARD = 0x8C89 MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS = 0x8C8A MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS = 0x8C8B INTERLEAVED_ATTRIBS = 0x8C8C SEPARATE_ATTRIBS = 0x8C8D TRANSFORM_FEEDBACK_BUFFER = 0x8C8E TRANSFORM_FEEDBACK_BUFFER_BINDING = 0x8C8F RGBA32UI = 0x8D70 RGB32UI = 0x8D71 RGBA16UI = 0x8D76 RGB16UI = 0x8D77 RGBA8UI = 0x8D7C RGB8UI = 0x8D7D RGBA32I = 0x8D82 RGB32I = 0x8D83 RGBA16I = 0x8D88 RGB16I = 0x8D89 RGBA8I = 0x8D8E RGB8I = 0x8D8F RED_INTEGER = 0x8D94 RGB_INTEGER = 0x8D98 RGBA_INTEGER = 0x8D99 SAMPLER_2D_ARRAY = 0x8DC1 SAMPLER_2D_ARRAY_SHADOW = 0x8DC4 SAMPLER_CUBE_SHADOW = 0x8DC5 UNSIGNED_INT_VEC2 = 0x8DC6 UNSIGNED_INT_VEC3 = 0x8DC7 UNSIGNED_INT_VEC4 = 0x8DC8 INT_SAMPLER_2D = 0x8DCA INT_SAMPLER_3D = 0x8DCB INT_SAMPLER_CUBE = 0x8DCC INT_SAMPLER_2D_ARRAY = 0x8DCF UNSIGNED_INT_SAMPLER_2D = 0x8DD2 UNSIGNED_INT_SAMPLER_3D = 0x8DD3 UNSIGNED_INT_SAMPLER_CUBE = 0x8DD4 UNSIGNED_INT_SAMPLER_2D_ARRAY = 0x8DD7 DEPTH_COMPONENT32F = 0x8CAC DEPTH32F_STENCIL8 = 0x8CAD FLOAT_32_UNSIGNED_INT_24_8_REV = 0x8DAD FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING = 0x8210 FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE = 0x8211 FRAMEBUFFER_ATTACHMENT_RED_SIZE = 0x8212 FRAMEBUFFER_ATTACHMENT_GREEN_SIZE = 0x8213 FRAMEBUFFER_ATTACHMENT_BLUE_SIZE = 0x8214 FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE = 0x8215 FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE = 0x8216 FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE = 0x8217 FRAMEBUFFER_DEFAULT = 0x8218 UNSIGNED_INT_24_8 = 0x84FA DEPTH24_STENCIL8 = 0x88F0 UNSIGNED_NORMALIZED = 0x8C17 DRAW_FRAMEBUFFER_BINDING = 0x8CA6 READ_FRAMEBUFFER = 0x8CA8 DRAW_FRAMEBUFFER = 0x8CA9 READ_FRAMEBUFFER_BINDING = 0x8CAA RENDERBUFFER_SAMPLES = 0x8CAB FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER = 0x8CD4 MAX_COLOR_ATTACHMENTS = 0x8CDF COLOR_ATTACHMENT1 = 0x8CE1 COLOR_ATTACHMENT2 = 0x8CE2 COLOR_ATTACHMENT3 = 0x8CE3 COLOR_ATTACHMENT4 = 0x8CE4 COLOR_ATTACHMENT5 = 0x8CE5 COLOR_ATTACHMENT6 = 0x8CE6 COLOR_ATTACHMENT7 = 0x8CE7 COLOR_ATTACHMENT8 = 0x8CE8 COLOR_ATTACHMENT9 = 0x8CE9 COLOR_ATTACHMENT10 = 0x8CEA COLOR_ATTACHMENT11 = 0x8CEB COLOR_ATTACHMENT12 = 0x8CEC COLOR_ATTACHMENT13 = 0x8CED COLOR_ATTACHMENT14 = 0x8CEE COLOR_ATTACHMENT15 = 0x8CEF FRAMEBUFFER_INCOMPLETE_MULTISAMPLE = 0x8D56 MAX_SAMPLES = 0x8D57 HALF_FLOAT = 0x140B RG = 0x8227 RG_INTEGER = 0x8228 R8 = 0x8229 RG8 = 0x822B R16F = 0x822D R32F = 0x822E RG16F = 0x822F RG32F = 0x8230 R8I = 0x8231 R8UI = 0x8232 R16I = 0x8233 R16UI = 0x8234 R32I = 0x8235 R32UI = 0x8236 RG8I = 0x8237 RG8UI = 0x8238 RG16I = 0x8239 RG16UI = 0x823A RG32I = 0x823B RG32UI = 0x823C VERTEX_ARRAY_BINDING = 0x85B5 R8_SNORM = 0x8F94 RG8_SNORM = 0x8F95 RGB8_SNORM = 0x8F96 RGBA8_SNORM = 0x8F97 SIGNED_NORMALIZED = 0x8F9C COPY_READ_BUFFER = 0x8F36 COPY_WRITE_BUFFER = 0x8F37 COPY_READ_BUFFER_BINDING = 0x8F36 COPY_WRITE_BUFFER_BINDING = 0x8F37 UNIFORM_BUFFER = 0x8A11 UNIFORM_BUFFER_BINDING = 0x8A28 UNIFORM_BUFFER_START = 0x8A29 UNIFORM_BUFFER_SIZE = 0x8A2A MAX_VERTEX_UNIFORM_BLOCKS = 0x8A2B MAX_FRAGMENT_UNIFORM_BLOCKS = 0x8A2D MAX_COMBINED_UNIFORM_BLOCKS = 0x8A2E MAX_UNIFORM_BUFFER_BINDINGS = 0x8A2F MAX_UNIFORM_BLOCK_SIZE = 0x8A30 MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS = 0x8A31 MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS = 0x8A33 UNIFORM_BUFFER_OFFSET_ALIGNMENT = 0x8A34 ACTIVE_UNIFORM_BLOCKS = 0x8A36 UNIFORM_TYPE = 0x8A37 UNIFORM_SIZE = 0x8A38 UNIFORM_BLOCK_INDEX = 0x8A3A UNIFORM_OFFSET = 0x8A3B UNIFORM_ARRAY_STRIDE = 0x8A3C UNIFORM_MATRIX_STRIDE = 0x8A3D UNIFORM_IS_ROW_MAJOR = 0x8A3E UNIFORM_BLOCK_BINDING = 0x8A3F UNIFORM_BLOCK_DATA_SIZE = 0x8A40 UNIFORM_BLOCK_ACTIVE_UNIFORMS = 0x8A42 UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES = 0x8A43 UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER = 0x8A44 UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER = 0x8A46 INVALID_INDEX = 0xFFFFFFFF MAX_VERTEX_OUTPUT_COMPONENTS = 0x9122 MAX_FRAGMENT_INPUT_COMPONENTS = 0x9125 MAX_SERVER_WAIT_TIMEOUT = 0x9111 OBJECT_TYPE = 0x9112 SYNC_CONDITION = 0x9113 SYNC_STATUS = 0x9114 SYNC_FLAGS = 0x9115 SYNC_FENCE = 0x9116 SYNC_GPU_COMMANDS_COMPLETE = 0x9117 UNSIGNALED = 0x9118 SIGNALED = 0x9119 ALREADY_SIGNALED = 0x911A TIMEOUT_EXPIRED = 0x911B CONDITION_SATISFIED = 0x911C WAIT_FAILED = 0x911D SYNC_FLUSH_COMMANDS_BIT = 0x00000001 VERTEX_ATTRIB_ARRAY_DIVISOR = 0x88FE ANY_SAMPLES_PASSED = 0x8C2F ANY_SAMPLES_PASSED_CONSERVATIVE = 0x8D6A SAMPLER_BINDING = 0x8919 RGB10_A2UI = 0x906F INT_2_10_10_10_REV = 0x8D9F TRANSFORM_FEEDBACK = 0x8E22 TRANSFORM_FEEDBACK_PAUSED = 0x8E23 TRANSFORM_FEEDBACK_ACTIVE = 0x8E24 TRANSFORM_FEEDBACK_BINDING = 0x8E25 TEXTURE_IMMUTABLE_FORMAT = 0x912F MAX_ELEMENT_INDEX = 0x8D6B TEXTURE_IMMUTABLE_LEVELS = 0x82DF )
Variables ¶
var NilBuffer = Buffer(js.Null())
NilBuffer equals the zero Buffer.
var NilFramebuffer = Framebuffer(js.Null())
NilFramebuffer equals the zero Framebuffer.
var NilProgram = Program(js.Null())
NilProgram equals the zero Program.
var NilSampler = Sampler(js.Null())
NilSampler equals the zero Sampler.
var NilShader = Shader(js.Null())
NilShader equals the zero Shader.
var NilSync = Sync(js.Null())
NilSync equals the zero Sync.
var NilTexture = Texture(js.Null())
NilTexture equals the zero Texture.
var NilUniformLocation = UniformLocation(js.Null())
NilUniformLocation equals the nil UniformLocation.
var NilVertexArray = VertexArray(js.Null())
NilVertexArray equals the zero VertexArray.
Functions ¶
func ActiveTexture ¶
func ActiveTexture(texture GLenum)
func AttachShader ¶
func BindBuffer ¶
func BindBufferBase ¶ added in v0.5.0
func BindBufferRange ¶ added in v0.5.0
func BindBufferRange(target GLenum, index GLuint, buffer Buffer, offset GLintptr, size GLsizeiptr)
func BindFramebuffer ¶
func BindFramebuffer(target GLenum, framebuffer Framebuffer)
func BindSampler ¶ added in v0.6.0
func BindTexture ¶
func BindVertexArray ¶
func BindVertexArray(array VertexArray)
func BlendColor ¶ added in v0.2.0
func BlendColor(red, green, blue, alpha GLclampf)
func BlendEquationSeparate ¶
func BlendEquationSeparate(modeRGB, modeAlpha GLenum)
func BlendFuncSeparate ¶
func BlendFuncSeparate(srcRGB, dstRGB, srcAlpha, dstAlpha GLenum)
func BlitFramebuffer ¶
func BlitFramebuffer(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1 GLint, mask GLbitfield, filter GLenum)
func BufferData ¶
func BufferData(target GLenum, size GLsizeiptr, data []byte, usage GLenum)
func BufferSubData ¶
func Clear ¶
func Clear(mask GLbitfield)
func ClearBufferfi ¶ added in v0.2.0
func ClearBufferfv ¶ added in v0.2.0
func ClearBufferfv(buffer GLenum, drawBuffer GLint, values Float32List)
func ClearBufferiv ¶ added in v0.2.0
func ClearBufferuiv ¶ added in v0.2.0
func ClearBufferuiv(buffer GLenum, drawBuffer GLint, values Uint32List)
func ClearColor ¶
func ClearColor(r, g, b, a GLclampf)
func ClearDepth ¶
func ClearDepth(depth GLclampf)
func ClearStencil ¶
func ClearStencil(stencil GLint)
func CompileShader ¶
func CompileShader(shader Shader)
func CopyTexSubImage2D ¶
func DeleteBuffer ¶
func DeleteBuffer(buffer Buffer)
func DeleteFramebuffer ¶
func DeleteFramebuffer(framebuffer Framebuffer)
func DeleteProgram ¶
func DeleteProgram(program Program)
func DeleteSampler ¶ added in v0.6.0
func DeleteSampler(sampler Sampler)
func DeleteShader ¶
func DeleteShader(shader Shader)
func DeleteSync ¶
func DeleteSync(sync Sync)
func DeleteTexture ¶
func DeleteTexture(texture Texture)
func DeleteVertexArray ¶
func DeleteVertexArray(array VertexArray)
func DetachShader ¶
func DisableVertexAttribArray ¶
func DisableVertexAttribArray(index GLuint)
func DrawArrays ¶
func DrawArraysInstanced ¶ added in v0.2.0
func DrawBuffers ¶
func DrawBuffers(buffers []GLenum)
func DrawElementsInstanced ¶ added in v0.2.0
func DrawingBufferHeight ¶
func DrawingBufferHeight() int
func DrawingBufferWidth ¶
func DrawingBufferWidth() int
func EnableVertexAttribArray ¶
func EnableVertexAttribArray(index GLuint)
func FramebufferTexture2D ¶
func FramebufferTextureLayer ¶ added in v0.7.0
func GenerateMipmap ¶
func GenerateMipmap(target GLenum)
func GetBufferSubData ¶
func GetExtension ¶
func GetProgramInfoLog ¶
func GetShaderInfoLog ¶
func InitFromCanvas ¶
func InitFromCanvas(htmlCanvas js.Value, opts ...ContextOption) error
InitFromCanvas initializes webgl context and bindings from the specified htmlCanvas canvas element reference.
func InitFromID ¶
func InitFromID(canvasID string, opts ...ContextOption) error
InitFromID initializes webgl context and bindings from the canvas that has the specified canvasID ID.
func InvalidateFramebuffer ¶ added in v0.2.0
func LinkProgram ¶
func LinkProgram(program Program)
func PolygonOffset ¶ added in v0.7.0
func PolygonOffset(factor, units GLfloat)
func ReadPixels ¶
func SamplerParameterf ¶ added in v0.6.0
func SamplerParameteri ¶ added in v0.6.0
func ShaderSource ¶
func StencilFuncSeparate ¶
func StencilMaskSeparate ¶ added in v0.2.0
func StencilOpSeparate ¶
func StencilOpSeparate(face, fail, zfail, zpass GLenum)
func TexImage2D ¶
func TexParameteri ¶
func TexStorage2D ¶
func TexStorage3D ¶ added in v0.7.0
func TexSubImage2D ¶
func TexSubImage3D ¶
func Uniform1f ¶
func Uniform1f(location UniformLocation, x GLfloat)
func Uniform1i ¶
func Uniform1i(location UniformLocation, x GLint)
func Uniform2f ¶
func Uniform2f(location UniformLocation, x, y GLfloat)
func Uniform2i ¶
func Uniform2i(location UniformLocation, x, y GLint)
func Uniform3f ¶
func Uniform3f(location UniformLocation, x, y, z GLfloat)
func Uniform3i ¶
func Uniform3i(location UniformLocation, x, y, z GLint)
func Uniform4f ¶
func Uniform4f(location UniformLocation, x, y, z, w GLfloat)
func Uniform4i ¶
func Uniform4i(location UniformLocation, x, y, z, w GLint)
func UniformBlockBinding ¶ added in v0.5.0
func UniformMatrix4fv ¶
func UniformMatrix4fv(location UniformLocation, transpose GLboolean, data []GLfloat)
func UseProgram ¶
func UseProgram(program Program)
func VertexAttribIPointer ¶ added in v0.5.0
func VertexAttribPointer ¶
Types ¶
type Any ¶ added in v0.6.0
Any represents an undefined return type. In the specification this is indicated with the `any` keyword.
func GetParameter ¶ added in v0.5.0
func GetProgramParameter ¶
func GetSamplerParameter ¶ added in v0.6.0
func GetShaderParameter ¶
func GetSyncParameter ¶ added in v0.3.0
func (Any) GLboolean ¶ added in v0.6.0
GLboolean returns the contents of this Any as a GLboolean type.
type Buffer ¶
Buffer represents the WebGLBuffer type from the specification.
func CreateBuffer ¶
func CreateBuffer() Buffer
type ContextOption ¶
ContextOption represents a configuration option for the WebGL2 context.
func WithOptionAlpha ¶
func WithOptionAlpha(alpha bool) ContextOption
WithOptionAlpha configures the alpha context option.
func WithOptionAntialias ¶
func WithOptionAntialias(antialias bool) ContextOption
WithOptionAntialias configures the antialias context option.
func WithOptionDepth ¶
func WithOptionDepth(depth bool) ContextOption
WithOptionDepth configures the depth context option.
func WithOptionDesynchronized ¶
func WithOptionDesynchronized(desynchronized bool) ContextOption
WithOptionDesynchronized configures the alpha context option.
func WithOptionFailIfMajorPerformanceCaveat ¶
func WithOptionFailIfMajorPerformanceCaveat(fail bool) ContextOption
WithOptionFailIfMajorPerformanceCaveat configures the failIfMajorPerformanceCaveat context option.
func WithOptionPowerPreference ¶
func WithOptionPowerPreference(pref PowerPreference) ContextOption
WithOptionPowerPreference configures the powerPreference context option.
func WithOptionPremultipliedAlpha ¶
func WithOptionPremultipliedAlpha(premultiplied bool) ContextOption
WithOptionPremultipliedAlpha configures the premultipliedAlpha context option.
func WithOptionPreserveDrawingBuffer ¶
func WithOptionPreserveDrawingBuffer(preserve bool) ContextOption
WithOptionPreserveDrawingBuffer configures the preserveDrawingBuffer context option.
func WithOptionStencil ¶
func WithOptionStencil(stencil bool) ContextOption
WithOptionStencil configures the stencil context option.
func WithOptionXRCompatible ¶
func WithOptionXRCompatible(compatible bool) ContextOption
WithOptionXRCompatible configures the xrCompatible context option.
type DataTypes ¶ added in v0.2.0
type DataTypes interface { ~int8 | ~uint8 | ~int16 | ~uint16 | ~int32 | ~uint32 | ~float32 | ~float64 }
DataTypes represents allowed data slice types.
type Float32List ¶ added in v0.5.0
type Float32List = []float32
Float32List represents the Float32List type from the specification.
type Framebuffer ¶
Framebuffer represents the WebGLFramebuffer type from the specification.
func CreateFramebuffer ¶
func CreateFramebuffer() Framebuffer
func (Framebuffer) IsValid ¶
func (f Framebuffer) IsValid() bool
IsValid returns whether this Framebuffer is different from the zero Framebuffer or an unspecified Framebuffer.
type GLbitfield ¶ added in v0.5.0
type GLbitfield = uint32
GLbitfield represents the GLbitfield type from the specification.
type GLboolean ¶ added in v0.5.0
type GLboolean = bool
GLboolean represents the GLboolean type from the specification.
type GLbyte ¶ added in v0.5.0
type GLbyte = int8
GLbyte represents the GLbyte type from the specification.
type GLclampf ¶ added in v0.5.0
type GLclampf = float32
GLclampf represents the GLclampf type from the specification.
type GLenum ¶ added in v0.5.0
type GLenum = uint32
GLenum represents the GLenum type from the specification.
func CheckFramebufferStatus ¶
func ClientWaitSync ¶
func ClientWaitSync(sync Sync, flags GLbitfield, timeout GLuint64) GLenum
type GLfloat ¶ added in v0.5.0
type GLfloat = float32
GLfloat represents the GLfloat type from the specification.
type GLint ¶ added in v0.5.0
type GLint = int32
GLint represents the GLint type from the specification.
func GetAttribLocation ¶
type GLint64 ¶ added in v0.5.0
type GLint64 = int64
GLint64 represents the GLint64 type from the specification.
type GLintptr ¶ added in v0.5.0
type GLintptr = int64
GLintptr represents the GLintptr type from the specification.
type GLshort ¶ added in v0.5.0
type GLshort = uint16
GLshort represents the GLshort type from the specification.
type GLsizei ¶ added in v0.5.0
type GLsizei = int32
GLsizei represents the GLsizei type from the specification.
type GLsizeiptr ¶ added in v0.5.0
type GLsizeiptr = int64
GLsizeiptr represents the GLsizeiptr type from the specification.
type GLubyte ¶ added in v0.5.0
type GLubyte = uint8
GLubyte represents the GLubyte type from the specification.
type GLuint ¶ added in v0.5.0
type GLuint = uint32
GLuint represents the GLuint type from the specification.
func GetUniformBlockIndex ¶ added in v0.5.0
type GLuint64 ¶ added in v0.5.0
type GLuint64 = uint64
GLuint64 represents the GLuint64 type from the specification.
type GLushort ¶ added in v0.5.0
type GLushort = uint16
GLushort represents the GLushort type from the specification.
type Int32List ¶ added in v0.5.0
type Int32List = []int32
Int32List represents the Int32List type from the specification.
type PowerPreference ¶
type PowerPreference string
PowerPreference represents a context power preference.
const ( PowerPreferenceDefault PowerPreference = "default" PowerPreferenceHighPerformance PowerPreference = "high-performance" PowerPreferenceLowPower PowerPreference = "low-power" )
type Program ¶
Program represents the WebGLProgram type from the specification.
func CreateProgram ¶
func CreateProgram() Program
type Sampler ¶ added in v0.6.0
Sampler represents the WebGLSampler type from the specification.
func CreateSampler ¶ added in v0.6.0
func CreateSampler() Sampler
type Sync ¶
Sync represents the WebGLSync type from the specification.
func FenceSync ¶
func FenceSync(condition GLenum, flags GLbitfield) Sync
type Texture ¶
Texture represents the WebGLTexture type from the specification.
func CreateTexture ¶
func CreateTexture() Texture
type Uint32List ¶ added in v0.5.0
type Uint32List = []uint32
Uint32List represents the Uint32List type from the specification.
type UniformLocation ¶
UniformLocation represents the WebGLUniformLocation type from the specification.
func GetUniformLocation ¶
func GetUniformLocation(program Program, name string) UniformLocation
func (UniformLocation) IsValid ¶
func (l UniformLocation) IsValid() bool
IsValid returns whether this UniformLocation is different from the nil UniformLocation or an unspecified UniformLocation.
type VertexArray ¶
VertexArray represents the WebGLVertexArrayObject type from the specification.
func CreateVertexArray ¶
func CreateVertexArray() VertexArray
func (VertexArray) IsValid ¶
func (a VertexArray) IsValid() bool
IsValid returns whether this VertexArray is different from the zero VertexArray or an unspecified VertexArray.