blob: 892008063a666f05652ec853c41ec03a9331d0fa [file] [log] [blame]
// Copyright (C) 2015 The Android Open Source Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
// GLES 1 constants can be found in:
// http://www.khronos.org/registry/gles/api/GLES/gl.h
// GLES 2 constants can be found in:
// http://www.khronos.org/registry/gles/api/GLES2/gl2.h
enum DrawMode {
GL_LINE_LOOP = 0x0002,
GL_LINE_STRIP = 0x0003,
GL_LINES = 0x0001,
GL_POINTS = 0x0000,
GL_TRIANGLE_FAN = 0x0006,
GL_TRIANGLE_STRIP = 0x0005,
GL_TRIANGLES = 0x0004,
}
enum IndicesType {
GL_UNSIGNED_BYTE = 0x1401,
GL_UNSIGNED_SHORT = 0x1403,
GL_UNSIGNED_INT = 0x1405,
}
enum TextureTarget_GLES_1_1 {
GL_TEXTURE_2D = 0x0DE1,
}
enum TextureTarget_GLES_2_0 {
GL_TEXTURE_CUBE_MAP = 0x8513,
}
enum TextureTarget_OES_EGL_image_external {
GL_TEXTURE_EXTERNAL_OES = 0x8D65,
}
enum TextureTarget
: TextureTarget_GLES_1_1
, TextureTarget_GLES_2_0
, TextureTarget_OES_EGL_image_external {}
enum CubeMapImageTarget {
GL_TEXTURE_CUBE_MAP_NEGATIVE_X = 0x8516,
GL_TEXTURE_CUBE_MAP_NEGATIVE_Y = 0x8518,
GL_TEXTURE_CUBE_MAP_NEGATIVE_Z = 0x851A,
GL_TEXTURE_CUBE_MAP_POSITIVE_X = 0x8515,
GL_TEXTURE_CUBE_MAP_POSITIVE_Y = 0x8517,
GL_TEXTURE_CUBE_MAP_POSITIVE_Z = 0x8519,
}
enum Texture2DImageTarget {
GL_TEXTURE_2D = 0x0DE1,
}
enum TextureImageTarget : CubeMapImageTarget, Texture2DImageTarget {}
enum BaseTexelFormat {
GL_ALPHA = 0x1906,
GL_RGB = 0x1907,
GL_RGBA = 0x1908,
}
enum TexelFormat_GLES_1_1 : BaseTexelFormat {
GL_LUMINANCE = 0x1909,
GL_LUMINANCE_ALPHA = 0x190A,
}
enum TexelFormat_GLES_3_0 {
GL_RED = 0x1903,
GL_RED_INTEGER = 0x8D94,
GL_RG = 0x8227,
GL_RG_INTEGER = 0x8228,
GL_RGB_INTEGER = 0x8D98,
GL_RGBA_INTEGER = 0x8D99,
GL_DEPTH_COMPONENT = 0x1902,
GL_DEPTH_COMPONENT16 = 0x81A5,
GL_DEPTH_STENCIL = 0x84F9,
GL_DEPTH24_STENCIL8 = 0x88F0,
}
enum TexelFormat : TexelFormat_GLES_1_1, TexelFormat_GLES_3_0 {}
enum RenderbufferFormat {
GL_RGBA4 = 0x8056,
GL_RGB5_A1 = 0x8057,
GL_RGB565 = 0x8D62,
GL_RGBA8 = 0x8058,
GL_DEPTH_COMPONENT16 = 0x81A5,
GL_STENCIL_INDEX8 = 0x8D48,
}
// http://www.khronos.org/registry/specs/ARB/half_float_vertex.txt
enum Type_ARB_half_float_vertex {
GL_ARB_half_float_vertex = 0x140B,
}
// http://www.khronos.org/registry/gles/extensions/OES/OES_vertex_half_float.txt
enum Type_OES_vertex_half_float {
GL_HALF_FLOAT_OES = 0x8D61,
}
// http://www.khronos.org/registry/gles/extensions/OES/OES_compressed_ETC1_RGB8_texture.txt
enum CompressedTexelFormat_OES_compressed_ETC1_RGB8_texture {
GL_ETC1_RGB8_OES = 0x8D64,
}
enum CompressedTexelFormat_AMD_compressed_ATC_texture {
GL_ATC_RGB_AMD = 0x8C92,
GL_ATC_RGBA_EXPLICIT_ALPHA_AMD = 0x8C93,
GL_ATC_RGBA_INTERPOLATED_ALPHA_AMD = 0x87EE,
}
enum CompressedTexelFormat
: CompressedTexelFormat_OES_compressed_ETC1_RGB8_texture
, CompressedTexelFormat_AMD_compressed_ATC_texture {}
enum ImageTexelFormat : TexelFormat, CompressedTexelFormat {}
enum TexelType {
GL_UNSIGNED_BYTE = 0x1401,
GL_UNSIGNED_SHORT = 0x1403,
GL_UNSIGNED_INT = 0x1405,
GL_FLOAT = 0x1406,
GL_UNSIGNED_SHORT_4_4_4_4 = 0x8033,
GL_UNSIGNED_SHORT_5_5_5_1 = 0x8034,
GL_UNSIGNED_SHORT_5_6_5 = 0x8363,
GL_UNSIGNED_INT_24_8 = 0x84FA,
}
enum FramebufferAttachment {
GL_COLOR_ATTACHMENT0 = 0x8CE0,
GL_DEPTH_ATTACHMENT = 0x8D00,
GL_STENCIL_ATTACHMENT = 0x8D20,
}
enum FramebufferAttachmentType {
GL_NONE = 0x0000,
GL_RENDERBUFFER = 0x8D41,
GL_TEXTURE = 0x1702,
}
enum FramebufferTarget_GLES_2_0 {
GL_FRAMEBUFFER = 0x8D40,
}
enum FramebufferTarget_GLES_3_1 {
GL_READ_FRAMEBUFFER = 0x8CA8,
GL_DRAW_FRAMEBUFFER = 0x8CA9,
}
enum FramebufferTarget : FramebufferTarget_GLES_2_0, FramebufferTarget_GLES_3_1 {}
enum FramebufferAttachmentParameter {
GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE = 0x8CD0,
GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME = 0x8CD1,
GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL = 0x8CD2,
GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE = 0x8CD3,
}
enum FramebufferStatus {
GL_FRAMEBUFFER_COMPLETE = 0x8CD5,
GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT = 0x8CD6,
GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT = 0x8CD7,
GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS = 0x8CD9,
GL_FRAMEBUFFER_UNSUPPORTED = 0x8CDD,
}
enum RenderbufferTarget {
GL_RENDERBUFFER = 0x8D41,
}
enum RenderbufferParameter {
GL_RENDERBUFFER_WIDTH = 0x8D42,
GL_RENDERBUFFER_HEIGHT = 0x8D43,
GL_RENDERBUFFER_INTERNAL_FORMAT = 0x8D44,
GL_RENDERBUFFER_RED_SIZE = 0x8D50,
GL_RENDERBUFFER_GREEN_SIZE = 0x8D51,
GL_RENDERBUFFER_BLUE_SIZE = 0x8D52,
GL_RENDERBUFFER_ALPHA_SIZE = 0x8D53,
GL_RENDERBUFFER_DEPTH_SIZE = 0x8D54,
GL_RENDERBUFFER_STENCIL_SIZE = 0x8D55,
}
enum BufferParameter {
GL_BUFFER_SIZE = 0x8764,
GL_BUFFER_USAGE = 0x8765,
}
enum TextureUnit {
GL_TEXTURE0 = 0x84C0,
GL_TEXTURE1 = 0x84C1,
GL_TEXTURE2 = 0x84C2,
GL_TEXTURE3 = 0x84C3,
GL_TEXTURE4 = 0x84C4,
GL_TEXTURE5 = 0x84C5,
GL_TEXTURE6 = 0x84C6,
GL_TEXTURE7 = 0x84C7,
GL_TEXTURE8 = 0x84C8,
GL_TEXTURE9 = 0x84C9,
GL_TEXTURE10 = 0x84CA,
GL_TEXTURE11 = 0x84CB,
GL_TEXTURE12 = 0x84CC,
GL_TEXTURE13 = 0x84CD,
GL_TEXTURE14 = 0x84CE,
GL_TEXTURE15 = 0x84CF,
GL_TEXTURE16 = 0x84D0,
GL_TEXTURE17 = 0x84D1,
GL_TEXTURE18 = 0x84D2,
GL_TEXTURE19 = 0x84D3,
GL_TEXTURE20 = 0x84D4,
GL_TEXTURE21 = 0x84D5,
GL_TEXTURE22 = 0x84D6,
GL_TEXTURE23 = 0x84D7,
GL_TEXTURE24 = 0x84D8,
GL_TEXTURE25 = 0x84D9,
GL_TEXTURE26 = 0x84DA,
GL_TEXTURE27 = 0x84DB,
GL_TEXTURE28 = 0x84DC,
GL_TEXTURE29 = 0x84DD,
GL_TEXTURE30 = 0x84DE,
GL_TEXTURE31 = 0x84DF,
}
enum BufferUsage {
GL_DYNAMIC_DRAW = 0x88E8,
GL_STATIC_DRAW = 0x88E4,
GL_STREAM_DRAW = 0x88E0,
}
enum ShaderType {
GL_VERTEX_SHADER = 0x8B31,
GL_FRAGMENT_SHADER = 0x8B30,
}
enum StateVariable_GLES_2_0 {
GL_ACTIVE_TEXTURE = 0x84E0,
GL_ALIASED_LINE_WIDTH_RANGE = 0x846E,
GL_ALIASED_POINT_SIZE_RANGE = 0x846D,
GL_ALPHA_BITS = 0x0D55,
GL_ARRAY_BUFFER_BINDING = 0x8894,
GL_BLEND = 0x0BE2,
GL_BLEND_COLOR = 0x8005,
GL_BLEND_DST_ALPHA = 0x80CA,
GL_BLEND_DST_RGB = 0x80C8,
GL_BLEND_EQUATION_ALPHA = 0x883D,
GL_BLEND_EQUATION_RGB = 0x8009,
GL_BLEND_SRC_ALPHA = 0x80CB,
GL_BLEND_SRC_RGB = 0x80C9,
GL_BLUE_BITS = 0x0D54,
GL_COLOR_CLEAR_VALUE = 0x0C22,
GL_COLOR_WRITEMASK = 0x0C23,
GL_COMPRESSED_TEXTURE_FORMATS = 0x86A3,
GL_CULL_FACE = 0x0B44,
GL_CULL_FACE_MODE = 0x0B45,
GL_CURRENT_PROGRAM = 0x8B8D,
GL_DEPTH_BITS = 0x0D56,
GL_DEPTH_CLEAR_VALUE = 0x0B73,
GL_DEPTH_FUNC = 0x0B74,
GL_DEPTH_RANGE = 0x0B70,
GL_DEPTH_TEST = 0x0B71,
GL_DEPTH_WRITEMASK = 0x0B72,
GL_DITHER = 0x0BD0,
GL_ELEMENT_ARRAY_BUFFER_BINDING = 0x8895,
GL_FRAMEBUFFER_BINDING = 0x8CA6,
GL_FRONT_FACE = 0x0B46,
GL_GENERATE_MIPMAP_HINT = 0x8192,
GL_GREEN_BITS = 0x0D53,
GL_IMPLEMENTATION_COLOR_READ_FORMAT = 0x8B9B,
GL_IMPLEMENTATION_COLOR_READ_TYPE = 0x8B9A,
GL_LINE_WIDTH = 0x0B21,
GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS = 0x8B4D,
GL_MAX_CUBE_MAP_TEXTURE_SIZE = 0x851C,
GL_MAX_FRAGMENT_UNIFORM_VECTORS = 0x8DFD,
GL_MAX_RENDERBUFFER_SIZE = 0x84E8,
GL_MAX_TEXTURE_IMAGE_UNITS = 0x8872,
GL_MAX_TEXTURE_SIZE = 0x0D33,
GL_MAX_VARYING_VECTORS = 0x8DFC,
GL_MAX_VERTEX_ATTRIBS = 0x8869,
GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS = 0x8B4C,
GL_MAX_VERTEX_UNIFORM_VECTORS = 0x8DFB,
GL_MAX_VIEWPORT_DIMS = 0x0D3A,
GL_NUM_COMPRESSED_TEXTURE_FORMATS = 0x86A2,
GL_NUM_SHADER_BINARY_FORMATS = 0x8DF9,
GL_PACK_ALIGNMENT = 0x0D05,
GL_POLYGON_OFFSET_FACTOR = 0x8038,
GL_POLYGON_OFFSET_FILL = 0x8037,
GL_POLYGON_OFFSET_UNITS = 0x2A00,
GL_RED_BITS = 0x0D52,
GL_RENDERBUFFER_BINDING = 0x8CA7,
GL_SAMPLE_ALPHA_TO_COVERAGE = 0x809E,
GL_SAMPLE_BUFFERS = 0x80A8,
GL_SAMPLE_COVERAGE = 0x80A0,
GL_SAMPLE_COVERAGE_INVERT = 0x80AB,
GL_SAMPLE_COVERAGE_VALUE = 0x80AA,
GL_SAMPLES = 0x80A9,
GL_SCISSOR_BOX = 0x0C10,
GL_SCISSOR_TEST = 0x0C11,
GL_SHADER_BINARY_FORMATS = 0x8DF8,
GL_SHADER_COMPILER = 0x8DFA,
GL_STENCIL_BACK_FAIL = 0x8801,
GL_STENCIL_BACK_FUNC = 0x8800,
GL_STENCIL_BACK_PASS_DEPTH_FAIL = 0x8802,
GL_STENCIL_BACK_PASS_DEPTH_PASS = 0x8803,
GL_STENCIL_BACK_REF = 0x8CA3,
GL_STENCIL_BACK_VALUE_MASK = 0x8CA4,
GL_STENCIL_BACK_WRITEMASK = 0x8CA5,
GL_STENCIL_BITS = 0x0D57,
GL_STENCIL_CLEAR_VALUE = 0x0B91,
GL_STENCIL_FAIL = 0x0B94,
GL_STENCIL_FUNC = 0x0B92,
GL_STENCIL_PASS_DEPTH_FAIL = 0x0B95,
GL_STENCIL_PASS_DEPTH_PASS = 0x0B96,
GL_STENCIL_REF = 0x0B97,
GL_STENCIL_TEST = 0x0B90,
GL_STENCIL_VALUE_MASK = 0x0B93,
GL_STENCIL_WRITEMASK = 0x0B98,
GL_SUBPIXEL_BITS = 0x0D50,
GL_TEXTURE_BINDING_2D = 0x8069,
GL_TEXTURE_BINDING_CUBE_MAP = 0x8514,
GL_UNPACK_ALIGNMENT = 0x0CF5,
GL_VIEWPORT = 0x0BA2,
}
enum StateVariable_GLES_3_1 {
// GL_DRAW_FRAMEBUFFER_BINDING = 0x8CA6, // Same as GL_FRAMEBUFFER_BINDING
GL_READ_FRAMEBUFFER_BINDING = 0x8CAA,
}
enum StateVariable_EXT_texture_filter_anisotropic {
GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT = 0x84FF,
}
enum StateVariable_EXT_disjoint_timer_query {
GL_GPU_DISJOINT_EXT = 0x8FBB,
}
enum StateVariable
: StateVariable_GLES_2_0
, StateVariable_GLES_3_1
, StateVariable_EXT_texture_filter_anisotropic
, StateVariable_EXT_disjoint_timer_query {}
enum FaceMode {
GL_FRONT = 0x0404,
GL_BACK = 0x0405,
GL_FRONT_AND_BACK = 0x0408,
}
enum ArrayType_GLES_1_1 {
GL_VERTEX_ARRAY = 0x8074,
GL_NORMAL_ARRAY = 0x8075,
GL_COLOR_ARRAY = 0x8076,
GL_TEXTURE_COORD_ARRAY = 0x8078,
}
enum ArrayType_OES_point_size_array {
GL_POINT_SIZE_ARRAY_OES = 0x8B9C,
}
enum ArrayType : ArrayType_GLES_1_1, ArrayType_OES_point_size_array {}
enum Capability : ArrayType {
GL_BLEND = 0x0BE2,
GL_CULL_FACE = 0x0B44,
GL_DEPTH_TEST = 0x0B71,
GL_DITHER = 0x0BD0,
GL_POLYGON_OFFSET_FILL = 0x8037,
GL_SAMPLE_ALPHA_TO_COVERAGE = 0x809E,
GL_SAMPLE_COVERAGE = 0x80A0,
GL_SCISSOR_TEST = 0x0C11,
GL_STENCIL_TEST = 0x0B90,
}
enum StringConstant {
GL_EXTENSIONS = 0x1F03,
GL_RENDERER = 0x1F01,
GL_VENDOR = 0x1F00,
GL_VERSION = 0x1F02,
}
enum VertexAttribType : Type_OES_vertex_half_float
, Type_ARB_half_float_vertex {
GL_BYTE = 0x1400,
GL_FIXED = 0x140C,
GL_FLOAT = 0x1406,
GL_SHORT = 0x1402,
GL_UNSIGNED_BYTE = 0x1401,
GL_UNSIGNED_SHORT = 0x1403,
}
enum ShaderAttribType {
GL_FLOAT = 0x1406,
GL_FLOAT_VEC2 = 0x8B50,
GL_FLOAT_VEC3 = 0x8B51,
GL_FLOAT_VEC4 = 0x8B52,
GL_FLOAT_MAT2 = 0x8B5A,
GL_FLOAT_MAT3 = 0x8B5B,
GL_FLOAT_MAT4 = 0x8B5C,
}
enum ShaderUniformType {
GL_FLOAT = 0x1406,
GL_FLOAT_VEC2 = 0x8B50,
GL_FLOAT_VEC3 = 0x8B51,
GL_FLOAT_VEC4 = 0x8B52,
GL_INT = 0x1404,
GL_INT_VEC2 = 0x8B53,
GL_INT_VEC3 = 0x8B54,
GL_INT_VEC4 = 0x8B55,
GL_BOOL = 0x8B56,
GL_BOOL_VEC2 = 0x8B57,
GL_BOOL_VEC3 = 0x8B58,
GL_BOOL_VEC4 = 0x8B59,
GL_FLOAT_MAT2 = 0x8B5A,
GL_FLOAT_MAT3 = 0x8B5B,
GL_FLOAT_MAT4 = 0x8B5C,
GL_SAMPLER_2D = 0x8B5E,
GL_SAMPLER_CUBE = 0x8B60,
}
enum Error {
GL_NO_ERROR = 0x0,
GL_INVALID_ENUM = 0x0500,
GL_INVALID_VALUE = 0x0501,
GL_INVALID_OPERATION = 0x0502,
GL_INVALID_FRAMEBUFFER_OPERATION = 0x0506,
GL_OUT_OF_MEMORY = 0x0505,
}
enum HintTarget {
GL_GENERATE_MIPMAP_HINT = 0x8192,
}
enum HintMode {
GL_DONT_CARE = 0x1100,
GL_FASTEST = 0x1101,
GL_NICEST = 0x1102,
}
enum DiscardFramebufferAttachment {
GL_COLOR_EXT = 0x1800,
GL_DEPTH_EXT = 0x1801,
GL_STENCIL_EXT = 0x1802,
}
enum ProgramParameter {
GL_DELETE_STATUS = 0x8B80,
GL_LINK_STATUS = 0x8B82,
GL_VALIDATE_STATUS = 0x8B83,
GL_INFO_LOG_LENGTH = 0x8B84,
GL_ATTACHED_SHADERS = 0x8B85,
GL_ACTIVE_ATTRIBUTES = 0x8B89,
GL_ACTIVE_ATTRIBUTE_MAX_LENGTH = 0x8B8A,
GL_ACTIVE_UNIFORMS = 0x8B86,
GL_ACTIVE_UNIFORM_MAX_LENGTH = 0x8B87,
}
enum ShaderParameter {
GL_SHADER_TYPE = 0x8B4F,
GL_DELETE_STATUS = 0x8B80,
GL_COMPILE_STATUS = 0x8B81,
GL_INFO_LOG_LENGTH = 0x8B84,
GL_SHADER_SOURCE_LENGTH = 0x8B88,
}
enum PixelStoreParameter {
GL_PACK_ALIGNMENT = 0x0D05,
GL_UNPACK_ALIGNMENT = 0x0CF5,
}
enum TextureParameter_FilterMode {
GL_TEXTURE_MIN_FILTER = 0x2801,
GL_TEXTURE_MAG_FILTER = 0x2800,
}
enum TextureParameter_WrapMode {
GL_TEXTURE_WRAP_S = 0x2802,
GL_TEXTURE_WRAP_T = 0x2803,
}
enum TextureParameter_EXT_texture_filter_anisotropic {
GL_TEXTURE_MAX_ANISOTROPY_EXT = 0x84FE,
}
enum TextureParameter_SwizzleMode {
GL_TEXTURE_SWIZZLE_R = 0x8E42,
GL_TEXTURE_SWIZZLE_G = 0x8E43,
GL_TEXTURE_SWIZZLE_B = 0x8E44,
GL_TEXTURE_SWIZZLE_A = 0x8E45,
}
enum TextureParameter
: TextureParameter_FilterMode
, TextureParameter_WrapMode
, TextureParameter_SwizzleMode
, TextureParameter_EXT_texture_filter_anisotropic {}
enum TextureFilterMode {
GL_NEAREST = 0x2600,
GL_LINEAR = 0x2601,
GL_NEAREST_MIPMAP_NEAREST = 0x2700,
GL_LINEAR_MIPMAP_NEAREST = 0x2701,
GL_NEAREST_MIPMAP_LINEAR = 0x2702,
GL_LINEAR_MIPMAP_LINEAR = 0x2703,
}
enum TextureWrapMode {
GL_CLAMP_TO_EDGE = 0x812F,
GL_MIRRORED_REPEAT = 0x8370,
GL_REPEAT = 0x2901,
}
enum TexelComponent {
GL_RED = 0x1903,
GL_GREEN = 0x1904,
GL_BLUE = 0x1905,
GL_ALPHA = 0x1906,
}
enum BlendFactor {
GL_ZERO = 0x0000,
GL_ONE = 0x0001,
GL_SRC_COLOR = 0x0300,
GL_ONE_MINUS_SRC_COLOR = 0x0301,
GL_DST_COLOR = 0x0306,
GL_ONE_MINUS_DST_COLOR = 0x0307,
GL_SRC_ALPHA = 0x0302,
GL_ONE_MINUS_SRC_ALPHA = 0x0303,
GL_DST_ALPHA = 0x0304,
GL_ONE_MINUS_DST_ALPHA = 0x0305,
GL_CONSTANT_COLOR = 0x8001,
GL_ONE_MINUS_CONSTANT_COLOR = 0x8002,
GL_CONSTANT_ALPHA = 0x8003,
GL_ONE_MINUS_CONSTANT_ALPHA = 0x8004,
GL_SRC_ALPHA_SATURATE = 0x0308,
}
enum PrecisionType {
GL_LOW_FLOAT = 0x8DF0,
GL_MEDIUM_FLOAT = 0x8DF1,
GL_HIGH_FLOAT = 0x8DF2,
GL_LOW_INT = 0x8DF3,
GL_MEDIUM_INT = 0x8DF4,
GL_HIGH_INT = 0x8DF5,
}
enum TestFunction {
GL_NEVER = 0x0200,
GL_LESS = 0x0201,
GL_EQUAL = 0x0202,
GL_LEQUAL = 0x0203,
GL_GREATER = 0x0204,
GL_NOTEQUAL = 0x0205,
GL_GEQUAL = 0x0206,
GL_ALWAYS = 0x0207,
}
enum StencilAction {
GL_KEEP = 0x1E00,
GL_ZERO = 0x0000,
GL_REPLACE = 0x1E01,
GL_INCR = 0x1E02,
GL_INCR_WRAP = 0x8507,
GL_DECR = 0x1E03,
GL_DECR_WRAP = 0x8508,
GL_INVERT = 0x150A,
}
enum FaceOrientation {
GL_CW = 0x0900,
GL_CCW = 0x0901,
}
enum BlendEquation {
GL_FUNC_ADD = 0x8006,
GL_FUNC_SUBTRACT = 0x800A,
GL_FUNC_REVERSE_SUBTRACT = 0x800B,
}
// GLES 3
enum BufferTarget {
GL_ARRAY_BUFFER = 0x8892,
GL_COPY_READ_BUFFER = 0x8F36,
GL_COPY_WRITE_BUFFER = 0x8F37,
GL_ELEMENT_ARRAY_BUFFER = 0x8893,
GL_PIXEL_PACK_BUFFER = 0x88EB,
GL_PIXEL_UNPACK_BUFFER = 0x88EC,
GL_TRANSFORM_FEEDBACK_BUFFER = 0x8C8E,
GL_UNIFORM_BUFFER = 0x8A11,
}
enum ImageTargetTexture_OES_EGL_image {
GL_TEXTURE_2D = 0x0DE1,
}
enum ImageTargetTexture_OES_EGL_image_external {
GL_TEXTURE_EXTERNAL_OES = 0x8D65,
}
enum ImageTargetTexture
: ImageTargetTexture_OES_EGL_image
, ImageTargetTexture_OES_EGL_image_external {}
enum ImageTargetRenderbufferStorage {
GL_RENDERBUFFER_OES = 0x8D41,
}
enum ResetStatus {
GL_NO_ERROR = 0x0000,
GL_GUILTY_CONTEXT_RESET_EXT = 0x8253,
GL_INNOCENT_CONTEXT_RESET_EXT = 0x8254,
GL_UNKNOWN_CONTEXT_RESET_EXT = 0x8255,
}
enum TextureKind {
UNDEFINED = 0,
TEXTURE2D = 1,
CUBEMAP = 2,
}
enum QueryParameter_GLES_3 {
GL_CURRENT_QUERY = 0x8865,
}
enum QueryParameter_EXT_disjoint_timer_query {
GL_QUERY_COUNTER_BITS_EXT = 0x8864,
// GL_CURRENT_QUERY_EXT = 0x8865, // Same as GL_CURRENT_QUERY
}
enum QueryParameter
: QueryParameter_GLES_3
, QueryParameter_EXT_disjoint_timer_query {}
enum QueryObjectParameter_GLES_3 {
GL_QUERY_RESULT = 0x8866,
GL_QUERY_RESULT_AVAILABLE = 0x8867,
}
enum QueryObjectParameter_EXT_disjoint_timer_query {
// GL_QUERY_RESULT_EXT = 0x8866, // Same as GL_QUERY_RESULT
// GL_QUERY_RESULT_AVAILABLE_EXT = 0x8867, // Same as GL_QUERY_RESULT_AVAILABLE
}
enum QueryObjectParameter
: QueryObjectParameter_GLES_3
, QueryObjectParameter_EXT_disjoint_timer_query {}
enum QueryTarget_GLES_3 {
GL_ANY_SAMPLES_PASSED = 0x8C2F,
GL_ANY_SAMPLES_PASSED_CONSERVATIVE = 0x8D6A,
GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN = 0x8C88,
}
enum QueryTarget_EXT_disjoint_timer_query {
GL_TIME_ELAPSED_EXT = 0x88BF,
GL_TIMESTAMP_EXT = 0x8E28,
}
enum QueryTarget
: QueryTarget_GLES_3
, QueryTarget_EXT_disjoint_timer_query {}
/////////////////////////////////////////////////////////////////
// Bitfields
/////////////////////////////////////////////////////////////////
bitfield TilePreserveMaskQCOM {
GL_COLOR_BUFFER_BIT0_QCOM = 0x00000001,
GL_COLOR_BUFFER_BIT1_QCOM = 0x00000002,
GL_COLOR_BUFFER_BIT2_QCOM = 0x00000004,
GL_COLOR_BUFFER_BIT3_QCOM = 0x00000008,
GL_COLOR_BUFFER_BIT4_QCOM = 0x00000010,
GL_COLOR_BUFFER_BIT5_QCOM = 0x00000020,
GL_COLOR_BUFFER_BIT6_QCOM = 0x00000040,
GL_COLOR_BUFFER_BIT7_QCOM = 0x00000080,
GL_DEPTH_BUFFER_BIT0_QCOM = 0x00000100,
GL_DEPTH_BUFFER_BIT1_QCOM = 0x00000200,
GL_DEPTH_BUFFER_BIT2_QCOM = 0x00000400,
GL_DEPTH_BUFFER_BIT3_QCOM = 0x00000800,
GL_DEPTH_BUFFER_BIT4_QCOM = 0x00001000,
GL_DEPTH_BUFFER_BIT5_QCOM = 0x00002000,
GL_DEPTH_BUFFER_BIT6_QCOM = 0x00004000,
GL_DEPTH_BUFFER_BIT7_QCOM = 0x00008000,
GL_STENCIL_BUFFER_BIT0_QCOM = 0x00010000,
GL_STENCIL_BUFFER_BIT1_QCOM = 0x00020000,
GL_STENCIL_BUFFER_BIT2_QCOM = 0x00040000,
GL_STENCIL_BUFFER_BIT3_QCOM = 0x00080000,
GL_STENCIL_BUFFER_BIT4_QCOM = 0x00100000,
GL_STENCIL_BUFFER_BIT5_QCOM = 0x00200000,
GL_STENCIL_BUFFER_BIT6_QCOM = 0x00400000,
GL_STENCIL_BUFFER_BIT7_QCOM = 0x00800000,
GL_MULTISAMPLE_BUFFER_BIT0_QCOM = 0x01000000,
GL_MULTISAMPLE_BUFFER_BIT1_QCOM = 0x02000000,
GL_MULTISAMPLE_BUFFER_BIT2_QCOM = 0x04000000,
GL_MULTISAMPLE_BUFFER_BIT3_QCOM = 0x08000000,
GL_MULTISAMPLE_BUFFER_BIT4_QCOM = 0x10000000,
GL_MULTISAMPLE_BUFFER_BIT5_QCOM = 0x20000000,
GL_MULTISAMPLE_BUFFER_BIT6_QCOM = 0x40000000,
GL_MULTISAMPLE_BUFFER_BIT7_QCOM = 0x80000000,
}
bitfield ClearMask {
GL_COLOR_BUFFER_BIT = 0x00004000,
GL_DEPTH_BUFFER_BIT = 0x00000100,
GL_STENCIL_BUFFER_BIT = 0x00000400,
}
// GLES 3
bitfield MapBufferRangeAccess {
GL_MAP_READ_BIT = 0x0001,
GL_MAP_WRITE_BIT = 0x0002,
GL_MAP_INVALIDATE_RANGE_BIT = 0x0004,
GL_MAP_INVALIDATE_BUFFER_BIT = 0x0008,
GL_MAP_FLUSH_EXPLICIT_BIT = 0x0010,
GL_MAP_UNSYNCHRONIZED_BIT = 0x0020,
}