mirror of
https://github.com/RGBCube/serenity
synced 2025-05-14 06:34:57 +00:00

This implements support for `glBlendEquation` and `glBlendEquationSeparate`. These functions modify the calculation of the resulting color in blending mode.
1241 lines
35 KiB
JSON
1241 lines
35 KiB
JSON
{
|
|
"ActiveTexture": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "texture"}
|
|
],
|
|
"variants": {
|
|
"api_suffixes": ["", "ARB"]
|
|
}
|
|
},
|
|
"AlphaFunc": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "func"},
|
|
{"type": "GLclampf", "name": "ref"}
|
|
]
|
|
},
|
|
"ArrayElement": {
|
|
"arguments": [
|
|
{"type": "GLint", "name": "i"}
|
|
]
|
|
},
|
|
"AttachShader": {
|
|
"arguments": [
|
|
{"type": "GLuint", "name": "program"},
|
|
{"type": "GLuint", "name": "shader"}
|
|
]
|
|
},
|
|
"Begin": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "mode"}
|
|
]
|
|
},
|
|
"BindBuffer": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "target"},
|
|
{"type": "GLuint", "name": "buffer"}
|
|
]
|
|
},
|
|
"BindTexture": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "target"},
|
|
{"type": "GLuint", "name": "texture"}
|
|
]
|
|
},
|
|
"Bitmap": {
|
|
"arguments": [
|
|
{"type": "GLsizei", "name": ["width", "height"]},
|
|
{"type": "GLfloat", "name": ["xorig", "yorig", "xmove", "ymove"]},
|
|
{"type": "GLubyte const*", "name": "bitmap"}
|
|
]
|
|
},
|
|
"BlendEquation": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "mode"},
|
|
{"expression": "mode"}
|
|
],
|
|
"implementation": "blend_equation_separate"
|
|
},
|
|
"BlendEquationSeparate": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": ["modeRGB", "modeAlpha"]}
|
|
]
|
|
},
|
|
"BlendFunc": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": ["sfactor", "dfactor"]}
|
|
]
|
|
},
|
|
"BufferData": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "target"},
|
|
{"type": "GLsizeiptr", "name": "size"},
|
|
{"type": "void const*", "name": "data"},
|
|
{"type": "GLenum", "name": "usage"}
|
|
]
|
|
},
|
|
"BufferSubData": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "target"},
|
|
{"type": "GLintptr", "name": "offset"},
|
|
{"type": "GLsizeiptr", "name": "size"},
|
|
{"type": "void const*", "name": "data"}
|
|
]
|
|
},
|
|
"CallList": {
|
|
"arguments": [
|
|
{"type": "GLuint", "name": "list"}
|
|
]
|
|
},
|
|
"CallLists": {
|
|
"arguments": [
|
|
{"type": "GLsizei", "name": "n"},
|
|
{"type": "GLenum", "name": "type"},
|
|
{"type": "void const*", "name": "lists"}
|
|
]
|
|
},
|
|
"Clear": {
|
|
"arguments": [
|
|
{"type": "GLbitfield", "name": "mask"}
|
|
]
|
|
},
|
|
"ClearColor": {
|
|
"arguments": [
|
|
{"type": "GLclampf", "name": ["red", "green", "blue", "alpha"]}
|
|
]
|
|
},
|
|
"ClearDepth": {
|
|
"arguments": [
|
|
{"type": "GLdouble", "name": "depth", "cast_to": "GLfloat"}
|
|
]
|
|
},
|
|
"ClearDepthf": {
|
|
"arguments": [
|
|
{"type": "GLfloat", "name": "depth"}
|
|
],
|
|
"implementation": "clear_depth"
|
|
},
|
|
"ClearStencil": {
|
|
"arguments": [
|
|
{"type": "GLint", "name": "s"}
|
|
]
|
|
},
|
|
"ClientActiveTexture": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "target"}
|
|
],
|
|
"variants": {
|
|
"api_suffixes": ["", "ARB"]
|
|
}
|
|
},
|
|
"ClipPlane": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "plane"},
|
|
{"type": "GLdouble const*", "name": "equation"}
|
|
]
|
|
},
|
|
"Color": {
|
|
"arguments": [
|
|
{"name": ["red", "green", "blue", "alpha"], "cast_to": "GLfloat"}
|
|
],
|
|
"variants": {
|
|
"argument_counts": [3, 4],
|
|
"argument_defaults": ["0.f", "0.f", "0.f", "1.f"],
|
|
"convert_range": true,
|
|
"pointer_argument": "v",
|
|
"types": {
|
|
"b": {},
|
|
"bv": {},
|
|
"d": {},
|
|
"dv": {},
|
|
"f": {},
|
|
"fv": {},
|
|
"i": {},
|
|
"iv": {},
|
|
"s": {},
|
|
"sv": {},
|
|
"ub": {},
|
|
"ubv": {},
|
|
"ui": {},
|
|
"uiv": {},
|
|
"us": {},
|
|
"usv": {}
|
|
}
|
|
}
|
|
},
|
|
"ColorMask": {
|
|
"arguments": [
|
|
{"type": "GLboolean", "name": ["red", "green", "blue", "alpha"]}
|
|
]
|
|
},
|
|
"ColorMaterial": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "face"},
|
|
{"type": "GLenum", "name": "mode"}
|
|
]
|
|
},
|
|
"ColorPointer": {
|
|
"arguments": [
|
|
{"type": "GLint", "name": "size"},
|
|
{"type": "GLenum", "name": "type"},
|
|
{"type": "GLsizei", "name": "stride"},
|
|
{"type": "void const*", "name": "pointer"}
|
|
]
|
|
},
|
|
"CompileShader": {
|
|
"arguments": [
|
|
{"type": "GLuint", "name": "shader"}
|
|
]
|
|
},
|
|
"CopyTexImage2D": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "target"},
|
|
{"type": "GLint", "name": "level"},
|
|
{"type": "GLenum", "name": "internalformat"},
|
|
{"type": "GLint", "name": ["x", "y"]},
|
|
{"type": "GLsizei", "name": ["width", "height"]},
|
|
{"type": "GLint", "name": "border"}
|
|
],
|
|
"implementation": "copy_tex_image_2d"
|
|
},
|
|
"CopyTexSubImage2D": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "target"},
|
|
{"type": "GLint", "name": ["level", "xoffset", "yoffset", "x", "y"]},
|
|
{"type": "GLsizei", "name": ["width", "height"]}
|
|
],
|
|
"implementation": "copy_tex_sub_image_2d"
|
|
},
|
|
"CreateProgram": {
|
|
"return_type": "GLuint"
|
|
},
|
|
"CreateShader": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "shader_type"}
|
|
],
|
|
"return_type": "GLuint"
|
|
},
|
|
"CullFace": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "mode"}
|
|
]
|
|
},
|
|
"DeleteBuffers": {
|
|
"arguments": [
|
|
{"type": "GLsizei", "name": "n"},
|
|
{"type": "GLuint const*", "name": "buffers"}
|
|
]
|
|
},
|
|
"DeleteLists": {
|
|
"arguments": [
|
|
{"type": "GLuint", "name": "list"},
|
|
{"type": "GLsizei", "name": "range"}
|
|
]
|
|
},
|
|
"DeleteProgram": {
|
|
"arguments": [
|
|
{"type": "GLuint", "name": "program"}
|
|
]
|
|
},
|
|
"DeleteShader": {
|
|
"arguments": [
|
|
{"type": "GLuint", "name": "shader"}
|
|
]
|
|
},
|
|
"DeleteTextures": {
|
|
"arguments": [
|
|
{"type": "GLsizei", "name": "n"},
|
|
{"type": "GLuint const*", "name": "textures"}
|
|
]
|
|
},
|
|
"DepthFunc": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "func"}
|
|
]
|
|
},
|
|
"DepthMask": {
|
|
"arguments": [
|
|
{"type": "GLboolean", "name": "flag"}
|
|
]
|
|
},
|
|
"DepthRange": {
|
|
"arguments": [
|
|
{"type": "GLdouble", "name": ["nearVal", "farVal"]}
|
|
]
|
|
},
|
|
"DepthRangef": {
|
|
"arguments": [
|
|
{"type": "GLfloat", "name": ["nearVal", "farVal"], "cast_to": "GLdouble"}
|
|
],
|
|
"implementation": "depth_range"
|
|
},
|
|
"Disable": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "cap"}
|
|
]
|
|
},
|
|
"DisableClientState": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "cap"}
|
|
]
|
|
},
|
|
"DrawArrays": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "mode"},
|
|
{"type": "GLint", "name": "first"},
|
|
{"type": "GLsizei", "name": "count"}
|
|
]
|
|
},
|
|
"DrawBuffer": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "buffer"}
|
|
]
|
|
},
|
|
"DrawElements": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "mode"},
|
|
{"type": "GLsizei", "name": "count"},
|
|
{"type": "GLenum", "name": "type"},
|
|
{"type": "void const*", "name": "indices"}
|
|
]
|
|
},
|
|
"DrawPixels": {
|
|
"arguments": [
|
|
{"type": "GLsizei", "name": ["width", "height"]},
|
|
{"type": "GLenum", "name": ["format", "type"]},
|
|
{"type": "void const*", "name": "data"}
|
|
]
|
|
},
|
|
"Enable": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "cap"}
|
|
]
|
|
},
|
|
"EnableClientState": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "cap"}
|
|
]
|
|
},
|
|
"End": {},
|
|
"EndList": {},
|
|
"EvalCoord": {
|
|
"arguments": [
|
|
{"name": ["u", "v"]}
|
|
],
|
|
"unimplemented": true,
|
|
"variants": {
|
|
"argument_counts": [1, 2],
|
|
"argument_defaults": ["0.", "0."],
|
|
"pointer_argument": "u",
|
|
"types": {
|
|
"d": {},
|
|
"dv": {},
|
|
"f": {},
|
|
"fv": {}
|
|
}
|
|
}
|
|
},
|
|
"EvalMesh1": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "mode"},
|
|
{"type": "GLint", "name": ["i1", "i2"]}
|
|
],
|
|
"unimplemented": true
|
|
},
|
|
"EvalMesh2": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "mode"},
|
|
{"type": "GLint", "name": ["i1", "i2", "j1", "j2"]}
|
|
],
|
|
"unimplemented": true
|
|
},
|
|
"EvalPoint": {
|
|
"arguments": [
|
|
{"name": ["i", "j"]}
|
|
],
|
|
"unimplemented": true,
|
|
"variants": {
|
|
"argument_counts": [1, 2],
|
|
"argument_defaults": ["0", "0"],
|
|
"types": {
|
|
"i": {}
|
|
}
|
|
}
|
|
},
|
|
"Finish": {},
|
|
"Flush": {},
|
|
"Fog": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "pname"},
|
|
{"name": "param"}
|
|
],
|
|
"variants": {
|
|
"argument_counts": [1],
|
|
"pointer_argument": "params",
|
|
"types": {
|
|
"f": {"implementation": "fogf"},
|
|
"fv": {"implementation": "fogfv"},
|
|
"i": {"implementation": "fogi"},
|
|
"iv": {"unimplemented": true}
|
|
}
|
|
}
|
|
},
|
|
"FrontFace": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "mode"}
|
|
]
|
|
},
|
|
"Frustum": {
|
|
"arguments": [
|
|
{"type": "GLdouble", "name": ["left", "right", "bottom", "top", "nearVal", "farVal"]}
|
|
]
|
|
},
|
|
"GenBuffers": {
|
|
"arguments": [
|
|
{"type": "GLsizei", "name": "n"},
|
|
{"type": "GLuint*", "name": "buffers"}
|
|
]
|
|
},
|
|
"GenLists": {
|
|
"arguments": [
|
|
{"type": "GLsizei", "name": "range"}
|
|
],
|
|
"return_type": "GLuint"
|
|
},
|
|
"GenTextures": {
|
|
"arguments": [
|
|
{"type": "GLsizei", "name": "n"},
|
|
{"type": "GLuint*", "name": "textures"}
|
|
]
|
|
},
|
|
"GetBooleanv": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "pname"},
|
|
{"type": "GLboolean*", "name": "data"}
|
|
]
|
|
},
|
|
"GetClipPlane": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "plane"},
|
|
{"type": "GLdouble*", "name": "equation"}
|
|
]
|
|
},
|
|
"GetDoublev": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "pname"},
|
|
{"type": "GLdouble*", "name": "data"}
|
|
]
|
|
},
|
|
"GetError": {
|
|
"return_type": "GLenum"
|
|
},
|
|
"GetFloatv": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "pname"},
|
|
{"type": "GLfloat*", "name": "data"}
|
|
]
|
|
},
|
|
"GetIntegerv": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "pname"},
|
|
{"type": "GLint*", "name": "data"}
|
|
]
|
|
},
|
|
"GetLight": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "light"},
|
|
{"type": "GLenum", "name": "pname"},
|
|
{"name": "params"},
|
|
{"type": "GLenum", "expression": "@variant_gl_type@"}
|
|
],
|
|
"variants": {
|
|
"argument_counts": [1],
|
|
"pointer_argument": "params",
|
|
"types": {
|
|
"fv!": {},
|
|
"iv!": {}
|
|
}
|
|
}
|
|
},
|
|
"GetMaterial": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "face"},
|
|
{"type": "GLenum", "name": "pname"},
|
|
{"name": "params"},
|
|
{"type": "GLenum", "expression": "@variant_gl_type@"}
|
|
],
|
|
"variants": {
|
|
"argument_counts": [1],
|
|
"pointer_argument": "params",
|
|
"types": {
|
|
"fv!": {},
|
|
"iv!": {}
|
|
}
|
|
}
|
|
},
|
|
"GetProgramiv": {
|
|
"arguments": [
|
|
{"type": "GLuint", "name": "program"},
|
|
{"type": "GLenum", "name": "pname"},
|
|
{"type": "GLint*", "name": "params"}
|
|
],
|
|
"implementation": "get_program"
|
|
},
|
|
"GetShaderInfoLog": {
|
|
"arguments": [
|
|
{"type": "GLuint", "name": "shader"},
|
|
{"type": "GLsizei", "name": "maxLength"},
|
|
{"type": "GLsizei*", "name": "length"},
|
|
{"type": "GLchar*", "name": "infoLog"}
|
|
],
|
|
"unimplemented": true
|
|
},
|
|
"GetShaderiv": {
|
|
"arguments": [
|
|
{"type": "GLuint", "name": "shader"},
|
|
{"type": "GLenum", "name": "pname"},
|
|
{"type": "GLint*", "name": "params"}
|
|
],
|
|
"implementation": "get_shader"
|
|
},
|
|
"GetString": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "name"}
|
|
],
|
|
"return_type": "GLubyte const*"
|
|
},
|
|
"GetTexImage": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "target"},
|
|
{"type": "GLint", "name": "level"},
|
|
{"type": "GLenum", "name": ["format", "type"]},
|
|
{"type": "void*", "name": "pixels"}
|
|
]
|
|
},
|
|
"GetTexLevelParameter": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "target"},
|
|
{"type": "GLint", "name": "level"},
|
|
{"type": "GLenum", "name": "pname"},
|
|
{"name": "params"}
|
|
],
|
|
"variants": {
|
|
"argument_counts": [1],
|
|
"pointer_argument": "params",
|
|
"types": {
|
|
"fv!": {"unimplemented": true},
|
|
"iv!": {"implementation": "get_tex_parameter_integerv"}
|
|
}
|
|
}
|
|
},
|
|
"GetUniformLocation": {
|
|
"arguments": [
|
|
{"type": "GLuint", "name": "program"},
|
|
{"type": "GLchar const*", "name": "name"}
|
|
],
|
|
"unimplemented": true
|
|
},
|
|
"Hint": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "target"},
|
|
{"type": "GLenum", "name": "mode"}
|
|
]
|
|
},
|
|
"IsEnabled": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "cap"}
|
|
],
|
|
"return_type": "GLboolean"
|
|
},
|
|
"IsList": {
|
|
"arguments": [
|
|
{"type": "GLuint", "name": "list"}
|
|
],
|
|
"return_type": "GLboolean"
|
|
},
|
|
"IsTexture": {
|
|
"arguments": [
|
|
{"type": "GLuint", "name": "texture"}
|
|
],
|
|
"return_type": "GLboolean"
|
|
},
|
|
"Light": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "light"},
|
|
{"type": "GLenum", "name": "pname"},
|
|
{"name": "param", "cast_to": "GLfloat"}
|
|
],
|
|
"variants": {
|
|
"argument_counts": [1],
|
|
"pointer_argument": "params",
|
|
"types": {
|
|
"f": {},
|
|
"fv": {"implementation": "lightfv"},
|
|
"i": {},
|
|
"iv": {"implementation": "lightiv"},
|
|
"x": {},
|
|
"xv": {"implementation": "lightiv"}
|
|
}
|
|
},
|
|
"implementation": "lightf"
|
|
},
|
|
"LightModel": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "pname"},
|
|
{"name": "param"},
|
|
{"name": ["y", "z", "w"]}
|
|
],
|
|
"variants": {
|
|
"argument_counts": [1],
|
|
"argument_defaults": ["0.f", "0.f", "0.f", "0.f"],
|
|
"types": {
|
|
"f": {},
|
|
"i": {}
|
|
}
|
|
}
|
|
},
|
|
"LightModel_v": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "pname"},
|
|
{"name": "param"},
|
|
{"type": "GLenum", "expression": "@variant_gl_type@"}
|
|
],
|
|
"implementation": "light_modelv",
|
|
"name": "LightModel",
|
|
"variants": {
|
|
"argument_counts": [1],
|
|
"pointer_argument": "params",
|
|
"types": {
|
|
"fv": {},
|
|
"iv": {}
|
|
}
|
|
}
|
|
},
|
|
"LineWidth": {
|
|
"arguments": [
|
|
{"type": "GLfloat", "name": "width"}
|
|
]
|
|
},
|
|
"LinkProgram": {
|
|
"arguments": [
|
|
{"type": "GLuint", "name": "program"}
|
|
]
|
|
},
|
|
"ListBase": {
|
|
"arguments": [
|
|
{"type": "GLuint", "name": "base"}
|
|
]
|
|
},
|
|
"LoadIdentity": {},
|
|
"LoadMatrixd": {
|
|
"arguments": [
|
|
{"type": "GLdouble const*", "name": "m", "expression": "GL::transpose_input_matrix(@argument_name@)"}
|
|
],
|
|
"implementation": "load_matrix"
|
|
},
|
|
"LoadMatrixf": {
|
|
"arguments": [
|
|
{"type": "GLfloat const*", "name": "m", "expression": "GL::transpose_input_matrix(@argument_name@)"}
|
|
],
|
|
"implementation": "load_matrix"
|
|
},
|
|
"Map1d": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "target"},
|
|
{"type": "GLdouble","name": ["u1", "u2"]},
|
|
{"type": "GLint", "name": ["stride", "order"]},
|
|
{"type": "GLdouble const*", "name": "points"}
|
|
],
|
|
"unimplemented": true
|
|
},
|
|
"Map1f": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "target"},
|
|
{"type": "GLfloat","name": ["u1", "u2"]},
|
|
{"type": "GLint", "name": ["stride", "order"]},
|
|
{"type": "GLfloat const*", "name": "points"}
|
|
],
|
|
"unimplemented": true
|
|
},
|
|
"Map2d": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "target"},
|
|
{"type": "GLdouble","name": ["u1", "u2"]},
|
|
{"type": "GLint", "name": ["ustride", "uorder"]},
|
|
{"type": "GLdouble","name": ["v1", "v2"]},
|
|
{"type": "GLint", "name": ["vstride", "vorder"]},
|
|
{"type": "GLdouble const*", "name": "points"}
|
|
],
|
|
"unimplemented": true
|
|
},
|
|
"Map2f": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "target"},
|
|
{"type": "GLfloat","name": ["u1", "u2"]},
|
|
{"type": "GLint", "name": ["ustride", "uorder"]},
|
|
{"type": "GLfloat","name": ["v1", "v2"]},
|
|
{"type": "GLint", "name": ["vstride", "vorder"]},
|
|
{"type": "GLfloat const*", "name": "points"}
|
|
],
|
|
"unimplemented": true
|
|
},
|
|
"MapGrid1": {
|
|
"arguments": [
|
|
{"type": "GLint", "name": "un"},
|
|
{"name": ["u1", "u2"]}
|
|
],
|
|
"unimplemented": true,
|
|
"variants": {
|
|
"types": {
|
|
"d": {},
|
|
"f": {}
|
|
}
|
|
}
|
|
},
|
|
"MapGrid2": {
|
|
"arguments": [
|
|
{"type": "GLint", "name": "un"},
|
|
{"name": ["u1", "u2"]},
|
|
{"type": "GLint", "name": "vn"},
|
|
{"name": ["v1", "v2"]}
|
|
],
|
|
"unimplemented": true,
|
|
"variants": {
|
|
"types": {
|
|
"d": {},
|
|
"f": {}
|
|
}
|
|
}
|
|
},
|
|
"Material": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "face"},
|
|
{"type": "GLenum", "name": "pname"},
|
|
{"name": "param", "cast_to": "GLfloat"}
|
|
],
|
|
"implementation": "materialf",
|
|
"variants": {
|
|
"argument_counts": [1],
|
|
"pointer_argument": "params",
|
|
"types": {
|
|
"f": {},
|
|
"fv": {
|
|
"implementation": "materialfv"
|
|
},
|
|
"i": {},
|
|
"iv": {
|
|
"implementation": "materialiv"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"MatrixMode": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "mode"}
|
|
]
|
|
},
|
|
"MultiTexCoord": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "target"},
|
|
{"name": ["s", "t", "r", "q"], "cast_to": "GLfloat"}
|
|
],
|
|
"variants": {
|
|
"api_suffixes": ["", "ARB"],
|
|
"argument_counts": [1, 2, 3, 4],
|
|
"argument_defaults": ["0.f", "0.f", "0.f", "1.f"],
|
|
"pointer_argument": "v",
|
|
"types": {
|
|
"d": {},
|
|
"dv": {},
|
|
"f": {},
|
|
"fv": {},
|
|
"i": {},
|
|
"iv": {},
|
|
"s": {},
|
|
"sv": {}
|
|
}
|
|
}
|
|
},
|
|
"MultMatrixd": {
|
|
"arguments": [
|
|
{"type": "GLdouble const*", "name": "m", "expression": "GL::transpose_input_matrix(@argument_name@)"}
|
|
],
|
|
"implementation": "mult_matrix"
|
|
},
|
|
"MultMatrixf": {
|
|
"arguments": [
|
|
{"type": "GLfloat const*", "name": "m", "expression": "GL::transpose_input_matrix(@argument_name@)"}
|
|
],
|
|
"implementation": "mult_matrix"
|
|
},
|
|
"NewList": {
|
|
"arguments": [
|
|
{"type": "GLuint", "name": "list"},
|
|
{"type": "GLenum", "name": "mode"}
|
|
]
|
|
},
|
|
"Normal3": {
|
|
"arguments": [
|
|
{"name": ["nx", "ny", "nz"], "cast_to": "GLfloat"}
|
|
],
|
|
"implementation": "normal",
|
|
"variants": {
|
|
"convert_range": true,
|
|
"pointer_argument": "v",
|
|
"types": {
|
|
"b": {},
|
|
"bv": {},
|
|
"d": {},
|
|
"dv": {},
|
|
"f": {},
|
|
"fv": {},
|
|
"i": {},
|
|
"iv": {},
|
|
"s": {},
|
|
"sv": {}
|
|
}
|
|
}
|
|
},
|
|
"NormalPointer": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "type"},
|
|
{"type": "GLsizei", "name": "stride"},
|
|
{"type": "void const*", "name": "pointer"}
|
|
]
|
|
},
|
|
"Ortho": {
|
|
"arguments": [
|
|
{"type": "GLdouble", "name": ["left", "right", "bottom", "top", "nearVal", "farVal"]}
|
|
]
|
|
},
|
|
"PixelStore": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "pname"},
|
|
{"name": "param", "cast_to": "GLint"}
|
|
],
|
|
"implementation": "pixel_storei",
|
|
"variants": {
|
|
"types": {
|
|
"f": {},
|
|
"i": {}
|
|
}
|
|
}
|
|
},
|
|
"PointSize": {
|
|
"arguments": [
|
|
{"type": "GLfloat", "name": "size"}
|
|
]
|
|
},
|
|
"PolygonMode": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": ["face", "mode"]}
|
|
]
|
|
},
|
|
"PolygonOffset": {
|
|
"arguments": [
|
|
{"type": "GLfloat", "name": ["factor", "units"]}
|
|
]
|
|
},
|
|
"PopAttrib": {},
|
|
"PopMatrix": {},
|
|
"PushAttrib": {
|
|
"arguments": [
|
|
{"type": "GLbitfield", "name": "mask"}
|
|
]
|
|
},
|
|
"PushMatrix": {},
|
|
"RasterPos": {
|
|
"arguments": [
|
|
{"name": ["x", "y", "z", "w"], "cast_to": "GLfloat"}
|
|
],
|
|
"variants": {
|
|
"argument_counts": [2, 3, 4],
|
|
"argument_defaults": ["0.f", "0.f", "0.f", "1.f"],
|
|
"pointer_argument": "v",
|
|
"types": {
|
|
"d": {},
|
|
"dv": {},
|
|
"f": {},
|
|
"fv": {},
|
|
"i": {},
|
|
"iv": {},
|
|
"s": {},
|
|
"sv": {}
|
|
}
|
|
}
|
|
},
|
|
"ReadBuffer": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "mode"}
|
|
]
|
|
},
|
|
"ReadPixels": {
|
|
"arguments": [
|
|
{"type": "GLint", "name": "x"},
|
|
{"type": "GLint", "name": "y"},
|
|
{"type": "GLsizei", "name": "width"},
|
|
{"type": "GLsizei", "name": "height"},
|
|
{"type": "GLenum", "name": "format"},
|
|
{"type": "GLenum", "name": "type"},
|
|
{"type": "void*", "name": "data"}
|
|
]
|
|
},
|
|
"Rect": {
|
|
"arguments": [
|
|
{"name": ["x1", "y1", "x2", "y2"], "cast_to": "GLdouble"}
|
|
],
|
|
"variants": {
|
|
"types": {
|
|
"d": {},
|
|
"f": {},
|
|
"i": {},
|
|
"s": {}
|
|
}
|
|
}
|
|
},
|
|
"Rotate": {
|
|
"arguments": [
|
|
{"name": ["angle", "x", "y", "z"], "cast_to": "GLfloat"}
|
|
],
|
|
"variants": {
|
|
"types": {
|
|
"d": {},
|
|
"f": {}
|
|
}
|
|
}
|
|
},
|
|
"Scale": {
|
|
"arguments": [
|
|
{"name": ["x", "y", "z"], "cast_to": "GLfloat"}
|
|
],
|
|
"variants": {
|
|
"types": {
|
|
"d": {},
|
|
"f": {}
|
|
}
|
|
}
|
|
},
|
|
"Scissor": {
|
|
"arguments": [
|
|
{"type": "GLint", "name": ["x", "y"]},
|
|
{"type": "GLsizei", "name": ["width", "height"]}
|
|
]
|
|
},
|
|
"ShadeModel": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "mode"}
|
|
]
|
|
},
|
|
"ShaderSource": {
|
|
"arguments": [
|
|
{"type": "GLuint", "name": "shader"},
|
|
{"type": "GLsizei", "name": "count"},
|
|
{"type": "GLchar const**", "name": "string"},
|
|
{"type": "GLint const*", "name": "length"}
|
|
]
|
|
},
|
|
"StencilFunc": {
|
|
"arguments": [
|
|
{"expression": "GL_FRONT_AND_BACK"},
|
|
{"type": "GLenum", "name": "func"},
|
|
{"type": "GLint", "name": "ref"},
|
|
{"type": "GLuint", "name": "mask"}
|
|
],
|
|
"implementation": "stencil_func_separate"
|
|
},
|
|
"StencilFuncSeparate": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": ["face", "func"]},
|
|
{"type": "GLint", "name": "ref"},
|
|
{"type": "GLuint", "name": "mask"}
|
|
]
|
|
},
|
|
"StencilMask": {
|
|
"arguments": [
|
|
{"expression": "GL_FRONT_AND_BACK"},
|
|
{"type": "GLuint", "name": "mask"}
|
|
],
|
|
"implementation": "stencil_mask_separate"
|
|
},
|
|
"StencilMaskSeparate": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "face"},
|
|
{"type": "GLuint", "name": "mask"}
|
|
]
|
|
},
|
|
"StencilOp": {
|
|
"arguments": [
|
|
{"expression": "GL_FRONT_AND_BACK"},
|
|
{"type": "GLenum", "name": ["sfail", "dpfail", "dppass"]}
|
|
],
|
|
"implementation": "stencil_op_separate"
|
|
},
|
|
"StencilOpSeparate": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": ["face", "sfail", "dpfail", "dppass"]}
|
|
]
|
|
},
|
|
"TexCoord": {
|
|
"arguments": [
|
|
{"name": ["s", "t", "r", "q"], "cast_to": "GLfloat"}
|
|
],
|
|
"variants": {
|
|
"argument_counts": [1, 2, 3, 4],
|
|
"argument_defaults": ["0.f", "0.f", "0.f", "1.f"],
|
|
"pointer_argument": "v",
|
|
"types": {
|
|
"d": {},
|
|
"dv": {},
|
|
"f": {},
|
|
"fv": {},
|
|
"i": {},
|
|
"iv": {},
|
|
"s": {},
|
|
"sv": {}
|
|
}
|
|
}
|
|
},
|
|
"TexCoordPointer": {
|
|
"arguments": [
|
|
{"type": "GLint", "name": "size"},
|
|
{"type": "GLenum", "name": "type"},
|
|
{"type": "GLsizei", "name": "stride"},
|
|
{"type": "void const*", "name": "pointer"}
|
|
]
|
|
},
|
|
"TexEnv": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "target"},
|
|
{"type": "GLenum", "name": "pname"},
|
|
{"name": "param"},
|
|
{"type": "GLenum", "expression": "@variant_gl_type@"}
|
|
],
|
|
"implementation": "tex_envv",
|
|
"variants": {
|
|
"argument_counts": [1],
|
|
"pointer_argument": "params",
|
|
"types": {
|
|
"fv": {},
|
|
"iv": {}
|
|
}
|
|
}
|
|
},
|
|
"TexEnvf": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "target"},
|
|
{"type": "GLenum", "name": "pname"},
|
|
{"type": "GLfloat", "name": "x", "expression": "{@argument_name@, 0.f, 0.f, 0.f}"}
|
|
],
|
|
"implementation": "tex_env"
|
|
},
|
|
"TexEnvi": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "target"},
|
|
{"type": "GLenum", "name": "pname"},
|
|
{"type": "GLint", "name": "x", "expression": "{static_cast<float>(@argument_name@), 0.f, 0.f, 0.f}"}
|
|
],
|
|
"implementation": "tex_env"
|
|
},
|
|
"TexGen": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "coord"},
|
|
{"type": "GLenum", "name": "pname"},
|
|
{"name": "param", "cast_to": "GLint"}
|
|
],
|
|
"variants": {
|
|
"argument_counts": [1],
|
|
"pointer_argument": "params",
|
|
"types": {
|
|
"d": {},
|
|
"dv": {"unimplemented": true},
|
|
"f": {},
|
|
"fv": {"implementation": "tex_gen_floatv"},
|
|
"i": {},
|
|
"iv": {"unimplemented": true}
|
|
}
|
|
}
|
|
},
|
|
"TexImage1D": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "target"},
|
|
{"type": "GLint", "name": "level"},
|
|
{"type": "GLint", "name": "internalFormat"},
|
|
{"type": "GLsizei", "name": "width"},
|
|
{"type": "GLint", "name": "border"},
|
|
{"type": "GLenum", "name": "format"},
|
|
{"type": "GLenum", "name": "type"},
|
|
{"type": "void const*", "name": "data"}
|
|
],
|
|
"unimplemented": true
|
|
},
|
|
"TexImage2D": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "target"},
|
|
{"type": "GLint", "name": "level"},
|
|
{"type": "GLint", "name": "internalFormat"},
|
|
{"type": "GLsizei", "name": "width"},
|
|
{"type": "GLsizei", "name": "height"},
|
|
{"type": "GLint", "name": "border"},
|
|
{"type": "GLenum", "name": "format"},
|
|
{"type": "GLenum", "name": "type"},
|
|
{"type": "void const*", "name": "data"}
|
|
],
|
|
"implementation": "tex_image_2d"
|
|
},
|
|
"TexImage3D": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "target"},
|
|
{"type": "GLint", "name": "level"},
|
|
{"type": "GLint", "name": "internalFormat"},
|
|
{"type": "GLsizei", "name": "width"},
|
|
{"type": "GLsizei", "name": "height"},
|
|
{"type": "GLsizei", "name": "depth"},
|
|
{"type": "GLint", "name": "border"},
|
|
{"type": "GLenum", "name": "format"},
|
|
{"type": "GLenum", "name": "type"},
|
|
{"type": "void const*", "name": "data"}
|
|
],
|
|
"unimplemented": true
|
|
},
|
|
"TexParameter": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "target"},
|
|
{"type": "GLenum", "name": "pname"},
|
|
{"name": "param"}
|
|
],
|
|
"variants": {
|
|
"pointer_argument": "params",
|
|
"types": {
|
|
"f": {},
|
|
"fv": {"unimplemented": true},
|
|
"i": {},
|
|
"iv": {"unimplemented": true}
|
|
}
|
|
}
|
|
},
|
|
"TexSubImage1D": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "target"},
|
|
{"type": "GLint", "name": "level"},
|
|
{"type": "GLint", "name": "xoffset"},
|
|
{"type": "GLsizei", "name": "width"},
|
|
{"type": "GLenum", "name": "format"},
|
|
{"type": "GLenum", "name": "type"},
|
|
{"type": "void const*", "name": "pixels"}
|
|
],
|
|
"unimplemented": true
|
|
},
|
|
"TexSubImage2D": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "target"},
|
|
{"type": "GLint", "name": "level"},
|
|
{"type": "GLint", "name": "xoffset"},
|
|
{"type": "GLint", "name": "yoffset"},
|
|
{"type": "GLsizei", "name": "width"},
|
|
{"type": "GLsizei", "name": "height"},
|
|
{"type": "GLenum", "name": "format"},
|
|
{"type": "GLenum", "name": "type"},
|
|
{"type": "void const*", "name": "pixels"}
|
|
],
|
|
"implementation": "tex_sub_image_2d"
|
|
},
|
|
"TexSubImage3D": {
|
|
"arguments": [
|
|
{"type": "GLenum", "name": "target"},
|
|
{"type": "GLint", "name": "level"},
|
|
{"type": "GLint", "name": "xoffset"},
|
|
{"type": "GLint", "name": "yoffset"},
|
|
{"type": "GLint", "name": "zoffset"},
|
|
{"type": "GLsizei", "name": "width"},
|
|
{"type": "GLsizei", "name": "height"},
|
|
{"type": "GLsizei", "name": "depth"},
|
|
{"type": "GLenum", "name": "format"},
|
|
{"type": "GLenum", "name": "type"},
|
|
{"type": "void const*", "name": "pixels"}
|
|
],
|
|
"unimplemented": true
|
|
},
|
|
"Translate": {
|
|
"arguments": [
|
|
{"name": ["x", "y", "z"], "cast_to": "GLfloat"}
|
|
],
|
|
"variants": {
|
|
"types": {
|
|
"d": {},
|
|
"f": {}
|
|
}
|
|
}
|
|
},
|
|
"Uniform": {
|
|
"arguments": [
|
|
{"type": "GLint", "name": "location"},
|
|
{"name": ["v0", "v1", "v2", "v3"]}
|
|
],
|
|
"unimplemented": true,
|
|
"variants": {
|
|
"argument_counts": [1, 2, 3, 4],
|
|
"argument_defaults": ["0.", "0.", "0.", "0."],
|
|
"types": {
|
|
"f": {},
|
|
"i": {},
|
|
"ui": {}
|
|
}
|
|
}
|
|
},
|
|
"Uniform_v": {
|
|
"arguments": [
|
|
{"type": "GLint", "name": "location"},
|
|
{"type": "GLsizei", "name": "count"},
|
|
{"name": "value"}
|
|
],
|
|
"name": "Uniform",
|
|
"unimplemented": true,
|
|
"variants": {
|
|
"argument_counts": [1, 2, 3, 4],
|
|
"pointer_argument": "value",
|
|
"types": {
|
|
"fv": {},
|
|
"iv": {},
|
|
"uiv": {}
|
|
}
|
|
}
|
|
},
|
|
"UseProgram": {
|
|
"arguments": [
|
|
{"type": "GLuint", "name": "program"}
|
|
]
|
|
},
|
|
"Vertex": {
|
|
"arguments": [
|
|
{"name": ["x", "y", "z", "w"], "cast_to": "GLdouble"}
|
|
],
|
|
"variants": {
|
|
"argument_counts": [2, 3, 4],
|
|
"argument_defaults": ["0.", "0.", "0.", "1."],
|
|
"pointer_argument": "v",
|
|
"types": {
|
|
"d": {},
|
|
"dv": {},
|
|
"f": {},
|
|
"fv": {},
|
|
"i": {},
|
|
"iv": {},
|
|
"s": {},
|
|
"sv": {}
|
|
}
|
|
}
|
|
},
|
|
"VertexPointer": {
|
|
"arguments": [
|
|
{"type": "GLint", "name": "size"},
|
|
{"type": "GLenum", "name": "type"},
|
|
{"type": "GLsizei", "name": "stride"},
|
|
{"type": "void const*", "name": "pointer"}
|
|
]
|
|
},
|
|
"Viewport": {
|
|
"arguments": [
|
|
{"type": "GLint", "name": ["x", "y"]},
|
|
{"type": "GLsizei", "name": ["width", "height"]}
|
|
]
|
|
}
|
|
}
|