pub enum WebGlVersion {
One,
Two,
}
#[derive(Copy, Clone, Eq, PartialEq)]
#[repr(u32)]
pub enum DataType {
Byte = 0x1400,
UnsignedByte = 0x1401,
Short = 0x1402,
UnsignedShort = 0x1403,
Int = 0x1404,
UnsignedInt = 0x1405,
Float = 0x1406,
}
#[derive(Copy, Clone, Eq, PartialEq)]
#[repr(u32)]
pub enum BufferTarget {
ArrayBuffer = 0x8892,
ElementArrayBuffer = 0x8893,
UniformBuffer = 0x8A11,
}
#[derive(Copy, Clone, Eq, PartialEq)]
#[repr(u32)]
pub enum BufferUsage {
StreamDraw = 0x88E0,
StaticDraw = 0x88E4,
DynamicDraw = 0x88E8,
}
#[derive(Copy, Clone, Eq, PartialEq)]
#[repr(u32)]
pub enum BeginMode {
Points = 0x0000,
Lines = 0x0001,
LineLoop = 0x0002,
LineStrip = 0x0003,
Triangles = 0x0004,
TriangleStrip = 0x0005,
TriangleFan = 0x0006,
}
#[derive(Copy, Clone, Eq, PartialEq)]
#[repr(u32)]
pub enum TextureParameterName {
MagFilter = 0x2800,
MinFilter = 0x2801,
WrapS = 0x2802,
WrapT = 0x2803,
WrapR = 0x8072,
MinLod = 0x813A,
MaxLod = 0x813B,
BaseLevel = 0x813C,
MaxLevel = 0x813D,
CompareMode = 0x884C,
CompareFunc = 0x884D,
}
#[derive(Copy, Clone, Eq, PartialEq)]
#[repr(u32)]
pub enum TextureWrapTarget {
S = 0x2802,
T = 0x2803,
R = 0x8072,
}
#[derive(Copy, Clone, Eq, PartialEq)]
#[repr(u32)]
pub enum TextureWrapMode {
Repeat = 0x2901,
ClampToEdge = 0x812F,
MirroredRepeat = 0x8370,
}
#[derive(Copy, Clone, Eq, PartialEq)]
#[repr(u32)]
pub enum TextureMagFilter {
Nearest = 0x2600,
Linear = 0x2601,
}
#[derive(Copy, Clone, Eq, PartialEq)]
#[repr(u32)]
pub enum TextureMinFilter {
Nearest = 0x2600,
Linear = 0x2601,
NearestMipMapNearest = 0x2700,
LinearMipMapNearest = 0x2701,
NearestMipMapLinear = 0x2702,
LinearMipMapLinear = 0x2703,
}
#[derive(Copy, Clone, Eq, PartialEq)]
#[repr(u32)]
pub enum TextureTarget {
Texture2d = 0x0DE1,
Texture3d = 0x806F,
Array2d = 0x8C1A,
CubeMap = 0x8513,
}
#[derive(Copy, Clone, Eq, PartialEq)]
#[repr(u32)]
pub enum TextureCubeFace {
PositiveX = 0x8515,
NegativeX = 0x8516,
PositiveY = 0x8517,
NegativeY = 0x8518,
PositiveZ = 0x8519,
NegativeZ = 0x851A,
}
#[derive(Copy, Clone, Eq, PartialEq)]
#[repr(u32)]
pub enum TextureQuery {
Array2d = 0x8C1D,
Texture = 0x1702,
Binding3d = 0x806A,
BindingCubeMap = 0x8514,
MaxCubeTextureSize = 0x851C,
}
#[derive(Copy, Clone, Eq, PartialEq)]
#[repr(u32)]
pub enum TextureUnit {
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,
ActiveTexture = 0x84E0,
}
#[derive(Copy, Clone, Eq, PartialEq)]
#[repr(u32)]
pub enum PixelFormat {
Alpha = 0x1906,
Rgb = 0x1907,
Rgba = 0x1908,
Luminance = 0x1909,
LuminanceAlpha = 0x190A,
DepthComponent = 0x1902,
DepthStencil = 0x84F9,
SrgbAlphaExt = 0x8C42,
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,
Srgb = 0x8C40,
Srgb8 = 0x8C41,
Srgb8Alpha8 = 0x8C43,
Rgba32f = 0x8814,
Rgb32f = 0x8815,
Rgba16f = 0x881A,
Rgb16f = 0x881B,
}
#[derive(Copy, Clone, Eq, PartialEq)]
#[repr(u32)]
pub enum ClearBufferMask {
DepthBufferBit = 0x00000100,
StencilBufferBit = 0x00000400,
ColorBufferBit = 0x00004000,
}
#[derive(Copy, Clone, Eq, PartialEq)]
#[repr(u32)]
pub enum GlToggle {
Blend = 0x0BE2,
CullFace = 0x0B44,
DepthTest = 0x0B71,
Dither = 0x0BD0,
PolygonOffsetFill = 0x8037,
SampleAlphaToCoverage = 0x809E,
SampleCoverage = 0x80A0,
ScissorTest = 0x0C11,
StencilTest = 0x0B90,
RasterizerDiscard = 0x8C89,
}
#[derive(Copy, Clone, Eq, PartialEq)]
#[repr(u32)]
pub enum GlQuery {
FragmentShader = 0x8B30,
VertexShader = 0x8B31,
MaxVertexAttribs = 0x8869,
MaxVertexUniformVectors = 0x8DFB,
MaxVaryingVectors = 0x8DFC,
MaxCombinedTextureImageUnits = 0x8B4D,
MaxVertexTextureImageUnits = 0x8B4C,
MaxTextureImageUnits = 0x8872,
MaxFragmentUniformVectors = 0x8DFD,
ShadingLanguageVersion = 0x8B8C,
CurrentProgram = 0x8B8D,
BlendColor = 0x8005,
}
#[derive(Copy, Clone, Eq, PartialEq)]
#[repr(u32)]
pub enum CmpFunction {
Never = 0x0200,
Less = 0x0201,
Equal = 0x0202,
Lequal = 0x0203,
Greater = 0x0204,
NotEqual = 0x0205,
Gequal = 0x0206,
Always = 0x0207,
}
#[derive(Copy, Clone, Eq, PartialEq)]
#[repr(u32)]
pub enum BlendEquation {
Add = 0x8006,
Subtract = 0x800A,
ReverseSubtract = 0x800B,
Min = 0x8007,
Max = 0x8008,
}
#[derive(Copy, Clone, Eq, PartialEq)]
#[repr(u32)]
pub enum BlendFactor {
Zero = 0,
One = 1,
SrcColor = 0x0300,
OneMinusSrcColor = 0x0301,
DstColor = 0x0306,
OneMinusDstColor = 0x0307,
SrcAlpha = 0x0302,
OneMinusSrcAlpha = 0x0303,
DstAlpha = 0x0304,
OneMinusDstAlpha = 0x0305,
ConstantColor = 0x8001,
OneMinusConstantColor = 0x8002,
ConstantAlpha = 0x8003,
OneMinusConstantAlpha = 0x8004,
}
#[derive(Copy, Clone, Eq, PartialEq)]
#[repr(u32)]
pub enum UniformBlockQuery {
BindingPoint = 0x8A3F,
DataSize = 0x8A40,
ActiveUniforms = 0x8A42,
ActiveUniformIndices = 0x8A43,
ReferencedByVertexShader = 0x8A44,
ReferencedByFragmentShader = 0x8A46,
}
#[derive(Copy, Clone, Eq, PartialEq)]
#[repr(u32)]
pub enum UniformBlockActiveQuery {
Type = 0x8A37,
Size = 0x8A38,
BlockIndex = 0x8A3A,
Offset = 0x8A3B,
ArrayStride = 0x8A3C,
MatrixStride = 0x8A3D,
IsRowMajor = 0x8A3E,
}
#[derive(Copy, Clone, Eq, PartialEq)]
#[repr(u32)]
pub enum WebGlSpecific {
UnpackFlipY = 0x9240,
UnpackPremultiplyAlpha = 0x9241,
ContextLost = 0x9242,
UnpackColorspaceConversion = 0x9243,
BrowserDefault = 0x9244,
}
#[derive(Copy, Clone, Eq, PartialEq)]
#[repr(u32)]
pub enum UniformDataType {
FloatVec2 = 0x8B50,
FloatVec3 = 0x8B51,
FloatVec4 = 0x8B52,
IntVec2 = 0x8B53,
IntVec3 = 0x8B54,
IntVec4 = 0x8B55,
Bool = 0x8B56,
BoolVec2 = 0x8B57,
BoolVec3 = 0x8B58,
BoolVec4 = 0x8B59,
FloatMat2 = 0x8B5A,
FloatMat3 = 0x8B5B,
FloatMat4 = 0x8B5C,
Sampler2d = 0x8B5E,
SamplerCube = 0x8B60,
Sampler3d = 0x8B5F,
Sampler2dShadow = 0x8B62,
SamplerCubeShadow = 0x8DC5,
Sampler2dArray = 0x8DC1,
Sampler2dArrayShadow = 0x8DC4,
IntSampler2d = 0x8DCA,
IntSampler3d = 0x8DCB,
IntSamplerCube = 0x8DCC,
IntSampler2dArray = 0x8DCF,
UnsignedIntSampler2d = 0x8DD2,
UnsignedIntSampler3d = 0x8DD3,
UnsignedIntSamplerCube = 0x8DD4,
UnsignedIntSampler2dArray = 0x8DD7,
UnsignedInt_24_8 = 0x84FA,
}
#[derive(Copy, Clone, Eq, PartialEq)]
#[repr(u32)]
pub enum ShaderQuery {
DeleteStatus = 0x8B80,
CompileStatus = 0x8B81,
ShaderType = 0x8B4F,
}
#[derive(Copy, Clone, Eq, PartialEq)]
#[repr(u32)]
pub enum ShaderType {
Fragment = 0x8B30,
Vertex = 0x8B31,
}
#[derive(Copy, Clone, Eq, PartialEq)]
#[repr(u32)]
pub enum ProgramQuery {
DeleteStatus = 0x8B80,
LinkStatus = 0x8B82,
ValidateStatus = 0x8B83,
AttachedShaders = 0x8B85,
ActiveUniforms = 0x8B86,
ActiveAttributes = 0x8B89,
TransformFeedbackBufferMode = 0x8C7F,
TransformFeedbackVaryings = 0x8C83,
ActiveUniformBlocks = 0x8A36,
}