raylib/parser/output/raylib_api.lua
Jonathan Marler af16f7823a Improve description of RestoreWindow
Restore window currently says it sets the window state to:

   "not minimized/maximized"

However, if a window is maximized and then minimized, it's typical that
it would restore back to being maximized, which is what seems to happen
from my testing. I've reworded the description to better reflect
this behavior.
2025-03-28 10:39:22 -06:00

8312 lines
224 KiB
Lua

return {
defines = {
{
name = "RAYLIB_H",
type = "GUARD",
value = "",
description = ""
},
{
name = "RAYLIB_VERSION_MAJOR",
type = "INT",
value = 5,
description = ""
},
{
name = "RAYLIB_VERSION_MINOR",
type = "INT",
value = 6,
description = ""
},
{
name = "RAYLIB_VERSION_PATCH",
type = "INT",
value = 0,
description = ""
},
{
name = "RAYLIB_VERSION",
type = "STRING",
value = "5.6-dev",
description = ""
},
{
name = "__declspec(x)",
type = "MACRO",
value = "__attribute__((x))",
description = ""
},
{
name = "RLAPI",
type = "UNKNOWN",
value = "__declspec(dllexport)",
description = "We are building the library as a Win32 shared library (.dll)"
},
{
name = "PI",
type = "FLOAT",
value = 3.14159265358979323846,
description = ""
},
{
name = "DEG2RAD",
type = "FLOAT_MATH",
value = "(PI/180.0f)",
description = ""
},
{
name = "RAD2DEG",
type = "FLOAT_MATH",
value = "(180.0f/PI)",
description = ""
},
{
name = "RL_MALLOC(sz)",
type = "MACRO",
value = "malloc(sz)",
description = ""
},
{
name = "RL_CALLOC(n,sz)",
type = "MACRO",
value = "calloc(n,sz)",
description = ""
},
{
name = "RL_REALLOC(ptr,sz)",
type = "MACRO",
value = "realloc(ptr,sz)",
description = ""
},
{
name = "RL_FREE(ptr)",
type = "MACRO",
value = "free(ptr)",
description = ""
},
{
name = "CLITERAL(type)",
type = "MACRO",
value = "type",
description = ""
},
{
name = "RL_COLOR_TYPE",
type = "GUARD",
value = "",
description = ""
},
{
name = "RL_RECTANGLE_TYPE",
type = "GUARD",
value = "",
description = ""
},
{
name = "RL_VECTOR2_TYPE",
type = "GUARD",
value = "",
description = ""
},
{
name = "RL_VECTOR3_TYPE",
type = "GUARD",
value = "",
description = ""
},
{
name = "RL_VECTOR4_TYPE",
type = "GUARD",
value = "",
description = ""
},
{
name = "RL_QUATERNION_TYPE",
type = "GUARD",
value = "",
description = ""
},
{
name = "RL_MATRIX_TYPE",
type = "GUARD",
value = "",
description = ""
},
{
name = "LIGHTGRAY",
type = "COLOR",
value = "CLITERAL(Color){ 200, 200, 200, 255 }",
description = "Light Gray"
},
{
name = "GRAY",
type = "COLOR",
value = "CLITERAL(Color){ 130, 130, 130, 255 }",
description = "Gray"
},
{
name = "DARKGRAY",
type = "COLOR",
value = "CLITERAL(Color){ 80, 80, 80, 255 }",
description = "Dark Gray"
},
{
name = "YELLOW",
type = "COLOR",
value = "CLITERAL(Color){ 253, 249, 0, 255 }",
description = "Yellow"
},
{
name = "GOLD",
type = "COLOR",
value = "CLITERAL(Color){ 255, 203, 0, 255 }",
description = "Gold"
},
{
name = "ORANGE",
type = "COLOR",
value = "CLITERAL(Color){ 255, 161, 0, 255 }",
description = "Orange"
},
{
name = "PINK",
type = "COLOR",
value = "CLITERAL(Color){ 255, 109, 194, 255 }",
description = "Pink"
},
{
name = "RED",
type = "COLOR",
value = "CLITERAL(Color){ 230, 41, 55, 255 }",
description = "Red"
},
{
name = "MAROON",
type = "COLOR",
value = "CLITERAL(Color){ 190, 33, 55, 255 }",
description = "Maroon"
},
{
name = "GREEN",
type = "COLOR",
value = "CLITERAL(Color){ 0, 228, 48, 255 }",
description = "Green"
},
{
name = "LIME",
type = "COLOR",
value = "CLITERAL(Color){ 0, 158, 47, 255 }",
description = "Lime"
},
{
name = "DARKGREEN",
type = "COLOR",
value = "CLITERAL(Color){ 0, 117, 44, 255 }",
description = "Dark Green"
},
{
name = "SKYBLUE",
type = "COLOR",
value = "CLITERAL(Color){ 102, 191, 255, 255 }",
description = "Sky Blue"
},
{
name = "BLUE",
type = "COLOR",
value = "CLITERAL(Color){ 0, 121, 241, 255 }",
description = "Blue"
},
{
name = "DARKBLUE",
type = "COLOR",
value = "CLITERAL(Color){ 0, 82, 172, 255 }",
description = "Dark Blue"
},
{
name = "PURPLE",
type = "COLOR",
value = "CLITERAL(Color){ 200, 122, 255, 255 }",
description = "Purple"
},
{
name = "VIOLET",
type = "COLOR",
value = "CLITERAL(Color){ 135, 60, 190, 255 }",
description = "Violet"
},
{
name = "DARKPURPLE",
type = "COLOR",
value = "CLITERAL(Color){ 112, 31, 126, 255 }",
description = "Dark Purple"
},
{
name = "BEIGE",
type = "COLOR",
value = "CLITERAL(Color){ 211, 176, 131, 255 }",
description = "Beige"
},
{
name = "BROWN",
type = "COLOR",
value = "CLITERAL(Color){ 127, 106, 79, 255 }",
description = "Brown"
},
{
name = "DARKBROWN",
type = "COLOR",
value = "CLITERAL(Color){ 76, 63, 47, 255 }",
description = "Dark Brown"
},
{
name = "WHITE",
type = "COLOR",
value = "CLITERAL(Color){ 255, 255, 255, 255 }",
description = "White"
},
{
name = "BLACK",
type = "COLOR",
value = "CLITERAL(Color){ 0, 0, 0, 255 }",
description = "Black"
},
{
name = "BLANK",
type = "COLOR",
value = "CLITERAL(Color){ 0, 0, 0, 0 }",
description = "Blank (Transparent)"
},
{
name = "MAGENTA",
type = "COLOR",
value = "CLITERAL(Color){ 255, 0, 255, 255 }",
description = "Magenta"
},
{
name = "RAYWHITE",
type = "COLOR",
value = "CLITERAL(Color){ 245, 245, 245, 255 }",
description = "My own White (raylib logo)"
},
{
name = "RL_BOOL_TYPE",
type = "GUARD",
value = "",
description = ""
},
{
name = "MOUSE_LEFT_BUTTON",
type = "UNKNOWN",
value = "MOUSE_BUTTON_LEFT",
description = ""
},
{
name = "MOUSE_RIGHT_BUTTON",
type = "UNKNOWN",
value = "MOUSE_BUTTON_RIGHT",
description = ""
},
{
name = "MOUSE_MIDDLE_BUTTON",
type = "UNKNOWN",
value = "MOUSE_BUTTON_MIDDLE",
description = ""
},
{
name = "MATERIAL_MAP_DIFFUSE",
type = "UNKNOWN",
value = "MATERIAL_MAP_ALBEDO",
description = ""
},
{
name = "MATERIAL_MAP_SPECULAR",
type = "UNKNOWN",
value = "MATERIAL_MAP_METALNESS",
description = ""
},
{
name = "SHADER_LOC_MAP_DIFFUSE",
type = "UNKNOWN",
value = "SHADER_LOC_MAP_ALBEDO",
description = ""
},
{
name = "SHADER_LOC_MAP_SPECULAR",
type = "UNKNOWN",
value = "SHADER_LOC_MAP_METALNESS",
description = ""
},
{
name = "GetMouseRay",
type = "UNKNOWN",
value = "GetScreenToWorldRay",
description = "Compatibility hack for previous raylib versions"
}
},
structs = {
{
name = "Vector2",
description = "Vector2, 2 components",
fields = {
{
type = "float",
name = "x",
description = "Vector x component"
},
{
type = "float",
name = "y",
description = "Vector y component"
}
}
},
{
name = "Vector3",
description = "Vector3, 3 components",
fields = {
{
type = "float",
name = "x",
description = "Vector x component"
},
{
type = "float",
name = "y",
description = "Vector y component"
},
{
type = "float",
name = "z",
description = "Vector z component"
}
}
},
{
name = "Vector4",
description = "Vector4, 4 components",
fields = {
{
type = "float",
name = "x",
description = "Vector x component"
},
{
type = "float",
name = "y",
description = "Vector y component"
},
{
type = "float",
name = "z",
description = "Vector z component"
},
{
type = "float",
name = "w",
description = "Vector w component"
}
}
},
{
name = "Matrix",
description = "Matrix, 4x4 components, column major, OpenGL style, right-handed",
fields = {
{
type = "float",
name = "m0",
description = "Matrix first row (4 components)"
},
{
type = "float",
name = "m4",
description = "Matrix first row (4 components)"
},
{
type = "float",
name = "m8",
description = "Matrix first row (4 components)"
},
{
type = "float",
name = "m12",
description = "Matrix first row (4 components)"
},
{
type = "float",
name = "m1",
description = "Matrix second row (4 components)"
},
{
type = "float",
name = "m5",
description = "Matrix second row (4 components)"
},
{
type = "float",
name = "m9",
description = "Matrix second row (4 components)"
},
{
type = "float",
name = "m13",
description = "Matrix second row (4 components)"
},
{
type = "float",
name = "m2",
description = "Matrix third row (4 components)"
},
{
type = "float",
name = "m6",
description = "Matrix third row (4 components)"
},
{
type = "float",
name = "m10",
description = "Matrix third row (4 components)"
},
{
type = "float",
name = "m14",
description = "Matrix third row (4 components)"
},
{
type = "float",
name = "m3",
description = "Matrix fourth row (4 components)"
},
{
type = "float",
name = "m7",
description = "Matrix fourth row (4 components)"
},
{
type = "float",
name = "m11",
description = "Matrix fourth row (4 components)"
},
{
type = "float",
name = "m15",
description = "Matrix fourth row (4 components)"
}
}
},
{
name = "Color",
description = "Color, 4 components, R8G8B8A8 (32bit)",
fields = {
{
type = "unsigned char",
name = "r",
description = "Color red value"
},
{
type = "unsigned char",
name = "g",
description = "Color green value"
},
{
type = "unsigned char",
name = "b",
description = "Color blue value"
},
{
type = "unsigned char",
name = "a",
description = "Color alpha value"
}
}
},
{
name = "Rectangle",
description = "Rectangle, 4 components",
fields = {
{
type = "float",
name = "x",
description = "Rectangle top-left corner position x"
},
{
type = "float",
name = "y",
description = "Rectangle top-left corner position y"
},
{
type = "float",
name = "width",
description = "Rectangle width"
},
{
type = "float",
name = "height",
description = "Rectangle height"
}
}
},
{
name = "Image",
description = "Image, pixel data stored in CPU memory (RAM)",
fields = {
{
type = "void *",
name = "data",
description = "Image raw data"
},
{
type = "int",
name = "width",
description = "Image base width"
},
{
type = "int",
name = "height",
description = "Image base height"
},
{
type = "int",
name = "mipmaps",
description = "Mipmap levels, 1 by default"
},
{
type = "int",
name = "format",
description = "Data format (PixelFormat type)"
}
}
},
{
name = "Texture",
description = "Texture, tex data stored in GPU memory (VRAM)",
fields = {
{
type = "unsigned int",
name = "id",
description = "OpenGL texture id"
},
{
type = "int",
name = "width",
description = "Texture base width"
},
{
type = "int",
name = "height",
description = "Texture base height"
},
{
type = "int",
name = "mipmaps",
description = "Mipmap levels, 1 by default"
},
{
type = "int",
name = "format",
description = "Data format (PixelFormat type)"
}
}
},
{
name = "RenderTexture",
description = "RenderTexture, fbo for texture rendering",
fields = {
{
type = "unsigned int",
name = "id",
description = "OpenGL framebuffer object id"
},
{
type = "Texture",
name = "texture",
description = "Color buffer attachment texture"
},
{
type = "Texture",
name = "depth",
description = "Depth buffer attachment texture"
}
}
},
{
name = "NPatchInfo",
description = "NPatchInfo, n-patch layout info",
fields = {
{
type = "Rectangle",
name = "source",
description = "Texture source rectangle"
},
{
type = "int",
name = "left",
description = "Left border offset"
},
{
type = "int",
name = "top",
description = "Top border offset"
},
{
type = "int",
name = "right",
description = "Right border offset"
},
{
type = "int",
name = "bottom",
description = "Bottom border offset"
},
{
type = "int",
name = "layout",
description = "Layout of the n-patch: 3x3, 1x3 or 3x1"
}
}
},
{
name = "GlyphInfo",
description = "GlyphInfo, font characters glyphs info",
fields = {
{
type = "int",
name = "value",
description = "Character value (Unicode)"
},
{
type = "int",
name = "offsetX",
description = "Character offset X when drawing"
},
{
type = "int",
name = "offsetY",
description = "Character offset Y when drawing"
},
{
type = "int",
name = "advanceX",
description = "Character advance position X"
},
{
type = "Image",
name = "image",
description = "Character image data"
}
}
},
{
name = "Font",
description = "Font, font texture and GlyphInfo array data",
fields = {
{
type = "int",
name = "baseSize",
description = "Base size (default chars height)"
},
{
type = "int",
name = "glyphCount",
description = "Number of glyph characters"
},
{
type = "int",
name = "glyphPadding",
description = "Padding around the glyph characters"
},
{
type = "Texture2D",
name = "texture",
description = "Texture atlas containing the glyphs"
},
{
type = "Rectangle *",
name = "recs",
description = "Rectangles in texture for the glyphs"
},
{
type = "GlyphInfo *",
name = "glyphs",
description = "Glyphs info data"
}
}
},
{
name = "Camera3D",
description = "Camera, defines position/orientation in 3d space",
fields = {
{
type = "Vector3",
name = "position",
description = "Camera position"
},
{
type = "Vector3",
name = "target",
description = "Camera target it looks-at"
},
{
type = "Vector3",
name = "up",
description = "Camera up vector (rotation over its axis)"
},
{
type = "float",
name = "fovy",
description = "Camera field-of-view aperture in Y (degrees) in perspective, used as near plane width in orthographic"
},
{
type = "int",
name = "projection",
description = "Camera projection: CAMERA_PERSPECTIVE or CAMERA_ORTHOGRAPHIC"
}
}
},
{
name = "Camera2D",
description = "Camera2D, defines position/orientation in 2d space",
fields = {
{
type = "Vector2",
name = "offset",
description = "Camera offset (displacement from target)"
},
{
type = "Vector2",
name = "target",
description = "Camera target (rotation and zoom origin)"
},
{
type = "float",
name = "rotation",
description = "Camera rotation in degrees"
},
{
type = "float",
name = "zoom",
description = "Camera zoom (scaling), should be 1.0f by default"
}
}
},
{
name = "Mesh",
description = "Mesh, vertex data and vao/vbo",
fields = {
{
type = "int",
name = "vertexCount",
description = "Number of vertices stored in arrays"
},
{
type = "int",
name = "triangleCount",
description = "Number of triangles stored (indexed or not)"
},
{
type = "float *",
name = "vertices",
description = "Vertex position (XYZ - 3 components per vertex) (shader-location = 0)"
},
{
type = "float *",
name = "texcoords",
description = "Vertex texture coordinates (UV - 2 components per vertex) (shader-location = 1)"
},
{
type = "float *",
name = "texcoords2",
description = "Vertex texture second coordinates (UV - 2 components per vertex) (shader-location = 5)"
},
{
type = "float *",
name = "normals",
description = "Vertex normals (XYZ - 3 components per vertex) (shader-location = 2)"
},
{
type = "float *",
name = "tangents",
description = "Vertex tangents (XYZW - 4 components per vertex) (shader-location = 4)"
},
{
type = "unsigned char *",
name = "colors",
description = "Vertex colors (RGBA - 4 components per vertex) (shader-location = 3)"
},
{
type = "unsigned short *",
name = "indices",
description = "Vertex indices (in case vertex data comes indexed)"
},
{
type = "float *",
name = "animVertices",
description = "Animated vertex positions (after bones transformations)"
},
{
type = "float *",
name = "animNormals",
description = "Animated normals (after bones transformations)"
},
{
type = "unsigned char *",
name = "boneIds",
description = "Vertex bone ids, max 255 bone ids, up to 4 bones influence by vertex (skinning) (shader-location = 6)"
},
{
type = "float *",
name = "boneWeights",
description = "Vertex bone weight, up to 4 bones influence by vertex (skinning) (shader-location = 7)"
},
{
type = "Matrix *",
name = "boneMatrices",
description = "Bones animated transformation matrices"
},
{
type = "int",
name = "boneCount",
description = "Number of bones"
},
{
type = "unsigned int",
name = "vaoId",
description = "OpenGL Vertex Array Object id"
},
{
type = "unsigned int *",
name = "vboId",
description = "OpenGL Vertex Buffer Objects id (default vertex data)"
}
}
},
{
name = "Shader",
description = "Shader",
fields = {
{
type = "unsigned int",
name = "id",
description = "Shader program id"
},
{
type = "int *",
name = "locs",
description = "Shader locations array (RL_MAX_SHADER_LOCATIONS)"
}
}
},
{
name = "MaterialMap",
description = "MaterialMap",
fields = {
{
type = "Texture2D",
name = "texture",
description = "Material map texture"
},
{
type = "Color",
name = "color",
description = "Material map color"
},
{
type = "float",
name = "value",
description = "Material map value"
}
}
},
{
name = "Material",
description = "Material, includes shader and maps",
fields = {
{
type = "Shader",
name = "shader",
description = "Material shader"
},
{
type = "MaterialMap *",
name = "maps",
description = "Material maps array (MAX_MATERIAL_MAPS)"
},
{
type = "float[4]",
name = "params",
description = "Material generic parameters (if required)"
}
}
},
{
name = "Transform",
description = "Transform, vertex transformation data",
fields = {
{
type = "Vector3",
name = "translation",
description = "Translation"
},
{
type = "Quaternion",
name = "rotation",
description = "Rotation"
},
{
type = "Vector3",
name = "scale",
description = "Scale"
}
}
},
{
name = "BoneInfo",
description = "Bone, skeletal animation bone",
fields = {
{
type = "char[32]",
name = "name",
description = "Bone name"
},
{
type = "int",
name = "parent",
description = "Bone parent"
}
}
},
{
name = "Model",
description = "Model, meshes, materials and animation data",
fields = {
{
type = "Matrix",
name = "transform",
description = "Local transform matrix"
},
{
type = "int",
name = "meshCount",
description = "Number of meshes"
},
{
type = "int",
name = "materialCount",
description = "Number of materials"
},
{
type = "Mesh *",
name = "meshes",
description = "Meshes array"
},
{
type = "Material *",
name = "materials",
description = "Materials array"
},
{
type = "int *",
name = "meshMaterial",
description = "Mesh material number"
},
{
type = "int",
name = "boneCount",
description = "Number of bones"
},
{
type = "BoneInfo *",
name = "bones",
description = "Bones information (skeleton)"
},
{
type = "Transform *",
name = "bindPose",
description = "Bones base transformation (pose)"
}
}
},
{
name = "ModelAnimation",
description = "ModelAnimation",
fields = {
{
type = "int",
name = "boneCount",
description = "Number of bones"
},
{
type = "int",
name = "frameCount",
description = "Number of animation frames"
},
{
type = "BoneInfo *",
name = "bones",
description = "Bones information (skeleton)"
},
{
type = "Transform **",
name = "framePoses",
description = "Poses array by frame"
},
{
type = "char[32]",
name = "name",
description = "Animation name"
}
}
},
{
name = "Ray",
description = "Ray, ray for raycasting",
fields = {
{
type = "Vector3",
name = "position",
description = "Ray position (origin)"
},
{
type = "Vector3",
name = "direction",
description = "Ray direction (normalized)"
}
}
},
{
name = "RayCollision",
description = "RayCollision, ray hit information",
fields = {
{
type = "bool",
name = "hit",
description = "Did the ray hit something?"
},
{
type = "float",
name = "distance",
description = "Distance to the nearest hit"
},
{
type = "Vector3",
name = "point",
description = "Point of the nearest hit"
},
{
type = "Vector3",
name = "normal",
description = "Surface normal of hit"
}
}
},
{
name = "BoundingBox",
description = "BoundingBox",
fields = {
{
type = "Vector3",
name = "min",
description = "Minimum vertex box-corner"
},
{
type = "Vector3",
name = "max",
description = "Maximum vertex box-corner"
}
}
},
{
name = "Wave",
description = "Wave, audio wave data",
fields = {
{
type = "unsigned int",
name = "frameCount",
description = "Total number of frames (considering channels)"
},
{
type = "unsigned int",
name = "sampleRate",
description = "Frequency (samples per second)"
},
{
type = "unsigned int",
name = "sampleSize",
description = "Bit depth (bits per sample): 8, 16, 32 (24 not supported)"
},
{
type = "unsigned int",
name = "channels",
description = "Number of channels (1-mono, 2-stereo, ...)"
},
{
type = "void *",
name = "data",
description = "Buffer data pointer"
}
}
},
{
name = "AudioStream",
description = "AudioStream, custom audio stream",
fields = {
{
type = "rAudioBuffer *",
name = "buffer",
description = "Pointer to internal data used by the audio system"
},
{
type = "rAudioProcessor *",
name = "processor",
description = "Pointer to internal data processor, useful for audio effects"
},
{
type = "unsigned int",
name = "sampleRate",
description = "Frequency (samples per second)"
},
{
type = "unsigned int",
name = "sampleSize",
description = "Bit depth (bits per sample): 8, 16, 32 (24 not supported)"
},
{
type = "unsigned int",
name = "channels",
description = "Number of channels (1-mono, 2-stereo, ...)"
}
}
},
{
name = "Sound",
description = "Sound",
fields = {
{
type = "AudioStream",
name = "stream",
description = "Audio stream"
},
{
type = "unsigned int",
name = "frameCount",
description = "Total number of frames (considering channels)"
}
}
},
{
name = "Music",
description = "Music, audio stream, anything longer than ~10 seconds should be streamed",
fields = {
{
type = "AudioStream",
name = "stream",
description = "Audio stream"
},
{
type = "unsigned int",
name = "frameCount",
description = "Total number of frames (considering channels)"
},
{
type = "bool",
name = "looping",
description = "Music looping enable"
},
{
type = "int",
name = "ctxType",
description = "Type of music context (audio filetype)"
},
{
type = "void *",
name = "ctxData",
description = "Audio context data, depends on type"
}
}
},
{
name = "VrDeviceInfo",
description = "VrDeviceInfo, Head-Mounted-Display device parameters",
fields = {
{
type = "int",
name = "hResolution",
description = "Horizontal resolution in pixels"
},
{
type = "int",
name = "vResolution",
description = "Vertical resolution in pixels"
},
{
type = "float",
name = "hScreenSize",
description = "Horizontal size in meters"
},
{
type = "float",
name = "vScreenSize",
description = "Vertical size in meters"
},
{
type = "float",
name = "eyeToScreenDistance",
description = "Distance between eye and display in meters"
},
{
type = "float",
name = "lensSeparationDistance",
description = "Lens separation distance in meters"
},
{
type = "float",
name = "interpupillaryDistance",
description = "IPD (distance between pupils) in meters"
},
{
type = "float[4]",
name = "lensDistortionValues",
description = "Lens distortion constant parameters"
},
{
type = "float[4]",
name = "chromaAbCorrection",
description = "Chromatic aberration correction parameters"
}
}
},
{
name = "VrStereoConfig",
description = "VrStereoConfig, VR stereo rendering configuration for simulator",
fields = {
{
type = "Matrix[2]",
name = "projection",
description = "VR projection matrices (per eye)"
},
{
type = "Matrix[2]",
name = "viewOffset",
description = "VR view offset matrices (per eye)"
},
{
type = "float[2]",
name = "leftLensCenter",
description = "VR left lens center"
},
{
type = "float[2]",
name = "rightLensCenter",
description = "VR right lens center"
},
{
type = "float[2]",
name = "leftScreenCenter",
description = "VR left screen center"
},
{
type = "float[2]",
name = "rightScreenCenter",
description = "VR right screen center"
},
{
type = "float[2]",
name = "scale",
description = "VR distortion scale"
},
{
type = "float[2]",
name = "scaleIn",
description = "VR distortion scale in"
}
}
},
{
name = "FilePathList",
description = "File path list",
fields = {
{
type = "unsigned int",
name = "capacity",
description = "Filepaths max entries"
},
{
type = "unsigned int",
name = "count",
description = "Filepaths entries count"
},
{
type = "char **",
name = "paths",
description = "Filepaths entries"
}
}
},
{
name = "AutomationEvent",
description = "Automation event",
fields = {
{
type = "unsigned int",
name = "frame",
description = "Event frame"
},
{
type = "unsigned int",
name = "type",
description = "Event type (AutomationEventType)"
},
{
type = "int[4]",
name = "params",
description = "Event parameters (if required)"
}
}
},
{
name = "AutomationEventList",
description = "Automation event list",
fields = {
{
type = "unsigned int",
name = "capacity",
description = "Events max entries (MAX_AUTOMATION_EVENTS)"
},
{
type = "unsigned int",
name = "count",
description = "Events entries count"
},
{
type = "AutomationEvent *",
name = "events",
description = "Events entries"
}
}
}
},
aliases = {
{
type = "Vector4",
name = "Quaternion",
description = "Quaternion, 4 components (Vector4 alias)"
},
{
type = "Texture",
name = "Texture2D",
description = "Texture2D, same as Texture"
},
{
type = "Texture",
name = "TextureCubemap",
description = "TextureCubemap, same as Texture"
},
{
type = "RenderTexture",
name = "RenderTexture2D",
description = "RenderTexture2D, same as RenderTexture"
},
{
type = "Camera3D",
name = "Camera",
description = "Camera type fallback, defaults to Camera3D"
}
},
enums = {
{
name = "ConfigFlags",
description = "System/Window config flags",
values = {
{
name = "FLAG_VSYNC_HINT",
value = 64,
description = "Set to try enabling V-Sync on GPU"
},
{
name = "FLAG_FULLSCREEN_MODE",
value = 2,
description = "Set to run program in fullscreen"
},
{
name = "FLAG_WINDOW_RESIZABLE",
value = 4,
description = "Set to allow resizable window"
},
{
name = "FLAG_WINDOW_UNDECORATED",
value = 8,
description = "Set to disable window decoration (frame and buttons)"
},
{
name = "FLAG_WINDOW_HIDDEN",
value = 128,
description = "Set to hide window"
},
{
name = "FLAG_WINDOW_MINIMIZED",
value = 512,
description = "Set to minimize window (iconify)"
},
{
name = "FLAG_WINDOW_MAXIMIZED",
value = 1024,
description = "Set to maximize window (expanded to monitor)"
},
{
name = "FLAG_WINDOW_UNFOCUSED",
value = 2048,
description = "Set to window non focused"
},
{
name = "FLAG_WINDOW_TOPMOST",
value = 4096,
description = "Set to window always on top"
},
{
name = "FLAG_WINDOW_ALWAYS_RUN",
value = 256,
description = "Set to allow windows running while minimized"
},
{
name = "FLAG_WINDOW_TRANSPARENT",
value = 16,
description = "Set to allow transparent framebuffer"
},
{
name = "FLAG_WINDOW_HIGHDPI",
value = 8192,
description = "Set to support HighDPI"
},
{
name = "FLAG_WINDOW_MOUSE_PASSTHROUGH",
value = 16384,
description = "Set to support mouse passthrough, only supported when FLAG_WINDOW_UNDECORATED"
},
{
name = "FLAG_BORDERLESS_WINDOWED_MODE",
value = 32768,
description = "Set to run program in borderless windowed mode"
},
{
name = "FLAG_MSAA_4X_HINT",
value = 32,
description = "Set to try enabling MSAA 4X"
},
{
name = "FLAG_INTERLACED_HINT",
value = 65536,
description = "Set to try enabling interlaced video format (for V3D)"
}
}
},
{
name = "TraceLogLevel",
description = "Trace log level",
values = {
{
name = "LOG_ALL",
value = 0,
description = "Display all logs"
},
{
name = "LOG_TRACE",
value = 1,
description = "Trace logging, intended for internal use only"
},
{
name = "LOG_DEBUG",
value = 2,
description = "Debug logging, used for internal debugging, it should be disabled on release builds"
},
{
name = "LOG_INFO",
value = 3,
description = "Info logging, used for program execution info"
},
{
name = "LOG_WARNING",
value = 4,
description = "Warning logging, used on recoverable failures"
},
{
name = "LOG_ERROR",
value = 5,
description = "Error logging, used on unrecoverable failures"
},
{
name = "LOG_FATAL",
value = 6,
description = "Fatal logging, used to abort program: exit(EXIT_FAILURE)"
},
{
name = "LOG_NONE",
value = 7,
description = "Disable logging"
}
}
},
{
name = "KeyboardKey",
description = "Keyboard keys (US keyboard layout)",
values = {
{
name = "KEY_NULL",
value = 0,
description = "Key: NULL, used for no key pressed"
},
{
name = "KEY_APOSTROPHE",
value = 39,
description = "Key: '"
},
{
name = "KEY_COMMA",
value = 44,
description = "Key: ,"
},
{
name = "KEY_MINUS",
value = 45,
description = "Key: -"
},
{
name = "KEY_PERIOD",
value = 46,
description = "Key: ."
},
{
name = "KEY_SLASH",
value = 47,
description = "Key: /"
},
{
name = "KEY_ZERO",
value = 48,
description = "Key: 0"
},
{
name = "KEY_ONE",
value = 49,
description = "Key: 1"
},
{
name = "KEY_TWO",
value = 50,
description = "Key: 2"
},
{
name = "KEY_THREE",
value = 51,
description = "Key: 3"
},
{
name = "KEY_FOUR",
value = 52,
description = "Key: 4"
},
{
name = "KEY_FIVE",
value = 53,
description = "Key: 5"
},
{
name = "KEY_SIX",
value = 54,
description = "Key: 6"
},
{
name = "KEY_SEVEN",
value = 55,
description = "Key: 7"
},
{
name = "KEY_EIGHT",
value = 56,
description = "Key: 8"
},
{
name = "KEY_NINE",
value = 57,
description = "Key: 9"
},
{
name = "KEY_SEMICOLON",
value = 59,
description = "Key: ;"
},
{
name = "KEY_EQUAL",
value = 61,
description = "Key: ="
},
{
name = "KEY_A",
value = 65,
description = "Key: A | a"
},
{
name = "KEY_B",
value = 66,
description = "Key: B | b"
},
{
name = "KEY_C",
value = 67,
description = "Key: C | c"
},
{
name = "KEY_D",
value = 68,
description = "Key: D | d"
},
{
name = "KEY_E",
value = 69,
description = "Key: E | e"
},
{
name = "KEY_F",
value = 70,
description = "Key: F | f"
},
{
name = "KEY_G",
value = 71,
description = "Key: G | g"
},
{
name = "KEY_H",
value = 72,
description = "Key: H | h"
},
{
name = "KEY_I",
value = 73,
description = "Key: I | i"
},
{
name = "KEY_J",
value = 74,
description = "Key: J | j"
},
{
name = "KEY_K",
value = 75,
description = "Key: K | k"
},
{
name = "KEY_L",
value = 76,
description = "Key: L | l"
},
{
name = "KEY_M",
value = 77,
description = "Key: M | m"
},
{
name = "KEY_N",
value = 78,
description = "Key: N | n"
},
{
name = "KEY_O",
value = 79,
description = "Key: O | o"
},
{
name = "KEY_P",
value = 80,
description = "Key: P | p"
},
{
name = "KEY_Q",
value = 81,
description = "Key: Q | q"
},
{
name = "KEY_R",
value = 82,
description = "Key: R | r"
},
{
name = "KEY_S",
value = 83,
description = "Key: S | s"
},
{
name = "KEY_T",
value = 84,
description = "Key: T | t"
},
{
name = "KEY_U",
value = 85,
description = "Key: U | u"
},
{
name = "KEY_V",
value = 86,
description = "Key: V | v"
},
{
name = "KEY_W",
value = 87,
description = "Key: W | w"
},
{
name = "KEY_X",
value = 88,
description = "Key: X | x"
},
{
name = "KEY_Y",
value = 89,
description = "Key: Y | y"
},
{
name = "KEY_Z",
value = 90,
description = "Key: Z | z"
},
{
name = "KEY_LEFT_BRACKET",
value = 91,
description = "Key: ["
},
{
name = "KEY_BACKSLASH",
value = 92,
description = "Key: '\\'"
},
{
name = "KEY_RIGHT_BRACKET",
value = 93,
description = "Key: ]"
},
{
name = "KEY_GRAVE",
value = 96,
description = "Key: `"
},
{
name = "KEY_SPACE",
value = 32,
description = "Key: Space"
},
{
name = "KEY_ESCAPE",
value = 256,
description = "Key: Esc"
},
{
name = "KEY_ENTER",
value = 257,
description = "Key: Enter"
},
{
name = "KEY_TAB",
value = 258,
description = "Key: Tab"
},
{
name = "KEY_BACKSPACE",
value = 259,
description = "Key: Backspace"
},
{
name = "KEY_INSERT",
value = 260,
description = "Key: Ins"
},
{
name = "KEY_DELETE",
value = 261,
description = "Key: Del"
},
{
name = "KEY_RIGHT",
value = 262,
description = "Key: Cursor right"
},
{
name = "KEY_LEFT",
value = 263,
description = "Key: Cursor left"
},
{
name = "KEY_DOWN",
value = 264,
description = "Key: Cursor down"
},
{
name = "KEY_UP",
value = 265,
description = "Key: Cursor up"
},
{
name = "KEY_PAGE_UP",
value = 266,
description = "Key: Page up"
},
{
name = "KEY_PAGE_DOWN",
value = 267,
description = "Key: Page down"
},
{
name = "KEY_HOME",
value = 268,
description = "Key: Home"
},
{
name = "KEY_END",
value = 269,
description = "Key: End"
},
{
name = "KEY_CAPS_LOCK",
value = 280,
description = "Key: Caps lock"
},
{
name = "KEY_SCROLL_LOCK",
value = 281,
description = "Key: Scroll down"
},
{
name = "KEY_NUM_LOCK",
value = 282,
description = "Key: Num lock"
},
{
name = "KEY_PRINT_SCREEN",
value = 283,
description = "Key: Print screen"
},
{
name = "KEY_PAUSE",
value = 284,
description = "Key: Pause"
},
{
name = "KEY_F1",
value = 290,
description = "Key: F1"
},
{
name = "KEY_F2",
value = 291,
description = "Key: F2"
},
{
name = "KEY_F3",
value = 292,
description = "Key: F3"
},
{
name = "KEY_F4",
value = 293,
description = "Key: F4"
},
{
name = "KEY_F5",
value = 294,
description = "Key: F5"
},
{
name = "KEY_F6",
value = 295,
description = "Key: F6"
},
{
name = "KEY_F7",
value = 296,
description = "Key: F7"
},
{
name = "KEY_F8",
value = 297,
description = "Key: F8"
},
{
name = "KEY_F9",
value = 298,
description = "Key: F9"
},
{
name = "KEY_F10",
value = 299,
description = "Key: F10"
},
{
name = "KEY_F11",
value = 300,
description = "Key: F11"
},
{
name = "KEY_F12",
value = 301,
description = "Key: F12"
},
{
name = "KEY_LEFT_SHIFT",
value = 340,
description = "Key: Shift left"
},
{
name = "KEY_LEFT_CONTROL",
value = 341,
description = "Key: Control left"
},
{
name = "KEY_LEFT_ALT",
value = 342,
description = "Key: Alt left"
},
{
name = "KEY_LEFT_SUPER",
value = 343,
description = "Key: Super left"
},
{
name = "KEY_RIGHT_SHIFT",
value = 344,
description = "Key: Shift right"
},
{
name = "KEY_RIGHT_CONTROL",
value = 345,
description = "Key: Control right"
},
{
name = "KEY_RIGHT_ALT",
value = 346,
description = "Key: Alt right"
},
{
name = "KEY_RIGHT_SUPER",
value = 347,
description = "Key: Super right"
},
{
name = "KEY_KB_MENU",
value = 348,
description = "Key: KB menu"
},
{
name = "KEY_KP_0",
value = 320,
description = "Key: Keypad 0"
},
{
name = "KEY_KP_1",
value = 321,
description = "Key: Keypad 1"
},
{
name = "KEY_KP_2",
value = 322,
description = "Key: Keypad 2"
},
{
name = "KEY_KP_3",
value = 323,
description = "Key: Keypad 3"
},
{
name = "KEY_KP_4",
value = 324,
description = "Key: Keypad 4"
},
{
name = "KEY_KP_5",
value = 325,
description = "Key: Keypad 5"
},
{
name = "KEY_KP_6",
value = 326,
description = "Key: Keypad 6"
},
{
name = "KEY_KP_7",
value = 327,
description = "Key: Keypad 7"
},
{
name = "KEY_KP_8",
value = 328,
description = "Key: Keypad 8"
},
{
name = "KEY_KP_9",
value = 329,
description = "Key: Keypad 9"
},
{
name = "KEY_KP_DECIMAL",
value = 330,
description = "Key: Keypad ."
},
{
name = "KEY_KP_DIVIDE",
value = 331,
description = "Key: Keypad /"
},
{
name = "KEY_KP_MULTIPLY",
value = 332,
description = "Key: Keypad *"
},
{
name = "KEY_KP_SUBTRACT",
value = 333,
description = "Key: Keypad -"
},
{
name = "KEY_KP_ADD",
value = 334,
description = "Key: Keypad +"
},
{
name = "KEY_KP_ENTER",
value = 335,
description = "Key: Keypad Enter"
},
{
name = "KEY_KP_EQUAL",
value = 336,
description = "Key: Keypad ="
},
{
name = "KEY_BACK",
value = 4,
description = "Key: Android back button"
},
{
name = "KEY_MENU",
value = 5,
description = "Key: Android menu button"
},
{
name = "KEY_VOLUME_UP",
value = 24,
description = "Key: Android volume up button"
},
{
name = "KEY_VOLUME_DOWN",
value = 25,
description = "Key: Android volume down button"
}
}
},
{
name = "MouseButton",
description = "Mouse buttons",
values = {
{
name = "MOUSE_BUTTON_LEFT",
value = 0,
description = "Mouse button left"
},
{
name = "MOUSE_BUTTON_RIGHT",
value = 1,
description = "Mouse button right"
},
{
name = "MOUSE_BUTTON_MIDDLE",
value = 2,
description = "Mouse button middle (pressed wheel)"
},
{
name = "MOUSE_BUTTON_SIDE",
value = 3,
description = "Mouse button side (advanced mouse device)"
},
{
name = "MOUSE_BUTTON_EXTRA",
value = 4,
description = "Mouse button extra (advanced mouse device)"
},
{
name = "MOUSE_BUTTON_FORWARD",
value = 5,
description = "Mouse button forward (advanced mouse device)"
},
{
name = "MOUSE_BUTTON_BACK",
value = 6,
description = "Mouse button back (advanced mouse device)"
}
}
},
{
name = "MouseCursor",
description = "Mouse cursor",
values = {
{
name = "MOUSE_CURSOR_DEFAULT",
value = 0,
description = "Default pointer shape"
},
{
name = "MOUSE_CURSOR_ARROW",
value = 1,
description = "Arrow shape"
},
{
name = "MOUSE_CURSOR_IBEAM",
value = 2,
description = "Text writing cursor shape"
},
{
name = "MOUSE_CURSOR_CROSSHAIR",
value = 3,
description = "Cross shape"
},
{
name = "MOUSE_CURSOR_POINTING_HAND",
value = 4,
description = "Pointing hand cursor"
},
{
name = "MOUSE_CURSOR_RESIZE_EW",
value = 5,
description = "Horizontal resize/move arrow shape"
},
{
name = "MOUSE_CURSOR_RESIZE_NS",
value = 6,
description = "Vertical resize/move arrow shape"
},
{
name = "MOUSE_CURSOR_RESIZE_NWSE",
value = 7,
description = "Top-left to bottom-right diagonal resize/move arrow shape"
},
{
name = "MOUSE_CURSOR_RESIZE_NESW",
value = 8,
description = "The top-right to bottom-left diagonal resize/move arrow shape"
},
{
name = "MOUSE_CURSOR_RESIZE_ALL",
value = 9,
description = "The omnidirectional resize/move cursor shape"
},
{
name = "MOUSE_CURSOR_NOT_ALLOWED",
value = 10,
description = "The operation-not-allowed shape"
}
}
},
{
name = "GamepadButton",
description = "Gamepad buttons",
values = {
{
name = "GAMEPAD_BUTTON_UNKNOWN",
value = 0,
description = "Unknown button, just for error checking"
},
{
name = "GAMEPAD_BUTTON_LEFT_FACE_UP",
value = 1,
description = "Gamepad left DPAD up button"
},
{
name = "GAMEPAD_BUTTON_LEFT_FACE_RIGHT",
value = 2,
description = "Gamepad left DPAD right button"
},
{
name = "GAMEPAD_BUTTON_LEFT_FACE_DOWN",
value = 3,
description = "Gamepad left DPAD down button"
},
{
name = "GAMEPAD_BUTTON_LEFT_FACE_LEFT",
value = 4,
description = "Gamepad left DPAD left button"
},
{
name = "GAMEPAD_BUTTON_RIGHT_FACE_UP",
value = 5,
description = "Gamepad right button up (i.e. PS3: Triangle, Xbox: Y)"
},
{
name = "GAMEPAD_BUTTON_RIGHT_FACE_RIGHT",
value = 6,
description = "Gamepad right button right (i.e. PS3: Circle, Xbox: B)"
},
{
name = "GAMEPAD_BUTTON_RIGHT_FACE_DOWN",
value = 7,
description = "Gamepad right button down (i.e. PS3: Cross, Xbox: A)"
},
{
name = "GAMEPAD_BUTTON_RIGHT_FACE_LEFT",
value = 8,
description = "Gamepad right button left (i.e. PS3: Square, Xbox: X)"
},
{
name = "GAMEPAD_BUTTON_LEFT_TRIGGER_1",
value = 9,
description = "Gamepad top/back trigger left (first), it could be a trailing button"
},
{
name = "GAMEPAD_BUTTON_LEFT_TRIGGER_2",
value = 10,
description = "Gamepad top/back trigger left (second), it could be a trailing button"
},
{
name = "GAMEPAD_BUTTON_RIGHT_TRIGGER_1",
value = 11,
description = "Gamepad top/back trigger right (first), it could be a trailing button"
},
{
name = "GAMEPAD_BUTTON_RIGHT_TRIGGER_2",
value = 12,
description = "Gamepad top/back trigger right (second), it could be a trailing button"
},
{
name = "GAMEPAD_BUTTON_MIDDLE_LEFT",
value = 13,
description = "Gamepad center buttons, left one (i.e. PS3: Select)"
},
{
name = "GAMEPAD_BUTTON_MIDDLE",
value = 14,
description = "Gamepad center buttons, middle one (i.e. PS3: PS, Xbox: XBOX)"
},
{
name = "GAMEPAD_BUTTON_MIDDLE_RIGHT",
value = 15,
description = "Gamepad center buttons, right one (i.e. PS3: Start)"
},
{
name = "GAMEPAD_BUTTON_LEFT_THUMB",
value = 16,
description = "Gamepad joystick pressed button left"
},
{
name = "GAMEPAD_BUTTON_RIGHT_THUMB",
value = 17,
description = "Gamepad joystick pressed button right"
}
}
},
{
name = "GamepadAxis",
description = "Gamepad axis",
values = {
{
name = "GAMEPAD_AXIS_LEFT_X",
value = 0,
description = "Gamepad left stick X axis"
},
{
name = "GAMEPAD_AXIS_LEFT_Y",
value = 1,
description = "Gamepad left stick Y axis"
},
{
name = "GAMEPAD_AXIS_RIGHT_X",
value = 2,
description = "Gamepad right stick X axis"
},
{
name = "GAMEPAD_AXIS_RIGHT_Y",
value = 3,
description = "Gamepad right stick Y axis"
},
{
name = "GAMEPAD_AXIS_LEFT_TRIGGER",
value = 4,
description = "Gamepad back trigger left, pressure level: [1..-1]"
},
{
name = "GAMEPAD_AXIS_RIGHT_TRIGGER",
value = 5,
description = "Gamepad back trigger right, pressure level: [1..-1]"
}
}
},
{
name = "MaterialMapIndex",
description = "Material map index",
values = {
{
name = "MATERIAL_MAP_ALBEDO",
value = 0,
description = "Albedo material (same as: MATERIAL_MAP_DIFFUSE)"
},
{
name = "MATERIAL_MAP_METALNESS",
value = 1,
description = "Metalness material (same as: MATERIAL_MAP_SPECULAR)"
},
{
name = "MATERIAL_MAP_NORMAL",
value = 2,
description = "Normal material"
},
{
name = "MATERIAL_MAP_ROUGHNESS",
value = 3,
description = "Roughness material"
},
{
name = "MATERIAL_MAP_OCCLUSION",
value = 4,
description = "Ambient occlusion material"
},
{
name = "MATERIAL_MAP_EMISSION",
value = 5,
description = "Emission material"
},
{
name = "MATERIAL_MAP_HEIGHT",
value = 6,
description = "Heightmap material"
},
{
name = "MATERIAL_MAP_CUBEMAP",
value = 7,
description = "Cubemap material (NOTE: Uses GL_TEXTURE_CUBE_MAP)"
},
{
name = "MATERIAL_MAP_IRRADIANCE",
value = 8,
description = "Irradiance material (NOTE: Uses GL_TEXTURE_CUBE_MAP)"
},
{
name = "MATERIAL_MAP_PREFILTER",
value = 9,
description = "Prefilter material (NOTE: Uses GL_TEXTURE_CUBE_MAP)"
},
{
name = "MATERIAL_MAP_BRDF",
value = 10,
description = "Brdf material"
}
}
},
{
name = "ShaderLocationIndex",
description = "Shader location index",
values = {
{
name = "SHADER_LOC_VERTEX_POSITION",
value = 0,
description = "Shader location: vertex attribute: position"
},
{
name = "SHADER_LOC_VERTEX_TEXCOORD01",
value = 1,
description = "Shader location: vertex attribute: texcoord01"
},
{
name = "SHADER_LOC_VERTEX_TEXCOORD02",
value = 2,
description = "Shader location: vertex attribute: texcoord02"
},
{
name = "SHADER_LOC_VERTEX_NORMAL",
value = 3,
description = "Shader location: vertex attribute: normal"
},
{
name = "SHADER_LOC_VERTEX_TANGENT",
value = 4,
description = "Shader location: vertex attribute: tangent"
},
{
name = "SHADER_LOC_VERTEX_COLOR",
value = 5,
description = "Shader location: vertex attribute: color"
},
{
name = "SHADER_LOC_MATRIX_MVP",
value = 6,
description = "Shader location: matrix uniform: model-view-projection"
},
{
name = "SHADER_LOC_MATRIX_VIEW",
value = 7,
description = "Shader location: matrix uniform: view (camera transform)"
},
{
name = "SHADER_LOC_MATRIX_PROJECTION",
value = 8,
description = "Shader location: matrix uniform: projection"
},
{
name = "SHADER_LOC_MATRIX_MODEL",
value = 9,
description = "Shader location: matrix uniform: model (transform)"
},
{
name = "SHADER_LOC_MATRIX_NORMAL",
value = 10,
description = "Shader location: matrix uniform: normal"
},
{
name = "SHADER_LOC_VECTOR_VIEW",
value = 11,
description = "Shader location: vector uniform: view"
},
{
name = "SHADER_LOC_COLOR_DIFFUSE",
value = 12,
description = "Shader location: vector uniform: diffuse color"
},
{
name = "SHADER_LOC_COLOR_SPECULAR",
value = 13,
description = "Shader location: vector uniform: specular color"
},
{
name = "SHADER_LOC_COLOR_AMBIENT",
value = 14,
description = "Shader location: vector uniform: ambient color"
},
{
name = "SHADER_LOC_MAP_ALBEDO",
value = 15,
description = "Shader location: sampler2d texture: albedo (same as: SHADER_LOC_MAP_DIFFUSE)"
},
{
name = "SHADER_LOC_MAP_METALNESS",
value = 16,
description = "Shader location: sampler2d texture: metalness (same as: SHADER_LOC_MAP_SPECULAR)"
},
{
name = "SHADER_LOC_MAP_NORMAL",
value = 17,
description = "Shader location: sampler2d texture: normal"
},
{
name = "SHADER_LOC_MAP_ROUGHNESS",
value = 18,
description = "Shader location: sampler2d texture: roughness"
},
{
name = "SHADER_LOC_MAP_OCCLUSION",
value = 19,
description = "Shader location: sampler2d texture: occlusion"
},
{
name = "SHADER_LOC_MAP_EMISSION",
value = 20,
description = "Shader location: sampler2d texture: emission"
},
{
name = "SHADER_LOC_MAP_HEIGHT",
value = 21,
description = "Shader location: sampler2d texture: height"
},
{
name = "SHADER_LOC_MAP_CUBEMAP",
value = 22,
description = "Shader location: samplerCube texture: cubemap"
},
{
name = "SHADER_LOC_MAP_IRRADIANCE",
value = 23,
description = "Shader location: samplerCube texture: irradiance"
},
{
name = "SHADER_LOC_MAP_PREFILTER",
value = 24,
description = "Shader location: samplerCube texture: prefilter"
},
{
name = "SHADER_LOC_MAP_BRDF",
value = 25,
description = "Shader location: sampler2d texture: brdf"
},
{
name = "SHADER_LOC_VERTEX_BONEIDS",
value = 26,
description = "Shader location: vertex attribute: boneIds"
},
{
name = "SHADER_LOC_VERTEX_BONEWEIGHTS",
value = 27,
description = "Shader location: vertex attribute: boneWeights"
},
{
name = "SHADER_LOC_BONE_MATRICES",
value = 28,
description = "Shader location: array of matrices uniform: boneMatrices"
},
{
name = "SHADER_LOC_VERTEX_INSTANCE_TX",
value = 29,
description = "Shader location: vertex attribute: instanceTransform"
}
}
},
{
name = "ShaderUniformDataType",
description = "Shader uniform data type",
values = {
{
name = "SHADER_UNIFORM_FLOAT",
value = 0,
description = "Shader uniform type: float"
},
{
name = "SHADER_UNIFORM_VEC2",
value = 1,
description = "Shader uniform type: vec2 (2 float)"
},
{
name = "SHADER_UNIFORM_VEC3",
value = 2,
description = "Shader uniform type: vec3 (3 float)"
},
{
name = "SHADER_UNIFORM_VEC4",
value = 3,
description = "Shader uniform type: vec4 (4 float)"
},
{
name = "SHADER_UNIFORM_INT",
value = 4,
description = "Shader uniform type: int"
},
{
name = "SHADER_UNIFORM_IVEC2",
value = 5,
description = "Shader uniform type: ivec2 (2 int)"
},
{
name = "SHADER_UNIFORM_IVEC3",
value = 6,
description = "Shader uniform type: ivec3 (3 int)"
},
{
name = "SHADER_UNIFORM_IVEC4",
value = 7,
description = "Shader uniform type: ivec4 (4 int)"
},
{
name = "SHADER_UNIFORM_UINT",
value = 8,
description = "Shader uniform type: unsigned int"
},
{
name = "SHADER_UNIFORM_UIVEC2",
value = 9,
description = "Shader uniform type: uivec2 (2 unsigned int)"
},
{
name = "SHADER_UNIFORM_UIVEC3",
value = 10,
description = "Shader uniform type: uivec3 (3 unsigned int)"
},
{
name = "SHADER_UNIFORM_UIVEC4",
value = 11,
description = "Shader uniform type: uivec4 (4 unsigned int)"
},
{
name = "SHADER_UNIFORM_SAMPLER2D",
value = 12,
description = "Shader uniform type: sampler2d"
}
}
},
{
name = "ShaderAttributeDataType",
description = "Shader attribute data types",
values = {
{
name = "SHADER_ATTRIB_FLOAT",
value = 0,
description = "Shader attribute type: float"
},
{
name = "SHADER_ATTRIB_VEC2",
value = 1,
description = "Shader attribute type: vec2 (2 float)"
},
{
name = "SHADER_ATTRIB_VEC3",
value = 2,
description = "Shader attribute type: vec3 (3 float)"
},
{
name = "SHADER_ATTRIB_VEC4",
value = 3,
description = "Shader attribute type: vec4 (4 float)"
}
}
},
{
name = "PixelFormat",
description = "Pixel formats",
values = {
{
name = "PIXELFORMAT_UNCOMPRESSED_GRAYSCALE",
value = 1,
description = "8 bit per pixel (no alpha)"
},
{
name = "PIXELFORMAT_UNCOMPRESSED_GRAY_ALPHA",
value = 2,
description = "8*2 bpp (2 channels)"
},
{
name = "PIXELFORMAT_UNCOMPRESSED_R5G6B5",
value = 3,
description = "16 bpp"
},
{
name = "PIXELFORMAT_UNCOMPRESSED_R8G8B8",
value = 4,
description = "24 bpp"
},
{
name = "PIXELFORMAT_UNCOMPRESSED_R5G5B5A1",
value = 5,
description = "16 bpp (1 bit alpha)"
},
{
name = "PIXELFORMAT_UNCOMPRESSED_R4G4B4A4",
value = 6,
description = "16 bpp (4 bit alpha)"
},
{
name = "PIXELFORMAT_UNCOMPRESSED_R8G8B8A8",
value = 7,
description = "32 bpp"
},
{
name = "PIXELFORMAT_UNCOMPRESSED_R32",
value = 8,
description = "32 bpp (1 channel - float)"
},
{
name = "PIXELFORMAT_UNCOMPRESSED_R32G32B32",
value = 9,
description = "32*3 bpp (3 channels - float)"
},
{
name = "PIXELFORMAT_UNCOMPRESSED_R32G32B32A32",
value = 10,
description = "32*4 bpp (4 channels - float)"
},
{
name = "PIXELFORMAT_UNCOMPRESSED_R16",
value = 11,
description = "16 bpp (1 channel - half float)"
},
{
name = "PIXELFORMAT_UNCOMPRESSED_R16G16B16",
value = 12,
description = "16*3 bpp (3 channels - half float)"
},
{
name = "PIXELFORMAT_UNCOMPRESSED_R16G16B16A16",
value = 13,
description = "16*4 bpp (4 channels - half float)"
},
{
name = "PIXELFORMAT_COMPRESSED_DXT1_RGB",
value = 14,
description = "4 bpp (no alpha)"
},
{
name = "PIXELFORMAT_COMPRESSED_DXT1_RGBA",
value = 15,
description = "4 bpp (1 bit alpha)"
},
{
name = "PIXELFORMAT_COMPRESSED_DXT3_RGBA",
value = 16,
description = "8 bpp"
},
{
name = "PIXELFORMAT_COMPRESSED_DXT5_RGBA",
value = 17,
description = "8 bpp"
},
{
name = "PIXELFORMAT_COMPRESSED_ETC1_RGB",
value = 18,
description = "4 bpp"
},
{
name = "PIXELFORMAT_COMPRESSED_ETC2_RGB",
value = 19,
description = "4 bpp"
},
{
name = "PIXELFORMAT_COMPRESSED_ETC2_EAC_RGBA",
value = 20,
description = "8 bpp"
},
{
name = "PIXELFORMAT_COMPRESSED_PVRT_RGB",
value = 21,
description = "4 bpp"
},
{
name = "PIXELFORMAT_COMPRESSED_PVRT_RGBA",
value = 22,
description = "4 bpp"
},
{
name = "PIXELFORMAT_COMPRESSED_ASTC_4x4_RGBA",
value = 23,
description = "8 bpp"
},
{
name = "PIXELFORMAT_COMPRESSED_ASTC_8x8_RGBA",
value = 24,
description = "2 bpp"
}
}
},
{
name = "TextureFilter",
description = "Texture parameters: filter mode",
values = {
{
name = "TEXTURE_FILTER_POINT",
value = 0,
description = "No filter, just pixel approximation"
},
{
name = "TEXTURE_FILTER_BILINEAR",
value = 1,
description = "Linear filtering"
},
{
name = "TEXTURE_FILTER_TRILINEAR",
value = 2,
description = "Trilinear filtering (linear with mipmaps)"
},
{
name = "TEXTURE_FILTER_ANISOTROPIC_4X",
value = 3,
description = "Anisotropic filtering 4x"
},
{
name = "TEXTURE_FILTER_ANISOTROPIC_8X",
value = 4,
description = "Anisotropic filtering 8x"
},
{
name = "TEXTURE_FILTER_ANISOTROPIC_16X",
value = 5,
description = "Anisotropic filtering 16x"
}
}
},
{
name = "TextureWrap",
description = "Texture parameters: wrap mode",
values = {
{
name = "TEXTURE_WRAP_REPEAT",
value = 0,
description = "Repeats texture in tiled mode"
},
{
name = "TEXTURE_WRAP_CLAMP",
value = 1,
description = "Clamps texture to edge pixel in tiled mode"
},
{
name = "TEXTURE_WRAP_MIRROR_REPEAT",
value = 2,
description = "Mirrors and repeats the texture in tiled mode"
},
{
name = "TEXTURE_WRAP_MIRROR_CLAMP",
value = 3,
description = "Mirrors and clamps to border the texture in tiled mode"
}
}
},
{
name = "CubemapLayout",
description = "Cubemap layouts",
values = {
{
name = "CUBEMAP_LAYOUT_AUTO_DETECT",
value = 0,
description = "Automatically detect layout type"
},
{
name = "CUBEMAP_LAYOUT_LINE_VERTICAL",
value = 1,
description = "Layout is defined by a vertical line with faces"
},
{
name = "CUBEMAP_LAYOUT_LINE_HORIZONTAL",
value = 2,
description = "Layout is defined by a horizontal line with faces"
},
{
name = "CUBEMAP_LAYOUT_CROSS_THREE_BY_FOUR",
value = 3,
description = "Layout is defined by a 3x4 cross with cubemap faces"
},
{
name = "CUBEMAP_LAYOUT_CROSS_FOUR_BY_THREE",
value = 4,
description = "Layout is defined by a 4x3 cross with cubemap faces"
}
}
},
{
name = "FontType",
description = "Font type, defines generation method",
values = {
{
name = "FONT_DEFAULT",
value = 0,
description = "Default font generation, anti-aliased"
},
{
name = "FONT_BITMAP",
value = 1,
description = "Bitmap font generation, no anti-aliasing"
},
{
name = "FONT_SDF",
value = 2,
description = "SDF font generation, requires external shader"
}
}
},
{
name = "BlendMode",
description = "Color blending modes (pre-defined)",
values = {
{
name = "BLEND_ALPHA",
value = 0,
description = "Blend textures considering alpha (default)"
},
{
name = "BLEND_ADDITIVE",
value = 1,
description = "Blend textures adding colors"
},
{
name = "BLEND_MULTIPLIED",
value = 2,
description = "Blend textures multiplying colors"
},
{
name = "BLEND_ADD_COLORS",
value = 3,
description = "Blend textures adding colors (alternative)"
},
{
name = "BLEND_SUBTRACT_COLORS",
value = 4,
description = "Blend textures subtracting colors (alternative)"
},
{
name = "BLEND_ALPHA_PREMULTIPLY",
value = 5,
description = "Blend premultiplied textures considering alpha"
},
{
name = "BLEND_CUSTOM",
value = 6,
description = "Blend textures using custom src/dst factors (use rlSetBlendFactors())"
},
{
name = "BLEND_CUSTOM_SEPARATE",
value = 7,
description = "Blend textures using custom rgb/alpha separate src/dst factors (use rlSetBlendFactorsSeparate())"
}
}
},
{
name = "Gesture",
description = "Gesture",
values = {
{
name = "GESTURE_NONE",
value = 0,
description = "No gesture"
},
{
name = "GESTURE_TAP",
value = 1,
description = "Tap gesture"
},
{
name = "GESTURE_DOUBLETAP",
value = 2,
description = "Double tap gesture"
},
{
name = "GESTURE_HOLD",
value = 4,
description = "Hold gesture"
},
{
name = "GESTURE_DRAG",
value = 8,
description = "Drag gesture"
},
{
name = "GESTURE_SWIPE_RIGHT",
value = 16,
description = "Swipe right gesture"
},
{
name = "GESTURE_SWIPE_LEFT",
value = 32,
description = "Swipe left gesture"
},
{
name = "GESTURE_SWIPE_UP",
value = 64,
description = "Swipe up gesture"
},
{
name = "GESTURE_SWIPE_DOWN",
value = 128,
description = "Swipe down gesture"
},
{
name = "GESTURE_PINCH_IN",
value = 256,
description = "Pinch in gesture"
},
{
name = "GESTURE_PINCH_OUT",
value = 512,
description = "Pinch out gesture"
}
}
},
{
name = "CameraMode",
description = "Camera system modes",
values = {
{
name = "CAMERA_CUSTOM",
value = 0,
description = "Camera custom, controlled by user (UpdateCamera() does nothing)"
},
{
name = "CAMERA_FREE",
value = 1,
description = "Camera free mode"
},
{
name = "CAMERA_ORBITAL",
value = 2,
description = "Camera orbital, around target, zoom supported"
},
{
name = "CAMERA_FIRST_PERSON",
value = 3,
description = "Camera first person"
},
{
name = "CAMERA_THIRD_PERSON",
value = 4,
description = "Camera third person"
}
}
},
{
name = "CameraProjection",
description = "Camera projection",
values = {
{
name = "CAMERA_PERSPECTIVE",
value = 0,
description = "Perspective projection"
},
{
name = "CAMERA_ORTHOGRAPHIC",
value = 1,
description = "Orthographic projection"
}
}
},
{
name = "NPatchLayout",
description = "N-patch layout",
values = {
{
name = "NPATCH_NINE_PATCH",
value = 0,
description = "Npatch layout: 3x3 tiles"
},
{
name = "NPATCH_THREE_PATCH_VERTICAL",
value = 1,
description = "Npatch layout: 1x3 tiles"
},
{
name = "NPATCH_THREE_PATCH_HORIZONTAL",
value = 2,
description = "Npatch layout: 3x1 tiles"
}
}
}
},
callbacks = {
{
name = "TraceLogCallback",
description = "Logging: Redirect trace log messages",
returnType = "void",
params = {
{type = "int", name = "logLevel"},
{type = "const char *", name = "text"},
{type = "va_list", name = "args"}
}
},
{
name = "LoadFileDataCallback",
description = "FileIO: Load binary data",
returnType = "unsigned char *",
params = {
{type = "const char *", name = "fileName"},
{type = "int *", name = "dataSize"}
}
},
{
name = "SaveFileDataCallback",
description = "FileIO: Save binary data",
returnType = "bool",
params = {
{type = "const char *", name = "fileName"},
{type = "void *", name = "data"},
{type = "int", name = "dataSize"}
}
},
{
name = "LoadFileTextCallback",
description = "FileIO: Load text data",
returnType = "char *",
params = {
{type = "const char *", name = "fileName"}
}
},
{
name = "SaveFileTextCallback",
description = "FileIO: Save text data",
returnType = "bool",
params = {
{type = "const char *", name = "fileName"},
{type = "char *", name = "text"}
}
},
{
name = "AudioCallback",
description = "",
returnType = "void",
params = {
{type = "void *", name = "bufferData"},
{type = "unsigned int", name = "frames"}
}
}
},
functions = {
{
name = "InitWindow",
description = "Initialize window and OpenGL context",
returnType = "void",
params = {
{type = "int", name = "width"},
{type = "int", name = "height"},
{type = "const char *", name = "title"}
}
},
{
name = "CloseWindow",
description = "Close window and unload OpenGL context",
returnType = "void"
},
{
name = "WindowShouldClose",
description = "Check if application should close (KEY_ESCAPE pressed or windows close icon clicked)",
returnType = "bool"
},
{
name = "IsWindowReady",
description = "Check if window has been initialized successfully",
returnType = "bool"
},
{
name = "IsWindowFullscreen",
description = "Check if window is currently fullscreen",
returnType = "bool"
},
{
name = "IsWindowHidden",
description = "Check if window is currently hidden",
returnType = "bool"
},
{
name = "IsWindowMinimized",
description = "Check if window is currently minimized",
returnType = "bool"
},
{
name = "IsWindowMaximized",
description = "Check if window is currently maximized",
returnType = "bool"
},
{
name = "IsWindowFocused",
description = "Check if window is currently focused",
returnType = "bool"
},
{
name = "IsWindowResized",
description = "Check if window has been resized last frame",
returnType = "bool"
},
{
name = "IsWindowState",
description = "Check if one specific window flag is enabled",
returnType = "bool",
params = {
{type = "unsigned int", name = "flag"}
}
},
{
name = "SetWindowState",
description = "Set window configuration state using flags",
returnType = "void",
params = {
{type = "unsigned int", name = "flags"}
}
},
{
name = "ClearWindowState",
description = "Clear window configuration state flags",
returnType = "void",
params = {
{type = "unsigned int", name = "flags"}
}
},
{
name = "ToggleFullscreen",
description = "Toggle window state: fullscreen/windowed, resizes monitor to match window resolution",
returnType = "void"
},
{
name = "ToggleBorderlessWindowed",
description = "Toggle window state: borderless windowed, resizes window to match monitor resolution",
returnType = "void"
},
{
name = "MaximizeWindow",
description = "Set window state: maximized, if resizable",
returnType = "void"
},
{
name = "MinimizeWindow",
description = "Set window state: minimized, if resizable",
returnType = "void"
},
{
name = "RestoreWindow",
description = "Restore window from being minimized/maximized",
returnType = "void"
},
{
name = "SetWindowIcon",
description = "Set icon for window (single image, RGBA 32bit)",
returnType = "void",
params = {
{type = "Image", name = "image"}
}
},
{
name = "SetWindowIcons",
description = "Set icon for window (multiple images, RGBA 32bit)",
returnType = "void",
params = {
{type = "Image *", name = "images"},
{type = "int", name = "count"}
}
},
{
name = "SetWindowTitle",
description = "Set title for window",
returnType = "void",
params = {
{type = "const char *", name = "title"}
}
},
{
name = "SetWindowPosition",
description = "Set window position on screen",
returnType = "void",
params = {
{type = "int", name = "x"},
{type = "int", name = "y"}
}
},
{
name = "SetWindowMonitor",
description = "Set monitor for the current window",
returnType = "void",
params = {
{type = "int", name = "monitor"}
}
},
{
name = "SetWindowMinSize",
description = "Set window minimum dimensions (for FLAG_WINDOW_RESIZABLE)",
returnType = "void",
params = {
{type = "int", name = "width"},
{type = "int", name = "height"}
}
},
{
name = "SetWindowMaxSize",
description = "Set window maximum dimensions (for FLAG_WINDOW_RESIZABLE)",
returnType = "void",
params = {
{type = "int", name = "width"},
{type = "int", name = "height"}
}
},
{
name = "SetWindowSize",
description = "Set window dimensions",
returnType = "void",
params = {
{type = "int", name = "width"},
{type = "int", name = "height"}
}
},
{
name = "SetWindowOpacity",
description = "Set window opacity [0.0f..1.0f]",
returnType = "void",
params = {
{type = "float", name = "opacity"}
}
},
{
name = "SetWindowFocused",
description = "Set window focused",
returnType = "void"
},
{
name = "GetWindowHandle",
description = "Get native window handle",
returnType = "void *"
},
{
name = "GetScreenWidth",
description = "Get current screen width",
returnType = "int"
},
{
name = "GetScreenHeight",
description = "Get current screen height",
returnType = "int"
},
{
name = "GetRenderWidth",
description = "Get current render width (it considers HiDPI)",
returnType = "int"
},
{
name = "GetRenderHeight",
description = "Get current render height (it considers HiDPI)",
returnType = "int"
},
{
name = "GetMonitorCount",
description = "Get number of connected monitors",
returnType = "int"
},
{
name = "GetCurrentMonitor",
description = "Get current monitor where window is placed",
returnType = "int"
},
{
name = "GetMonitorPosition",
description = "Get specified monitor position",
returnType = "Vector2",
params = {
{type = "int", name = "monitor"}
}
},
{
name = "GetMonitorWidth",
description = "Get specified monitor width (current video mode used by monitor)",
returnType = "int",
params = {
{type = "int", name = "monitor"}
}
},
{
name = "GetMonitorHeight",
description = "Get specified monitor height (current video mode used by monitor)",
returnType = "int",
params = {
{type = "int", name = "monitor"}
}
},
{
name = "GetMonitorPhysicalWidth",
description = "Get specified monitor physical width in millimetres",
returnType = "int",
params = {
{type = "int", name = "monitor"}
}
},
{
name = "GetMonitorPhysicalHeight",
description = "Get specified monitor physical height in millimetres",
returnType = "int",
params = {
{type = "int", name = "monitor"}
}
},
{
name = "GetMonitorRefreshRate",
description = "Get specified monitor refresh rate",
returnType = "int",
params = {
{type = "int", name = "monitor"}
}
},
{
name = "GetWindowPosition",
description = "Get window position XY on monitor",
returnType = "Vector2"
},
{
name = "GetWindowScaleDPI",
description = "Get window scale DPI factor",
returnType = "Vector2"
},
{
name = "GetMonitorName",
description = "Get the human-readable, UTF-8 encoded name of the specified monitor",
returnType = "const char *",
params = {
{type = "int", name = "monitor"}
}
},
{
name = "SetClipboardText",
description = "Set clipboard text content",
returnType = "void",
params = {
{type = "const char *", name = "text"}
}
},
{
name = "GetClipboardText",
description = "Get clipboard text content",
returnType = "const char *"
},
{
name = "GetClipboardImage",
description = "Get clipboard image content",
returnType = "Image"
},
{
name = "EnableEventWaiting",
description = "Enable waiting for events on EndDrawing(), no automatic event polling",
returnType = "void"
},
{
name = "DisableEventWaiting",
description = "Disable waiting for events on EndDrawing(), automatic events polling",
returnType = "void"
},
{
name = "ShowCursor",
description = "Shows cursor",
returnType = "void"
},
{
name = "HideCursor",
description = "Hides cursor",
returnType = "void"
},
{
name = "IsCursorHidden",
description = "Check if cursor is not visible",
returnType = "bool"
},
{
name = "EnableCursor",
description = "Enables cursor (unlock cursor)",
returnType = "void"
},
{
name = "DisableCursor",
description = "Disables cursor (lock cursor)",
returnType = "void"
},
{
name = "IsCursorOnScreen",
description = "Check if cursor is on the screen",
returnType = "bool"
},
{
name = "ClearBackground",
description = "Set background color (framebuffer clear color)",
returnType = "void",
params = {
{type = "Color", name = "color"}
}
},
{
name = "BeginDrawing",
description = "Setup canvas (framebuffer) to start drawing",
returnType = "void"
},
{
name = "EndDrawing",
description = "End canvas drawing and swap buffers (double buffering)",
returnType = "void"
},
{
name = "BeginMode2D",
description = "Begin 2D mode with custom camera (2D)",
returnType = "void",
params = {
{type = "Camera2D", name = "camera"}
}
},
{
name = "EndMode2D",
description = "Ends 2D mode with custom camera",
returnType = "void"
},
{
name = "BeginMode3D",
description = "Begin 3D mode with custom camera (3D)",
returnType = "void",
params = {
{type = "Camera3D", name = "camera"}
}
},
{
name = "EndMode3D",
description = "Ends 3D mode and returns to default 2D orthographic mode",
returnType = "void"
},
{
name = "BeginTextureMode",
description = "Begin drawing to render texture",
returnType = "void",
params = {
{type = "RenderTexture2D", name = "target"}
}
},
{
name = "EndTextureMode",
description = "Ends drawing to render texture",
returnType = "void"
},
{
name = "BeginShaderMode",
description = "Begin custom shader drawing",
returnType = "void",
params = {
{type = "Shader", name = "shader"}
}
},
{
name = "EndShaderMode",
description = "End custom shader drawing (use default shader)",
returnType = "void"
},
{
name = "BeginBlendMode",
description = "Begin blending mode (alpha, additive, multiplied, subtract, custom)",
returnType = "void",
params = {
{type = "int", name = "mode"}
}
},
{
name = "EndBlendMode",
description = "End blending mode (reset to default: alpha blending)",
returnType = "void"
},
{
name = "BeginScissorMode",
description = "Begin scissor mode (define screen area for following drawing)",
returnType = "void",
params = {
{type = "int", name = "x"},
{type = "int", name = "y"},
{type = "int", name = "width"},
{type = "int", name = "height"}
}
},
{
name = "EndScissorMode",
description = "End scissor mode",
returnType = "void"
},
{
name = "BeginVrStereoMode",
description = "Begin stereo rendering (requires VR simulator)",
returnType = "void",
params = {
{type = "VrStereoConfig", name = "config"}
}
},
{
name = "EndVrStereoMode",
description = "End stereo rendering (requires VR simulator)",
returnType = "void"
},
{
name = "LoadVrStereoConfig",
description = "Load VR stereo config for VR simulator device parameters",
returnType = "VrStereoConfig",
params = {
{type = "VrDeviceInfo", name = "device"}
}
},
{
name = "UnloadVrStereoConfig",
description = "Unload VR stereo config",
returnType = "void",
params = {
{type = "VrStereoConfig", name = "config"}
}
},
{
name = "LoadShader",
description = "Load shader from files and bind default locations",
returnType = "Shader",
params = {
{type = "const char *", name = "vsFileName"},
{type = "const char *", name = "fsFileName"}
}
},
{
name = "LoadShaderFromMemory",
description = "Load shader from code strings and bind default locations",
returnType = "Shader",
params = {
{type = "const char *", name = "vsCode"},
{type = "const char *", name = "fsCode"}
}
},
{
name = "IsShaderValid",
description = "Check if a shader is valid (loaded on GPU)",
returnType = "bool",
params = {
{type = "Shader", name = "shader"}
}
},
{
name = "GetShaderLocation",
description = "Get shader uniform location",
returnType = "int",
params = {
{type = "Shader", name = "shader"},
{type = "const char *", name = "uniformName"}
}
},
{
name = "GetShaderLocationAttrib",
description = "Get shader attribute location",
returnType = "int",
params = {
{type = "Shader", name = "shader"},
{type = "const char *", name = "attribName"}
}
},
{
name = "SetShaderValue",
description = "Set shader uniform value",
returnType = "void",
params = {
{type = "Shader", name = "shader"},
{type = "int", name = "locIndex"},
{type = "const void *", name = "value"},
{type = "int", name = "uniformType"}
}
},
{
name = "SetShaderValueV",
description = "Set shader uniform value vector",
returnType = "void",
params = {
{type = "Shader", name = "shader"},
{type = "int", name = "locIndex"},
{type = "const void *", name = "value"},
{type = "int", name = "uniformType"},
{type = "int", name = "count"}
}
},
{
name = "SetShaderValueMatrix",
description = "Set shader uniform value (matrix 4x4)",
returnType = "void",
params = {
{type = "Shader", name = "shader"},
{type = "int", name = "locIndex"},
{type = "Matrix", name = "mat"}
}
},
{
name = "SetShaderValueTexture",
description = "Set shader uniform value and bind the texture (sampler2d)",
returnType = "void",
params = {
{type = "Shader", name = "shader"},
{type = "int", name = "locIndex"},
{type = "Texture2D", name = "texture"}
}
},
{
name = "UnloadShader",
description = "Unload shader from GPU memory (VRAM)",
returnType = "void",
params = {
{type = "Shader", name = "shader"}
}
},
{
name = "GetScreenToWorldRay",
description = "Get a ray trace from screen position (i.e mouse)",
returnType = "Ray",
params = {
{type = "Vector2", name = "position"},
{type = "Camera", name = "camera"}
}
},
{
name = "GetScreenToWorldRayEx",
description = "Get a ray trace from screen position (i.e mouse) in a viewport",
returnType = "Ray",
params = {
{type = "Vector2", name = "position"},
{type = "Camera", name = "camera"},
{type = "int", name = "width"},
{type = "int", name = "height"}
}
},
{
name = "GetWorldToScreen",
description = "Get the screen space position for a 3d world space position",
returnType = "Vector2",
params = {
{type = "Vector3", name = "position"},
{type = "Camera", name = "camera"}
}
},
{
name = "GetWorldToScreenEx",
description = "Get size position for a 3d world space position",
returnType = "Vector2",
params = {
{type = "Vector3", name = "position"},
{type = "Camera", name = "camera"},
{type = "int", name = "width"},
{type = "int", name = "height"}
}
},
{
name = "GetWorldToScreen2D",
description = "Get the screen space position for a 2d camera world space position",
returnType = "Vector2",
params = {
{type = "Vector2", name = "position"},
{type = "Camera2D", name = "camera"}
}
},
{
name = "GetScreenToWorld2D",
description = "Get the world space position for a 2d camera screen space position",
returnType = "Vector2",
params = {
{type = "Vector2", name = "position"},
{type = "Camera2D", name = "camera"}
}
},
{
name = "GetCameraMatrix",
description = "Get camera transform matrix (view matrix)",
returnType = "Matrix",
params = {
{type = "Camera", name = "camera"}
}
},
{
name = "GetCameraMatrix2D",
description = "Get camera 2d transform matrix",
returnType = "Matrix",
params = {
{type = "Camera2D", name = "camera"}
}
},
{
name = "SetTargetFPS",
description = "Set target FPS (maximum)",
returnType = "void",
params = {
{type = "int", name = "fps"}
}
},
{
name = "GetFrameTime",
description = "Get time in seconds for last frame drawn (delta time)",
returnType = "float"
},
{
name = "GetTime",
description = "Get elapsed time in seconds since InitWindow()",
returnType = "double"
},
{
name = "GetFPS",
description = "Get current FPS",
returnType = "int"
},
{
name = "SwapScreenBuffer",
description = "Swap back buffer with front buffer (screen drawing)",
returnType = "void"
},
{
name = "PollInputEvents",
description = "Register all input events",
returnType = "void"
},
{
name = "WaitTime",
description = "Wait for some time (halt program execution)",
returnType = "void",
params = {
{type = "double", name = "seconds"}
}
},
{
name = "SetRandomSeed",
description = "Set the seed for the random number generator",
returnType = "void",
params = {
{type = "unsigned int", name = "seed"}
}
},
{
name = "GetRandomValue",
description = "Get a random value between min and max (both included)",
returnType = "int",
params = {
{type = "int", name = "min"},
{type = "int", name = "max"}
}
},
{
name = "LoadRandomSequence",
description = "Load random values sequence, no values repeated",
returnType = "int *",
params = {
{type = "unsigned int", name = "count"},
{type = "int", name = "min"},
{type = "int", name = "max"}
}
},
{
name = "UnloadRandomSequence",
description = "Unload random values sequence",
returnType = "void",
params = {
{type = "int *", name = "sequence"}
}
},
{
name = "TakeScreenshot",
description = "Takes a screenshot of current screen (filename extension defines format)",
returnType = "void",
params = {
{type = "const char *", name = "fileName"}
}
},
{
name = "SetConfigFlags",
description = "Setup init configuration flags (view FLAGS)",
returnType = "void",
params = {
{type = "unsigned int", name = "flags"}
}
},
{
name = "OpenURL",
description = "Open URL with default system browser (if available)",
returnType = "void",
params = {
{type = "const char *", name = "url"}
}
},
{
name = "TraceLog",
description = "Show trace log messages (LOG_DEBUG, LOG_INFO, LOG_WARNING, LOG_ERROR...)",
returnType = "void",
params = {
{type = "int", name = "logLevel"},
{type = "const char *", name = "text"},
{type = "...", name = "args"}
}
},
{
name = "SetTraceLogLevel",
description = "Set the current threshold (minimum) log level",
returnType = "void",
params = {
{type = "int", name = "logLevel"}
}
},
{
name = "MemAlloc",
description = "Internal memory allocator",
returnType = "void *",
params = {
{type = "unsigned int", name = "size"}
}
},
{
name = "MemRealloc",
description = "Internal memory reallocator",
returnType = "void *",
params = {
{type = "void *", name = "ptr"},
{type = "unsigned int", name = "size"}
}
},
{
name = "MemFree",
description = "Internal memory free",
returnType = "void",
params = {
{type = "void *", name = "ptr"}
}
},
{
name = "SetTraceLogCallback",
description = "Set custom trace log",
returnType = "void",
params = {
{type = "TraceLogCallback", name = "callback"}
}
},
{
name = "SetLoadFileDataCallback",
description = "Set custom file binary data loader",
returnType = "void",
params = {
{type = "LoadFileDataCallback", name = "callback"}
}
},
{
name = "SetSaveFileDataCallback",
description = "Set custom file binary data saver",
returnType = "void",
params = {
{type = "SaveFileDataCallback", name = "callback"}
}
},
{
name = "SetLoadFileTextCallback",
description = "Set custom file text data loader",
returnType = "void",
params = {
{type = "LoadFileTextCallback", name = "callback"}
}
},
{
name = "SetSaveFileTextCallback",
description = "Set custom file text data saver",
returnType = "void",
params = {
{type = "SaveFileTextCallback", name = "callback"}
}
},
{
name = "LoadFileData",
description = "Load file data as byte array (read)",
returnType = "unsigned char *",
params = {
{type = "const char *", name = "fileName"},
{type = "int *", name = "dataSize"}
}
},
{
name = "UnloadFileData",
description = "Unload file data allocated by LoadFileData()",
returnType = "void",
params = {
{type = "unsigned char *", name = "data"}
}
},
{
name = "SaveFileData",
description = "Save data to file from byte array (write), returns true on success",
returnType = "bool",
params = {
{type = "const char *", name = "fileName"},
{type = "void *", name = "data"},
{type = "int", name = "dataSize"}
}
},
{
name = "ExportDataAsCode",
description = "Export data to code (.h), returns true on success",
returnType = "bool",
params = {
{type = "const unsigned char *", name = "data"},
{type = "int", name = "dataSize"},
{type = "const char *", name = "fileName"}
}
},
{
name = "LoadFileText",
description = "Load text data from file (read), returns a '\\0' terminated string",
returnType = "char *",
params = {
{type = "const char *", name = "fileName"}
}
},
{
name = "UnloadFileText",
description = "Unload file text data allocated by LoadFileText()",
returnType = "void",
params = {
{type = "char *", name = "text"}
}
},
{
name = "SaveFileText",
description = "Save text data to file (write), string must be '\\0' terminated, returns true on success",
returnType = "bool",
params = {
{type = "const char *", name = "fileName"},
{type = "char *", name = "text"}
}
},
{
name = "FileExists",
description = "Check if file exists",
returnType = "bool",
params = {
{type = "const char *", name = "fileName"}
}
},
{
name = "DirectoryExists",
description = "Check if a directory path exists",
returnType = "bool",
params = {
{type = "const char *", name = "dirPath"}
}
},
{
name = "IsFileExtension",
description = "Check file extension (including point: .png, .wav)",
returnType = "bool",
params = {
{type = "const char *", name = "fileName"},
{type = "const char *", name = "ext"}
}
},
{
name = "GetFileLength",
description = "Get file length in bytes (NOTE: GetFileSize() conflicts with windows.h)",
returnType = "int",
params = {
{type = "const char *", name = "fileName"}
}
},
{
name = "GetFileExtension",
description = "Get pointer to extension for a filename string (includes dot: '.png')",
returnType = "const char *",
params = {
{type = "const char *", name = "fileName"}
}
},
{
name = "GetFileName",
description = "Get pointer to filename for a path string",
returnType = "const char *",
params = {
{type = "const char *", name = "filePath"}
}
},
{
name = "GetFileNameWithoutExt",
description = "Get filename string without extension (uses static string)",
returnType = "const char *",
params = {
{type = "const char *", name = "filePath"}
}
},
{
name = "GetDirectoryPath",
description = "Get full path for a given fileName with path (uses static string)",
returnType = "const char *",
params = {
{type = "const char *", name = "filePath"}
}
},
{
name = "GetPrevDirectoryPath",
description = "Get previous directory path for a given path (uses static string)",
returnType = "const char *",
params = {
{type = "const char *", name = "dirPath"}
}
},
{
name = "GetWorkingDirectory",
description = "Get current working directory (uses static string)",
returnType = "const char *"
},
{
name = "GetApplicationDirectory",
description = "Get the directory of the running application (uses static string)",
returnType = "const char *"
},
{
name = "MakeDirectory",
description = "Create directories (including full path requested), returns 0 on success",
returnType = "int",
params = {
{type = "const char *", name = "dirPath"}
}
},
{
name = "ChangeDirectory",
description = "Change working directory, return true on success",
returnType = "bool",
params = {
{type = "const char *", name = "dir"}
}
},
{
name = "IsPathFile",
description = "Check if a given path is a file or a directory",
returnType = "bool",
params = {
{type = "const char *", name = "path"}
}
},
{
name = "IsFileNameValid",
description = "Check if fileName is valid for the platform/OS",
returnType = "bool",
params = {
{type = "const char *", name = "fileName"}
}
},
{
name = "LoadDirectoryFiles",
description = "Load directory filepaths",
returnType = "FilePathList",
params = {
{type = "const char *", name = "dirPath"}
}
},
{
name = "LoadDirectoryFilesEx",
description = "Load directory filepaths with extension filtering and recursive directory scan. Use 'DIR' in the filter string to include directories in the result",
returnType = "FilePathList",
params = {
{type = "const char *", name = "basePath"},
{type = "const char *", name = "filter"},
{type = "bool", name = "scanSubdirs"}
}
},
{
name = "UnloadDirectoryFiles",
description = "Unload filepaths",
returnType = "void",
params = {
{type = "FilePathList", name = "files"}
}
},
{
name = "IsFileDropped",
description = "Check if a file has been dropped into window",
returnType = "bool"
},
{
name = "LoadDroppedFiles",
description = "Load dropped filepaths",
returnType = "FilePathList"
},
{
name = "UnloadDroppedFiles",
description = "Unload dropped filepaths",
returnType = "void",
params = {
{type = "FilePathList", name = "files"}
}
},
{
name = "GetFileModTime",
description = "Get file modification time (last write time)",
returnType = "long",
params = {
{type = "const char *", name = "fileName"}
}
},
{
name = "CompressData",
description = "Compress data (DEFLATE algorithm), memory must be MemFree()",
returnType = "unsigned char *",
params = {
{type = "const unsigned char *", name = "data"},
{type = "int", name = "dataSize"},
{type = "int *", name = "compDataSize"}
}
},
{
name = "DecompressData",
description = "Decompress data (DEFLATE algorithm), memory must be MemFree()",
returnType = "unsigned char *",
params = {
{type = "const unsigned char *", name = "compData"},
{type = "int", name = "compDataSize"},
{type = "int *", name = "dataSize"}
}
},
{
name = "EncodeDataBase64",
description = "Encode data to Base64 string, memory must be MemFree()",
returnType = "char *",
params = {
{type = "const unsigned char *", name = "data"},
{type = "int", name = "dataSize"},
{type = "int *", name = "outputSize"}
}
},
{
name = "DecodeDataBase64",
description = "Decode Base64 string data, memory must be MemFree()",
returnType = "unsigned char *",
params = {
{type = "const unsigned char *", name = "data"},
{type = "int *", name = "outputSize"}
}
},
{
name = "ComputeCRC32",
description = "Compute CRC32 hash code",
returnType = "unsigned int",
params = {
{type = "unsigned char *", name = "data"},
{type = "int", name = "dataSize"}
}
},
{
name = "ComputeMD5",
description = "Compute MD5 hash code, returns static int[4] (16 bytes)",
returnType = "unsigned int *",
params = {
{type = "unsigned char *", name = "data"},
{type = "int", name = "dataSize"}
}
},
{
name = "ComputeSHA1",
description = "Compute SHA1 hash code, returns static int[5] (20 bytes)",
returnType = "unsigned int *",
params = {
{type = "unsigned char *", name = "data"},
{type = "int", name = "dataSize"}
}
},
{
name = "LoadAutomationEventList",
description = "Load automation events list from file, NULL for empty list, capacity = MAX_AUTOMATION_EVENTS",
returnType = "AutomationEventList",
params = {
{type = "const char *", name = "fileName"}
}
},
{
name = "UnloadAutomationEventList",
description = "Unload automation events list from file",
returnType = "void",
params = {
{type = "AutomationEventList", name = "list"}
}
},
{
name = "ExportAutomationEventList",
description = "Export automation events list as text file",
returnType = "bool",
params = {
{type = "AutomationEventList", name = "list"},
{type = "const char *", name = "fileName"}
}
},
{
name = "SetAutomationEventList",
description = "Set automation event list to record to",
returnType = "void",
params = {
{type = "AutomationEventList *", name = "list"}
}
},
{
name = "SetAutomationEventBaseFrame",
description = "Set automation event internal base frame to start recording",
returnType = "void",
params = {
{type = "int", name = "frame"}
}
},
{
name = "StartAutomationEventRecording",
description = "Start recording automation events (AutomationEventList must be set)",
returnType = "void"
},
{
name = "StopAutomationEventRecording",
description = "Stop recording automation events",
returnType = "void"
},
{
name = "PlayAutomationEvent",
description = "Play a recorded automation event",
returnType = "void",
params = {
{type = "AutomationEvent", name = "event"}
}
},
{
name = "IsKeyPressed",
description = "Check if a key has been pressed once",
returnType = "bool",
params = {
{type = "int", name = "key"}
}
},
{
name = "IsKeyPressedRepeat",
description = "Check if a key has been pressed again",
returnType = "bool",
params = {
{type = "int", name = "key"}
}
},
{
name = "IsKeyDown",
description = "Check if a key is being pressed",
returnType = "bool",
params = {
{type = "int", name = "key"}
}
},
{
name = "IsKeyReleased",
description = "Check if a key has been released once",
returnType = "bool",
params = {
{type = "int", name = "key"}
}
},
{
name = "IsKeyUp",
description = "Check if a key is NOT being pressed",
returnType = "bool",
params = {
{type = "int", name = "key"}
}
},
{
name = "GetKeyPressed",
description = "Get key pressed (keycode), call it multiple times for keys queued, returns 0 when the queue is empty",
returnType = "int"
},
{
name = "GetCharPressed",
description = "Get char pressed (unicode), call it multiple times for chars queued, returns 0 when the queue is empty",
returnType = "int"
},
{
name = "GetKeyName",
description = "Get name of a QWERTY key on the current keyboard layout (eg returns string 'q' for KEY_A on an AZERTY keyboard)",
returnType = "const char *",
params = {
{type = "int", name = "key"}
}
},
{
name = "SetExitKey",
description = "Set a custom key to exit program (default is ESC)",
returnType = "void",
params = {
{type = "int", name = "key"}
}
},
{
name = "IsGamepadAvailable",
description = "Check if a gamepad is available",
returnType = "bool",
params = {
{type = "int", name = "gamepad"}
}
},
{
name = "GetGamepadName",
description = "Get gamepad internal name id",
returnType = "const char *",
params = {
{type = "int", name = "gamepad"}
}
},
{
name = "IsGamepadButtonPressed",
description = "Check if a gamepad button has been pressed once",
returnType = "bool",
params = {
{type = "int", name = "gamepad"},
{type = "int", name = "button"}
}
},
{
name = "IsGamepadButtonDown",
description = "Check if a gamepad button is being pressed",
returnType = "bool",
params = {
{type = "int", name = "gamepad"},
{type = "int", name = "button"}
}
},
{
name = "IsGamepadButtonReleased",
description = "Check if a gamepad button has been released once",
returnType = "bool",
params = {
{type = "int", name = "gamepad"},
{type = "int", name = "button"}
}
},
{
name = "IsGamepadButtonUp",
description = "Check if a gamepad button is NOT being pressed",
returnType = "bool",
params = {
{type = "int", name = "gamepad"},
{type = "int", name = "button"}
}
},
{
name = "GetGamepadButtonPressed",
description = "Get the last gamepad button pressed",
returnType = "int"
},
{
name = "GetGamepadAxisCount",
description = "Get gamepad axis count for a gamepad",
returnType = "int",
params = {
{type = "int", name = "gamepad"}
}
},
{
name = "GetGamepadAxisMovement",
description = "Get axis movement value for a gamepad axis",
returnType = "float",
params = {
{type = "int", name = "gamepad"},
{type = "int", name = "axis"}
}
},
{
name = "SetGamepadMappings",
description = "Set internal gamepad mappings (SDL_GameControllerDB)",
returnType = "int",
params = {
{type = "const char *", name = "mappings"}
}
},
{
name = "SetGamepadVibration",
description = "Set gamepad vibration for both motors (duration in seconds)",
returnType = "void",
params = {
{type = "int", name = "gamepad"},
{type = "float", name = "leftMotor"},
{type = "float", name = "rightMotor"},
{type = "float", name = "duration"}
}
},
{
name = "IsMouseButtonPressed",
description = "Check if a mouse button has been pressed once",
returnType = "bool",
params = {
{type = "int", name = "button"}
}
},
{
name = "IsMouseButtonDown",
description = "Check if a mouse button is being pressed",
returnType = "bool",
params = {
{type = "int", name = "button"}
}
},
{
name = "IsMouseButtonReleased",
description = "Check if a mouse button has been released once",
returnType = "bool",
params = {
{type = "int", name = "button"}
}
},
{
name = "IsMouseButtonUp",
description = "Check if a mouse button is NOT being pressed",
returnType = "bool",
params = {
{type = "int", name = "button"}
}
},
{
name = "GetMouseX",
description = "Get mouse position X",
returnType = "int"
},
{
name = "GetMouseY",
description = "Get mouse position Y",
returnType = "int"
},
{
name = "GetMousePosition",
description = "Get mouse position XY",
returnType = "Vector2"
},
{
name = "GetMouseDelta",
description = "Get mouse delta between frames",
returnType = "Vector2"
},
{
name = "SetMousePosition",
description = "Set mouse position XY",
returnType = "void",
params = {
{type = "int", name = "x"},
{type = "int", name = "y"}
}
},
{
name = "SetMouseOffset",
description = "Set mouse offset",
returnType = "void",
params = {
{type = "int", name = "offsetX"},
{type = "int", name = "offsetY"}
}
},
{
name = "SetMouseScale",
description = "Set mouse scaling",
returnType = "void",
params = {
{type = "float", name = "scaleX"},
{type = "float", name = "scaleY"}
}
},
{
name = "GetMouseWheelMove",
description = "Get mouse wheel movement for X or Y, whichever is larger",
returnType = "float"
},
{
name = "GetMouseWheelMoveV",
description = "Get mouse wheel movement for both X and Y",
returnType = "Vector2"
},
{
name = "SetMouseCursor",
description = "Set mouse cursor",
returnType = "void",
params = {
{type = "int", name = "cursor"}
}
},
{
name = "GetTouchX",
description = "Get touch position X for touch point 0 (relative to screen size)",
returnType = "int"
},
{
name = "GetTouchY",
description = "Get touch position Y for touch point 0 (relative to screen size)",
returnType = "int"
},
{
name = "GetTouchPosition",
description = "Get touch position XY for a touch point index (relative to screen size)",
returnType = "Vector2",
params = {
{type = "int", name = "index"}
}
},
{
name = "GetTouchPointId",
description = "Get touch point identifier for given index",
returnType = "int",
params = {
{type = "int", name = "index"}
}
},
{
name = "GetTouchPointCount",
description = "Get number of touch points",
returnType = "int"
},
{
name = "SetGesturesEnabled",
description = "Enable a set of gestures using flags",
returnType = "void",
params = {
{type = "unsigned int", name = "flags"}
}
},
{
name = "IsGestureDetected",
description = "Check if a gesture have been detected",
returnType = "bool",
params = {
{type = "unsigned int", name = "gesture"}
}
},
{
name = "GetGestureDetected",
description = "Get latest detected gesture",
returnType = "int"
},
{
name = "GetGestureHoldDuration",
description = "Get gesture hold time in seconds",
returnType = "float"
},
{
name = "GetGestureDragVector",
description = "Get gesture drag vector",
returnType = "Vector2"
},
{
name = "GetGestureDragAngle",
description = "Get gesture drag angle",
returnType = "float"
},
{
name = "GetGesturePinchVector",
description = "Get gesture pinch delta",
returnType = "Vector2"
},
{
name = "GetGesturePinchAngle",
description = "Get gesture pinch angle",
returnType = "float"
},
{
name = "UpdateCamera",
description = "Update camera position for selected mode",
returnType = "void",
params = {
{type = "Camera *", name = "camera"},
{type = "int", name = "mode"}
}
},
{
name = "UpdateCameraPro",
description = "Update camera movement/rotation",
returnType = "void",
params = {
{type = "Camera *", name = "camera"},
{type = "Vector3", name = "movement"},
{type = "Vector3", name = "rotation"},
{type = "float", name = "zoom"}
}
},
{
name = "SetShapesTexture",
description = "Set texture and rectangle to be used on shapes drawing",
returnType = "void",
params = {
{type = "Texture2D", name = "texture"},
{type = "Rectangle", name = "source"}
}
},
{
name = "GetShapesTexture",
description = "Get texture that is used for shapes drawing",
returnType = "Texture2D"
},
{
name = "GetShapesTextureRectangle",
description = "Get texture source rectangle that is used for shapes drawing",
returnType = "Rectangle"
},
{
name = "DrawPixel",
description = "Draw a pixel using geometry [Can be slow, use with care]",
returnType = "void",
params = {
{type = "int", name = "posX"},
{type = "int", name = "posY"},
{type = "Color", name = "color"}
}
},
{
name = "DrawPixelV",
description = "Draw a pixel using geometry (Vector version) [Can be slow, use with care]",
returnType = "void",
params = {
{type = "Vector2", name = "position"},
{type = "Color", name = "color"}
}
},
{
name = "DrawLine",
description = "Draw a line",
returnType = "void",
params = {
{type = "int", name = "startPosX"},
{type = "int", name = "startPosY"},
{type = "int", name = "endPosX"},
{type = "int", name = "endPosY"},
{type = "Color", name = "color"}
}
},
{
name = "DrawLineV",
description = "Draw a line (using gl lines)",
returnType = "void",
params = {
{type = "Vector2", name = "startPos"},
{type = "Vector2", name = "endPos"},
{type = "Color", name = "color"}
}
},
{
name = "DrawLineEx",
description = "Draw a line (using triangles/quads)",
returnType = "void",
params = {
{type = "Vector2", name = "startPos"},
{type = "Vector2", name = "endPos"},
{type = "float", name = "thick"},
{type = "Color", name = "color"}
}
},
{
name = "DrawLineStrip",
description = "Draw lines sequence (using gl lines)",
returnType = "void",
params = {
{type = "const Vector2 *", name = "points"},
{type = "int", name = "pointCount"},
{type = "Color", name = "color"}
}
},
{
name = "DrawLineBezier",
description = "Draw line segment cubic-bezier in-out interpolation",
returnType = "void",
params = {
{type = "Vector2", name = "startPos"},
{type = "Vector2", name = "endPos"},
{type = "float", name = "thick"},
{type = "Color", name = "color"}
}
},
{
name = "DrawCircle",
description = "Draw a color-filled circle",
returnType = "void",
params = {
{type = "int", name = "centerX"},
{type = "int", name = "centerY"},
{type = "float", name = "radius"},
{type = "Color", name = "color"}
}
},
{
name = "DrawCircleSector",
description = "Draw a piece of a circle",
returnType = "void",
params = {
{type = "Vector2", name = "center"},
{type = "float", name = "radius"},
{type = "float", name = "startAngle"},
{type = "float", name = "endAngle"},
{type = "int", name = "segments"},
{type = "Color", name = "color"}
}
},
{
name = "DrawCircleSectorLines",
description = "Draw circle sector outline",
returnType = "void",
params = {
{type = "Vector2", name = "center"},
{type = "float", name = "radius"},
{type = "float", name = "startAngle"},
{type = "float", name = "endAngle"},
{type = "int", name = "segments"},
{type = "Color", name = "color"}
}
},
{
name = "DrawCircleGradient",
description = "Draw a gradient-filled circle",
returnType = "void",
params = {
{type = "int", name = "centerX"},
{type = "int", name = "centerY"},
{type = "float", name = "radius"},
{type = "Color", name = "inner"},
{type = "Color", name = "outer"}
}
},
{
name = "DrawCircleV",
description = "Draw a color-filled circle (Vector version)",
returnType = "void",
params = {
{type = "Vector2", name = "center"},
{type = "float", name = "radius"},
{type = "Color", name = "color"}
}
},
{
name = "DrawCircleLines",
description = "Draw circle outline",
returnType = "void",
params = {
{type = "int", name = "centerX"},
{type = "int", name = "centerY"},
{type = "float", name = "radius"},
{type = "Color", name = "color"}
}
},
{
name = "DrawCircleLinesV",
description = "Draw circle outline (Vector version)",
returnType = "void",
params = {
{type = "Vector2", name = "center"},
{type = "float", name = "radius"},
{type = "Color", name = "color"}
}
},
{
name = "DrawEllipse",
description = "Draw ellipse",
returnType = "void",
params = {
{type = "int", name = "centerX"},
{type = "int", name = "centerY"},
{type = "float", name = "radiusH"},
{type = "float", name = "radiusV"},
{type = "Color", name = "color"}
}
},
{
name = "DrawEllipseLines",
description = "Draw ellipse outline",
returnType = "void",
params = {
{type = "int", name = "centerX"},
{type = "int", name = "centerY"},
{type = "float", name = "radiusH"},
{type = "float", name = "radiusV"},
{type = "Color", name = "color"}
}
},
{
name = "DrawRing",
description = "Draw ring",
returnType = "void",
params = {
{type = "Vector2", name = "center"},
{type = "float", name = "innerRadius"},
{type = "float", name = "outerRadius"},
{type = "float", name = "startAngle"},
{type = "float", name = "endAngle"},
{type = "int", name = "segments"},
{type = "Color", name = "color"}
}
},
{
name = "DrawRingLines",
description = "Draw ring outline",
returnType = "void",
params = {
{type = "Vector2", name = "center"},
{type = "float", name = "innerRadius"},
{type = "float", name = "outerRadius"},
{type = "float", name = "startAngle"},
{type = "float", name = "endAngle"},
{type = "int", name = "segments"},
{type = "Color", name = "color"}
}
},
{
name = "DrawRectangle",
description = "Draw a color-filled rectangle",
returnType = "void",
params = {
{type = "int", name = "posX"},
{type = "int", name = "posY"},
{type = "int", name = "width"},
{type = "int", name = "height"},
{type = "Color", name = "color"}
}
},
{
name = "DrawRectangleV",
description = "Draw a color-filled rectangle (Vector version)",
returnType = "void",
params = {
{type = "Vector2", name = "position"},
{type = "Vector2", name = "size"},
{type = "Color", name = "color"}
}
},
{
name = "DrawRectangleRec",
description = "Draw a color-filled rectangle",
returnType = "void",
params = {
{type = "Rectangle", name = "rec"},
{type = "Color", name = "color"}
}
},
{
name = "DrawRectanglePro",
description = "Draw a color-filled rectangle with pro parameters",
returnType = "void",
params = {
{type = "Rectangle", name = "rec"},
{type = "Vector2", name = "origin"},
{type = "float", name = "rotation"},
{type = "Color", name = "color"}
}
},
{
name = "DrawRectangleGradientV",
description = "Draw a vertical-gradient-filled rectangle",
returnType = "void",
params = {
{type = "int", name = "posX"},
{type = "int", name = "posY"},
{type = "int", name = "width"},
{type = "int", name = "height"},
{type = "Color", name = "top"},
{type = "Color", name = "bottom"}
}
},
{
name = "DrawRectangleGradientH",
description = "Draw a horizontal-gradient-filled rectangle",
returnType = "void",
params = {
{type = "int", name = "posX"},
{type = "int", name = "posY"},
{type = "int", name = "width"},
{type = "int", name = "height"},
{type = "Color", name = "left"},
{type = "Color", name = "right"}
}
},
{
name = "DrawRectangleGradientEx",
description = "Draw a gradient-filled rectangle with custom vertex colors",
returnType = "void",
params = {
{type = "Rectangle", name = "rec"},
{type = "Color", name = "topLeft"},
{type = "Color", name = "bottomLeft"},
{type = "Color", name = "topRight"},
{type = "Color", name = "bottomRight"}
}
},
{
name = "DrawRectangleLines",
description = "Draw rectangle outline",
returnType = "void",
params = {
{type = "int", name = "posX"},
{type = "int", name = "posY"},
{type = "int", name = "width"},
{type = "int", name = "height"},
{type = "Color", name = "color"}
}
},
{
name = "DrawRectangleLinesEx",
description = "Draw rectangle outline with extended parameters",
returnType = "void",
params = {
{type = "Rectangle", name = "rec"},
{type = "float", name = "lineThick"},
{type = "Color", name = "color"}
}
},
{
name = "DrawRectangleRounded",
description = "Draw rectangle with rounded edges",
returnType = "void",
params = {
{type = "Rectangle", name = "rec"},
{type = "float", name = "roundness"},
{type = "int", name = "segments"},
{type = "Color", name = "color"}
}
},
{
name = "DrawRectangleRoundedLines",
description = "Draw rectangle lines with rounded edges",
returnType = "void",
params = {
{type = "Rectangle", name = "rec"},
{type = "float", name = "roundness"},
{type = "int", name = "segments"},
{type = "Color", name = "color"}
}
},
{
name = "DrawRectangleRoundedLinesEx",
description = "Draw rectangle with rounded edges outline",
returnType = "void",
params = {
{type = "Rectangle", name = "rec"},
{type = "float", name = "roundness"},
{type = "int", name = "segments"},
{type = "float", name = "lineThick"},
{type = "Color", name = "color"}
}
},
{
name = "DrawTriangle",
description = "Draw a color-filled triangle (vertex in counter-clockwise order!)",
returnType = "void",
params = {
{type = "Vector2", name = "v1"},
{type = "Vector2", name = "v2"},
{type = "Vector2", name = "v3"},
{type = "Color", name = "color"}
}
},
{
name = "DrawTriangleLines",
description = "Draw triangle outline (vertex in counter-clockwise order!)",
returnType = "void",
params = {
{type = "Vector2", name = "v1"},
{type = "Vector2", name = "v2"},
{type = "Vector2", name = "v3"},
{type = "Color", name = "color"}
}
},
{
name = "DrawTriangleFan",
description = "Draw a triangle fan defined by points (first vertex is the center)",
returnType = "void",
params = {
{type = "const Vector2 *", name = "points"},
{type = "int", name = "pointCount"},
{type = "Color", name = "color"}
}
},
{
name = "DrawTriangleStrip",
description = "Draw a triangle strip defined by points",
returnType = "void",
params = {
{type = "const Vector2 *", name = "points"},
{type = "int", name = "pointCount"},
{type = "Color", name = "color"}
}
},
{
name = "DrawPoly",
description = "Draw a regular polygon (Vector version)",
returnType = "void",
params = {
{type = "Vector2", name = "center"},
{type = "int", name = "sides"},
{type = "float", name = "radius"},
{type = "float", name = "rotation"},
{type = "Color", name = "color"}
}
},
{
name = "DrawPolyLines",
description = "Draw a polygon outline of n sides",
returnType = "void",
params = {
{type = "Vector2", name = "center"},
{type = "int", name = "sides"},
{type = "float", name = "radius"},
{type = "float", name = "rotation"},
{type = "Color", name = "color"}
}
},
{
name = "DrawPolyLinesEx",
description = "Draw a polygon outline of n sides with extended parameters",
returnType = "void",
params = {
{type = "Vector2", name = "center"},
{type = "int", name = "sides"},
{type = "float", name = "radius"},
{type = "float", name = "rotation"},
{type = "float", name = "lineThick"},
{type = "Color", name = "color"}
}
},
{
name = "DrawSplineLinear",
description = "Draw spline: Linear, minimum 2 points",
returnType = "void",
params = {
{type = "const Vector2 *", name = "points"},
{type = "int", name = "pointCount"},
{type = "float", name = "thick"},
{type = "Color", name = "color"}
}
},
{
name = "DrawSplineBasis",
description = "Draw spline: B-Spline, minimum 4 points",
returnType = "void",
params = {
{type = "const Vector2 *", name = "points"},
{type = "int", name = "pointCount"},
{type = "float", name = "thick"},
{type = "Color", name = "color"}
}
},
{
name = "DrawSplineCatmullRom",
description = "Draw spline: Catmull-Rom, minimum 4 points",
returnType = "void",
params = {
{type = "const Vector2 *", name = "points"},
{type = "int", name = "pointCount"},
{type = "float", name = "thick"},
{type = "Color", name = "color"}
}
},
{
name = "DrawSplineBezierQuadratic",
description = "Draw spline: Quadratic Bezier, minimum 3 points (1 control point): [p1, c2, p3, c4...]",
returnType = "void",
params = {
{type = "const Vector2 *", name = "points"},
{type = "int", name = "pointCount"},
{type = "float", name = "thick"},
{type = "Color", name = "color"}
}
},
{
name = "DrawSplineBezierCubic",
description = "Draw spline: Cubic Bezier, minimum 4 points (2 control points): [p1, c2, c3, p4, c5, c6...]",
returnType = "void",
params = {
{type = "const Vector2 *", name = "points"},
{type = "int", name = "pointCount"},
{type = "float", name = "thick"},
{type = "Color", name = "color"}
}
},
{
name = "DrawSplineSegmentLinear",
description = "Draw spline segment: Linear, 2 points",
returnType = "void",
params = {
{type = "Vector2", name = "p1"},
{type = "Vector2", name = "p2"},
{type = "float", name = "thick"},
{type = "Color", name = "color"}
}
},
{
name = "DrawSplineSegmentBasis",
description = "Draw spline segment: B-Spline, 4 points",
returnType = "void",
params = {
{type = "Vector2", name = "p1"},
{type = "Vector2", name = "p2"},
{type = "Vector2", name = "p3"},
{type = "Vector2", name = "p4"},
{type = "float", name = "thick"},
{type = "Color", name = "color"}
}
},
{
name = "DrawSplineSegmentCatmullRom",
description = "Draw spline segment: Catmull-Rom, 4 points",
returnType = "void",
params = {
{type = "Vector2", name = "p1"},
{type = "Vector2", name = "p2"},
{type = "Vector2", name = "p3"},
{type = "Vector2", name = "p4"},
{type = "float", name = "thick"},
{type = "Color", name = "color"}
}
},
{
name = "DrawSplineSegmentBezierQuadratic",
description = "Draw spline segment: Quadratic Bezier, 2 points, 1 control point",
returnType = "void",
params = {
{type = "Vector2", name = "p1"},
{type = "Vector2", name = "c2"},
{type = "Vector2", name = "p3"},
{type = "float", name = "thick"},
{type = "Color", name = "color"}
}
},
{
name = "DrawSplineSegmentBezierCubic",
description = "Draw spline segment: Cubic Bezier, 2 points, 2 control points",
returnType = "void",
params = {
{type = "Vector2", name = "p1"},
{type = "Vector2", name = "c2"},
{type = "Vector2", name = "c3"},
{type = "Vector2", name = "p4"},
{type = "float", name = "thick"},
{type = "Color", name = "color"}
}
},
{
name = "GetSplinePointLinear",
description = "Get (evaluate) spline point: Linear",
returnType = "Vector2",
params = {
{type = "Vector2", name = "startPos"},
{type = "Vector2", name = "endPos"},
{type = "float", name = "t"}
}
},
{
name = "GetSplinePointBasis",
description = "Get (evaluate) spline point: B-Spline",
returnType = "Vector2",
params = {
{type = "Vector2", name = "p1"},
{type = "Vector2", name = "p2"},
{type = "Vector2", name = "p3"},
{type = "Vector2", name = "p4"},
{type = "float", name = "t"}
}
},
{
name = "GetSplinePointCatmullRom",
description = "Get (evaluate) spline point: Catmull-Rom",
returnType = "Vector2",
params = {
{type = "Vector2", name = "p1"},
{type = "Vector2", name = "p2"},
{type = "Vector2", name = "p3"},
{type = "Vector2", name = "p4"},
{type = "float", name = "t"}
}
},
{
name = "GetSplinePointBezierQuad",
description = "Get (evaluate) spline point: Quadratic Bezier",
returnType = "Vector2",
params = {
{type = "Vector2", name = "p1"},
{type = "Vector2", name = "c2"},
{type = "Vector2", name = "p3"},
{type = "float", name = "t"}
}
},
{
name = "GetSplinePointBezierCubic",
description = "Get (evaluate) spline point: Cubic Bezier",
returnType = "Vector2",
params = {
{type = "Vector2", name = "p1"},
{type = "Vector2", name = "c2"},
{type = "Vector2", name = "c3"},
{type = "Vector2", name = "p4"},
{type = "float", name = "t"}
}
},
{
name = "CheckCollisionRecs",
description = "Check collision between two rectangles",
returnType = "bool",
params = {
{type = "Rectangle", name = "rec1"},
{type = "Rectangle", name = "rec2"}
}
},
{
name = "CheckCollisionCircles",
description = "Check collision between two circles",
returnType = "bool",
params = {
{type = "Vector2", name = "center1"},
{type = "float", name = "radius1"},
{type = "Vector2", name = "center2"},
{type = "float", name = "radius2"}
}
},
{
name = "CheckCollisionCircleRec",
description = "Check collision between circle and rectangle",
returnType = "bool",
params = {
{type = "Vector2", name = "center"},
{type = "float", name = "radius"},
{type = "Rectangle", name = "rec"}
}
},
{
name = "CheckCollisionCircleLine",
description = "Check if circle collides with a line created betweeen two points [p1] and [p2]",
returnType = "bool",
params = {
{type = "Vector2", name = "center"},
{type = "float", name = "radius"},
{type = "Vector2", name = "p1"},
{type = "Vector2", name = "p2"}
}
},
{
name = "CheckCollisionPointRec",
description = "Check if point is inside rectangle",
returnType = "bool",
params = {
{type = "Vector2", name = "point"},
{type = "Rectangle", name = "rec"}
}
},
{
name = "CheckCollisionPointCircle",
description = "Check if point is inside circle",
returnType = "bool",
params = {
{type = "Vector2", name = "point"},
{type = "Vector2", name = "center"},
{type = "float", name = "radius"}
}
},
{
name = "CheckCollisionPointTriangle",
description = "Check if point is inside a triangle",
returnType = "bool",
params = {
{type = "Vector2", name = "point"},
{type = "Vector2", name = "p1"},
{type = "Vector2", name = "p2"},
{type = "Vector2", name = "p3"}
}
},
{
name = "CheckCollisionPointLine",
description = "Check if point belongs to line created between two points [p1] and [p2] with defined margin in pixels [threshold]",
returnType = "bool",
params = {
{type = "Vector2", name = "point"},
{type = "Vector2", name = "p1"},
{type = "Vector2", name = "p2"},
{type = "int", name = "threshold"}
}
},
{
name = "CheckCollisionPointPoly",
description = "Check if point is within a polygon described by array of vertices",
returnType = "bool",
params = {
{type = "Vector2", name = "point"},
{type = "const Vector2 *", name = "points"},
{type = "int", name = "pointCount"}
}
},
{
name = "CheckCollisionLines",
description = "Check the collision between two lines defined by two points each, returns collision point by reference",
returnType = "bool",
params = {
{type = "Vector2", name = "startPos1"},
{type = "Vector2", name = "endPos1"},
{type = "Vector2", name = "startPos2"},
{type = "Vector2", name = "endPos2"},
{type = "Vector2 *", name = "collisionPoint"}
}
},
{
name = "GetCollisionRec",
description = "Get collision rectangle for two rectangles collision",
returnType = "Rectangle",
params = {
{type = "Rectangle", name = "rec1"},
{type = "Rectangle", name = "rec2"}
}
},
{
name = "LoadImage",
description = "Load image from file into CPU memory (RAM)",
returnType = "Image",
params = {
{type = "const char *", name = "fileName"}
}
},
{
name = "LoadImageRaw",
description = "Load image from RAW file data",
returnType = "Image",
params = {
{type = "const char *", name = "fileName"},
{type = "int", name = "width"},
{type = "int", name = "height"},
{type = "int", name = "format"},
{type = "int", name = "headerSize"}
}
},
{
name = "LoadImageAnim",
description = "Load image sequence from file (frames appended to image.data)",
returnType = "Image",
params = {
{type = "const char *", name = "fileName"},
{type = "int *", name = "frames"}
}
},
{
name = "LoadImageAnimFromMemory",
description = "Load image sequence from memory buffer",
returnType = "Image",
params = {
{type = "const char *", name = "fileType"},
{type = "const unsigned char *", name = "fileData"},
{type = "int", name = "dataSize"},
{type = "int *", name = "frames"}
}
},
{
name = "LoadImageFromMemory",
description = "Load image from memory buffer, fileType refers to extension: i.e. '.png'",
returnType = "Image",
params = {
{type = "const char *", name = "fileType"},
{type = "const unsigned char *", name = "fileData"},
{type = "int", name = "dataSize"}
}
},
{
name = "LoadImageFromTexture",
description = "Load image from GPU texture data",
returnType = "Image",
params = {
{type = "Texture2D", name = "texture"}
}
},
{
name = "LoadImageFromScreen",
description = "Load image from screen buffer and (screenshot)",
returnType = "Image"
},
{
name = "IsImageValid",
description = "Check if an image is valid (data and parameters)",
returnType = "bool",
params = {
{type = "Image", name = "image"}
}
},
{
name = "UnloadImage",
description = "Unload image from CPU memory (RAM)",
returnType = "void",
params = {
{type = "Image", name = "image"}
}
},
{
name = "ExportImage",
description = "Export image data to file, returns true on success",
returnType = "bool",
params = {
{type = "Image", name = "image"},
{type = "const char *", name = "fileName"}
}
},
{
name = "ExportImageToMemory",
description = "Export image to memory buffer",
returnType = "unsigned char *",
params = {
{type = "Image", name = "image"},
{type = "const char *", name = "fileType"},
{type = "int *", name = "fileSize"}
}
},
{
name = "ExportImageAsCode",
description = "Export image as code file defining an array of bytes, returns true on success",
returnType = "bool",
params = {
{type = "Image", name = "image"},
{type = "const char *", name = "fileName"}
}
},
{
name = "GenImageColor",
description = "Generate image: plain color",
returnType = "Image",
params = {
{type = "int", name = "width"},
{type = "int", name = "height"},
{type = "Color", name = "color"}
}
},
{
name = "GenImageGradientLinear",
description = "Generate image: linear gradient, direction in degrees [0..360], 0=Vertical gradient",
returnType = "Image",
params = {
{type = "int", name = "width"},
{type = "int", name = "height"},
{type = "int", name = "direction"},
{type = "Color", name = "start"},
{type = "Color", name = "end"}
}
},
{
name = "GenImageGradientRadial",
description = "Generate image: radial gradient",
returnType = "Image",
params = {
{type = "int", name = "width"},
{type = "int", name = "height"},
{type = "float", name = "density"},
{type = "Color", name = "inner"},
{type = "Color", name = "outer"}
}
},
{
name = "GenImageGradientSquare",
description = "Generate image: square gradient",
returnType = "Image",
params = {
{type = "int", name = "width"},
{type = "int", name = "height"},
{type = "float", name = "density"},
{type = "Color", name = "inner"},
{type = "Color", name = "outer"}
}
},
{
name = "GenImageChecked",
description = "Generate image: checked",
returnType = "Image",
params = {
{type = "int", name = "width"},
{type = "int", name = "height"},
{type = "int", name = "checksX"},
{type = "int", name = "checksY"},
{type = "Color", name = "col1"},
{type = "Color", name = "col2"}
}
},
{
name = "GenImageWhiteNoise",
description = "Generate image: white noise",
returnType = "Image",
params = {
{type = "int", name = "width"},
{type = "int", name = "height"},
{type = "float", name = "factor"}
}
},
{
name = "GenImagePerlinNoise",
description = "Generate image: perlin noise",
returnType = "Image",
params = {
{type = "int", name = "width"},
{type = "int", name = "height"},
{type = "int", name = "offsetX"},
{type = "int", name = "offsetY"},
{type = "float", name = "scale"}
}
},
{
name = "GenImageCellular",
description = "Generate image: cellular algorithm, bigger tileSize means bigger cells",
returnType = "Image",
params = {
{type = "int", name = "width"},
{type = "int", name = "height"},
{type = "int", name = "tileSize"}
}
},
{
name = "GenImageText",
description = "Generate image: grayscale image from text data",
returnType = "Image",
params = {
{type = "int", name = "width"},
{type = "int", name = "height"},
{type = "const char *", name = "text"}
}
},
{
name = "ImageCopy",
description = "Create an image duplicate (useful for transformations)",
returnType = "Image",
params = {
{type = "Image", name = "image"}
}
},
{
name = "ImageFromImage",
description = "Create an image from another image piece",
returnType = "Image",
params = {
{type = "Image", name = "image"},
{type = "Rectangle", name = "rec"}
}
},
{
name = "ImageFromChannel",
description = "Create an image from a selected channel of another image (GRAYSCALE)",
returnType = "Image",
params = {
{type = "Image", name = "image"},
{type = "int", name = "selectedChannel"}
}
},
{
name = "ImageText",
description = "Create an image from text (default font)",
returnType = "Image",
params = {
{type = "const char *", name = "text"},
{type = "int", name = "fontSize"},
{type = "Color", name = "color"}
}
},
{
name = "ImageTextEx",
description = "Create an image from text (custom sprite font)",
returnType = "Image",
params = {
{type = "Font", name = "font"},
{type = "const char *", name = "text"},
{type = "float", name = "fontSize"},
{type = "float", name = "spacing"},
{type = "Color", name = "tint"}
}
},
{
name = "ImageFormat",
description = "Convert image data to desired format",
returnType = "void",
params = {
{type = "Image *", name = "image"},
{type = "int", name = "newFormat"}
}
},
{
name = "ImageToPOT",
description = "Convert image to POT (power-of-two)",
returnType = "void",
params = {
{type = "Image *", name = "image"},
{type = "Color", name = "fill"}
}
},
{
name = "ImageCrop",
description = "Crop an image to a defined rectangle",
returnType = "void",
params = {
{type = "Image *", name = "image"},
{type = "Rectangle", name = "crop"}
}
},
{
name = "ImageAlphaCrop",
description = "Crop image depending on alpha value",
returnType = "void",
params = {
{type = "Image *", name = "image"},
{type = "float", name = "threshold"}
}
},
{
name = "ImageAlphaClear",
description = "Clear alpha channel to desired color",
returnType = "void",
params = {
{type = "Image *", name = "image"},
{type = "Color", name = "color"},
{type = "float", name = "threshold"}
}
},
{
name = "ImageAlphaMask",
description = "Apply alpha mask to image",
returnType = "void",
params = {
{type = "Image *", name = "image"},
{type = "Image", name = "alphaMask"}
}
},
{
name = "ImageAlphaPremultiply",
description = "Premultiply alpha channel",
returnType = "void",
params = {
{type = "Image *", name = "image"}
}
},
{
name = "ImageBlurGaussian",
description = "Apply Gaussian blur using a box blur approximation",
returnType = "void",
params = {
{type = "Image *", name = "image"},
{type = "int", name = "blurSize"}
}
},
{
name = "ImageKernelConvolution",
description = "Apply custom square convolution kernel to image",
returnType = "void",
params = {
{type = "Image *", name = "image"},
{type = "const float *", name = "kernel"},
{type = "int", name = "kernelSize"}
}
},
{
name = "ImageResize",
description = "Resize image (Bicubic scaling algorithm)",
returnType = "void",
params = {
{type = "Image *", name = "image"},
{type = "int", name = "newWidth"},
{type = "int", name = "newHeight"}
}
},
{
name = "ImageResizeNN",
description = "Resize image (Nearest-Neighbor scaling algorithm)",
returnType = "void",
params = {
{type = "Image *", name = "image"},
{type = "int", name = "newWidth"},
{type = "int", name = "newHeight"}
}
},
{
name = "ImageResizeCanvas",
description = "Resize canvas and fill with color",
returnType = "void",
params = {
{type = "Image *", name = "image"},
{type = "int", name = "newWidth"},
{type = "int", name = "newHeight"},
{type = "int", name = "offsetX"},
{type = "int", name = "offsetY"},
{type = "Color", name = "fill"}
}
},
{
name = "ImageMipmaps",
description = "Compute all mipmap levels for a provided image",
returnType = "void",
params = {
{type = "Image *", name = "image"}
}
},
{
name = "ImageDither",
description = "Dither image data to 16bpp or lower (Floyd-Steinberg dithering)",
returnType = "void",
params = {
{type = "Image *", name = "image"},
{type = "int", name = "rBpp"},
{type = "int", name = "gBpp"},
{type = "int", name = "bBpp"},
{type = "int", name = "aBpp"}
}
},
{
name = "ImageFlipVertical",
description = "Flip image vertically",
returnType = "void",
params = {
{type = "Image *", name = "image"}
}
},
{
name = "ImageFlipHorizontal",
description = "Flip image horizontally",
returnType = "void",
params = {
{type = "Image *", name = "image"}
}
},
{
name = "ImageRotate",
description = "Rotate image by input angle in degrees (-359 to 359)",
returnType = "void",
params = {
{type = "Image *", name = "image"},
{type = "int", name = "degrees"}
}
},
{
name = "ImageRotateCW",
description = "Rotate image clockwise 90deg",
returnType = "void",
params = {
{type = "Image *", name = "image"}
}
},
{
name = "ImageRotateCCW",
description = "Rotate image counter-clockwise 90deg",
returnType = "void",
params = {
{type = "Image *", name = "image"}
}
},
{
name = "ImageColorTint",
description = "Modify image color: tint",
returnType = "void",
params = {
{type = "Image *", name = "image"},
{type = "Color", name = "color"}
}
},
{
name = "ImageColorInvert",
description = "Modify image color: invert",
returnType = "void",
params = {
{type = "Image *", name = "image"}
}
},
{
name = "ImageColorGrayscale",
description = "Modify image color: grayscale",
returnType = "void",
params = {
{type = "Image *", name = "image"}
}
},
{
name = "ImageColorContrast",
description = "Modify image color: contrast (-100 to 100)",
returnType = "void",
params = {
{type = "Image *", name = "image"},
{type = "float", name = "contrast"}
}
},
{
name = "ImageColorBrightness",
description = "Modify image color: brightness (-255 to 255)",
returnType = "void",
params = {
{type = "Image *", name = "image"},
{type = "int", name = "brightness"}
}
},
{
name = "ImageColorReplace",
description = "Modify image color: replace color",
returnType = "void",
params = {
{type = "Image *", name = "image"},
{type = "Color", name = "color"},
{type = "Color", name = "replace"}
}
},
{
name = "LoadImageColors",
description = "Load color data from image as a Color array (RGBA - 32bit)",
returnType = "Color *",
params = {
{type = "Image", name = "image"}
}
},
{
name = "LoadImagePalette",
description = "Load colors palette from image as a Color array (RGBA - 32bit)",
returnType = "Color *",
params = {
{type = "Image", name = "image"},
{type = "int", name = "maxPaletteSize"},
{type = "int *", name = "colorCount"}
}
},
{
name = "UnloadImageColors",
description = "Unload color data loaded with LoadImageColors()",
returnType = "void",
params = {
{type = "Color *", name = "colors"}
}
},
{
name = "UnloadImagePalette",
description = "Unload colors palette loaded with LoadImagePalette()",
returnType = "void",
params = {
{type = "Color *", name = "colors"}
}
},
{
name = "GetImageAlphaBorder",
description = "Get image alpha border rectangle",
returnType = "Rectangle",
params = {
{type = "Image", name = "image"},
{type = "float", name = "threshold"}
}
},
{
name = "GetImageColor",
description = "Get image pixel color at (x, y) position",
returnType = "Color",
params = {
{type = "Image", name = "image"},
{type = "int", name = "x"},
{type = "int", name = "y"}
}
},
{
name = "ImageClearBackground",
description = "Clear image background with given color",
returnType = "void",
params = {
{type = "Image *", name = "dst"},
{type = "Color", name = "color"}
}
},
{
name = "ImageDrawPixel",
description = "Draw pixel within an image",
returnType = "void",
params = {
{type = "Image *", name = "dst"},
{type = "int", name = "posX"},
{type = "int", name = "posY"},
{type = "Color", name = "color"}
}
},
{
name = "ImageDrawPixelV",
description = "Draw pixel within an image (Vector version)",
returnType = "void",
params = {
{type = "Image *", name = "dst"},
{type = "Vector2", name = "position"},
{type = "Color", name = "color"}
}
},
{
name = "ImageDrawLine",
description = "Draw line within an image",
returnType = "void",
params = {
{type = "Image *", name = "dst"},
{type = "int", name = "startPosX"},
{type = "int", name = "startPosY"},
{type = "int", name = "endPosX"},
{type = "int", name = "endPosY"},
{type = "Color", name = "color"}
}
},
{
name = "ImageDrawLineV",
description = "Draw line within an image (Vector version)",
returnType = "void",
params = {
{type = "Image *", name = "dst"},
{type = "Vector2", name = "start"},
{type = "Vector2", name = "end"},
{type = "Color", name = "color"}
}
},
{
name = "ImageDrawLineEx",
description = "Draw a line defining thickness within an image",
returnType = "void",
params = {
{type = "Image *", name = "dst"},
{type = "Vector2", name = "start"},
{type = "Vector2", name = "end"},
{type = "int", name = "thick"},
{type = "Color", name = "color"}
}
},
{
name = "ImageDrawCircle",
description = "Draw a filled circle within an image",
returnType = "void",
params = {
{type = "Image *", name = "dst"},
{type = "int", name = "centerX"},
{type = "int", name = "centerY"},
{type = "int", name = "radius"},
{type = "Color", name = "color"}
}
},
{
name = "ImageDrawCircleV",
description = "Draw a filled circle within an image (Vector version)",
returnType = "void",
params = {
{type = "Image *", name = "dst"},
{type = "Vector2", name = "center"},
{type = "int", name = "radius"},
{type = "Color", name = "color"}
}
},
{
name = "ImageDrawCircleLines",
description = "Draw circle outline within an image",
returnType = "void",
params = {
{type = "Image *", name = "dst"},
{type = "int", name = "centerX"},
{type = "int", name = "centerY"},
{type = "int", name = "radius"},
{type = "Color", name = "color"}
}
},
{
name = "ImageDrawCircleLinesV",
description = "Draw circle outline within an image (Vector version)",
returnType = "void",
params = {
{type = "Image *", name = "dst"},
{type = "Vector2", name = "center"},
{type = "int", name = "radius"},
{type = "Color", name = "color"}
}
},
{
name = "ImageDrawRectangle",
description = "Draw rectangle within an image",
returnType = "void",
params = {
{type = "Image *", name = "dst"},
{type = "int", name = "posX"},
{type = "int", name = "posY"},
{type = "int", name = "width"},
{type = "int", name = "height"},
{type = "Color", name = "color"}
}
},
{
name = "ImageDrawRectangleV",
description = "Draw rectangle within an image (Vector version)",
returnType = "void",
params = {
{type = "Image *", name = "dst"},
{type = "Vector2", name = "position"},
{type = "Vector2", name = "size"},
{type = "Color", name = "color"}
}
},
{
name = "ImageDrawRectangleRec",
description = "Draw rectangle within an image",
returnType = "void",
params = {
{type = "Image *", name = "dst"},
{type = "Rectangle", name = "rec"},
{type = "Color", name = "color"}
}
},
{
name = "ImageDrawRectangleLines",
description = "Draw rectangle lines within an image",
returnType = "void",
params = {
{type = "Image *", name = "dst"},
{type = "Rectangle", name = "rec"},
{type = "int", name = "thick"},
{type = "Color", name = "color"}
}
},
{
name = "ImageDrawTriangle",
description = "Draw triangle within an image",
returnType = "void",
params = {
{type = "Image *", name = "dst"},
{type = "Vector2", name = "v1"},
{type = "Vector2", name = "v2"},
{type = "Vector2", name = "v3"},
{type = "Color", name = "color"}
}
},
{
name = "ImageDrawTriangleEx",
description = "Draw triangle with interpolated colors within an image",
returnType = "void",
params = {
{type = "Image *", name = "dst"},
{type = "Vector2", name = "v1"},
{type = "Vector2", name = "v2"},
{type = "Vector2", name = "v3"},
{type = "Color", name = "c1"},
{type = "Color", name = "c2"},
{type = "Color", name = "c3"}
}
},
{
name = "ImageDrawTriangleLines",
description = "Draw triangle outline within an image",
returnType = "void",
params = {
{type = "Image *", name = "dst"},
{type = "Vector2", name = "v1"},
{type = "Vector2", name = "v2"},
{type = "Vector2", name = "v3"},
{type = "Color", name = "color"}
}
},
{
name = "ImageDrawTriangleFan",
description = "Draw a triangle fan defined by points within an image (first vertex is the center)",
returnType = "void",
params = {
{type = "Image *", name = "dst"},
{type = "Vector2 *", name = "points"},
{type = "int", name = "pointCount"},
{type = "Color", name = "color"}
}
},
{
name = "ImageDrawTriangleStrip",
description = "Draw a triangle strip defined by points within an image",
returnType = "void",
params = {
{type = "Image *", name = "dst"},
{type = "Vector2 *", name = "points"},
{type = "int", name = "pointCount"},
{type = "Color", name = "color"}
}
},
{
name = "ImageDraw",
description = "Draw a source image within a destination image (tint applied to source)",
returnType = "void",
params = {
{type = "Image *", name = "dst"},
{type = "Image", name = "src"},
{type = "Rectangle", name = "srcRec"},
{type = "Rectangle", name = "dstRec"},
{type = "Color", name = "tint"}
}
},
{
name = "ImageDrawText",
description = "Draw text (using default font) within an image (destination)",
returnType = "void",
params = {
{type = "Image *", name = "dst"},
{type = "const char *", name = "text"},
{type = "int", name = "posX"},
{type = "int", name = "posY"},
{type = "int", name = "fontSize"},
{type = "Color", name = "color"}
}
},
{
name = "ImageDrawTextEx",
description = "Draw text (custom sprite font) within an image (destination)",
returnType = "void",
params = {
{type = "Image *", name = "dst"},
{type = "Font", name = "font"},
{type = "const char *", name = "text"},
{type = "Vector2", name = "position"},
{type = "float", name = "fontSize"},
{type = "float", name = "spacing"},
{type = "Color", name = "tint"}
}
},
{
name = "LoadTexture",
description = "Load texture from file into GPU memory (VRAM)",
returnType = "Texture2D",
params = {
{type = "const char *", name = "fileName"}
}
},
{
name = "LoadTextureFromImage",
description = "Load texture from image data",
returnType = "Texture2D",
params = {
{type = "Image", name = "image"}
}
},
{
name = "LoadTextureCubemap",
description = "Load cubemap from image, multiple image cubemap layouts supported",
returnType = "TextureCubemap",
params = {
{type = "Image", name = "image"},
{type = "int", name = "layout"}
}
},
{
name = "LoadRenderTexture",
description = "Load texture for rendering (framebuffer)",
returnType = "RenderTexture2D",
params = {
{type = "int", name = "width"},
{type = "int", name = "height"}
}
},
{
name = "IsTextureValid",
description = "Check if a texture is valid (loaded in GPU)",
returnType = "bool",
params = {
{type = "Texture2D", name = "texture"}
}
},
{
name = "UnloadTexture",
description = "Unload texture from GPU memory (VRAM)",
returnType = "void",
params = {
{type = "Texture2D", name = "texture"}
}
},
{
name = "IsRenderTextureValid",
description = "Check if a render texture is valid (loaded in GPU)",
returnType = "bool",
params = {
{type = "RenderTexture2D", name = "target"}
}
},
{
name = "UnloadRenderTexture",
description = "Unload render texture from GPU memory (VRAM)",
returnType = "void",
params = {
{type = "RenderTexture2D", name = "target"}
}
},
{
name = "UpdateTexture",
description = "Update GPU texture with new data",
returnType = "void",
params = {
{type = "Texture2D", name = "texture"},
{type = "const void *", name = "pixels"}
}
},
{
name = "UpdateTextureRec",
description = "Update GPU texture rectangle with new data",
returnType = "void",
params = {
{type = "Texture2D", name = "texture"},
{type = "Rectangle", name = "rec"},
{type = "const void *", name = "pixels"}
}
},
{
name = "GenTextureMipmaps",
description = "Generate GPU mipmaps for a texture",
returnType = "void",
params = {
{type = "Texture2D *", name = "texture"}
}
},
{
name = "SetTextureFilter",
description = "Set texture scaling filter mode",
returnType = "void",
params = {
{type = "Texture2D", name = "texture"},
{type = "int", name = "filter"}
}
},
{
name = "SetTextureWrap",
description = "Set texture wrapping mode",
returnType = "void",
params = {
{type = "Texture2D", name = "texture"},
{type = "int", name = "wrap"}
}
},
{
name = "DrawTexture",
description = "Draw a Texture2D",
returnType = "void",
params = {
{type = "Texture2D", name = "texture"},
{type = "int", name = "posX"},
{type = "int", name = "posY"},
{type = "Color", name = "tint"}
}
},
{
name = "DrawTextureV",
description = "Draw a Texture2D with position defined as Vector2",
returnType = "void",
params = {
{type = "Texture2D", name = "texture"},
{type = "Vector2", name = "position"},
{type = "Color", name = "tint"}
}
},
{
name = "DrawTextureEx",
description = "Draw a Texture2D with extended parameters",
returnType = "void",
params = {
{type = "Texture2D", name = "texture"},
{type = "Vector2", name = "position"},
{type = "float", name = "rotation"},
{type = "float", name = "scale"},
{type = "Color", name = "tint"}
}
},
{
name = "DrawTextureRec",
description = "Draw a part of a texture defined by a rectangle",
returnType = "void",
params = {
{type = "Texture2D", name = "texture"},
{type = "Rectangle", name = "source"},
{type = "Vector2", name = "position"},
{type = "Color", name = "tint"}
}
},
{
name = "DrawTexturePro",
description = "Draw a part of a texture defined by a rectangle with 'pro' parameters",
returnType = "void",
params = {
{type = "Texture2D", name = "texture"},
{type = "Rectangle", name = "source"},
{type = "Rectangle", name = "dest"},
{type = "Vector2", name = "origin"},
{type = "float", name = "rotation"},
{type = "Color", name = "tint"}
}
},
{
name = "DrawTextureNPatch",
description = "Draws a texture (or part of it) that stretches or shrinks nicely",
returnType = "void",
params = {
{type = "Texture2D", name = "texture"},
{type = "NPatchInfo", name = "nPatchInfo"},
{type = "Rectangle", name = "dest"},
{type = "Vector2", name = "origin"},
{type = "float", name = "rotation"},
{type = "Color", name = "tint"}
}
},
{
name = "ColorIsEqual",
description = "Check if two colors are equal",
returnType = "bool",
params = {
{type = "Color", name = "col1"},
{type = "Color", name = "col2"}
}
},
{
name = "Fade",
description = "Get color with alpha applied, alpha goes from 0.0f to 1.0f",
returnType = "Color",
params = {
{type = "Color", name = "color"},
{type = "float", name = "alpha"}
}
},
{
name = "ColorToInt",
description = "Get hexadecimal value for a Color (0xRRGGBBAA)",
returnType = "int",
params = {
{type = "Color", name = "color"}
}
},
{
name = "ColorNormalize",
description = "Get Color normalized as float [0..1]",
returnType = "Vector4",
params = {
{type = "Color", name = "color"}
}
},
{
name = "ColorFromNormalized",
description = "Get Color from normalized values [0..1]",
returnType = "Color",
params = {
{type = "Vector4", name = "normalized"}
}
},
{
name = "ColorToHSV",
description = "Get HSV values for a Color, hue [0..360], saturation/value [0..1]",
returnType = "Vector3",
params = {
{type = "Color", name = "color"}
}
},
{
name = "ColorFromHSV",
description = "Get a Color from HSV values, hue [0..360], saturation/value [0..1]",
returnType = "Color",
params = {
{type = "float", name = "hue"},
{type = "float", name = "saturation"},
{type = "float", name = "value"}
}
},
{
name = "ColorTint",
description = "Get color multiplied with another color",
returnType = "Color",
params = {
{type = "Color", name = "color"},
{type = "Color", name = "tint"}
}
},
{
name = "ColorBrightness",
description = "Get color with brightness correction, brightness factor goes from -1.0f to 1.0f",
returnType = "Color",
params = {
{type = "Color", name = "color"},
{type = "float", name = "factor"}
}
},
{
name = "ColorContrast",
description = "Get color with contrast correction, contrast values between -1.0f and 1.0f",
returnType = "Color",
params = {
{type = "Color", name = "color"},
{type = "float", name = "contrast"}
}
},
{
name = "ColorAlpha",
description = "Get color with alpha applied, alpha goes from 0.0f to 1.0f",
returnType = "Color",
params = {
{type = "Color", name = "color"},
{type = "float", name = "alpha"}
}
},
{
name = "ColorAlphaBlend",
description = "Get src alpha-blended into dst color with tint",
returnType = "Color",
params = {
{type = "Color", name = "dst"},
{type = "Color", name = "src"},
{type = "Color", name = "tint"}
}
},
{
name = "ColorLerp",
description = "Get color lerp interpolation between two colors, factor [0.0f..1.0f]",
returnType = "Color",
params = {
{type = "Color", name = "color1"},
{type = "Color", name = "color2"},
{type = "float", name = "factor"}
}
},
{
name = "GetColor",
description = "Get Color structure from hexadecimal value",
returnType = "Color",
params = {
{type = "unsigned int", name = "hexValue"}
}
},
{
name = "GetPixelColor",
description = "Get Color from a source pixel pointer of certain format",
returnType = "Color",
params = {
{type = "void *", name = "srcPtr"},
{type = "int", name = "format"}
}
},
{
name = "SetPixelColor",
description = "Set color formatted into destination pixel pointer",
returnType = "void",
params = {
{type = "void *", name = "dstPtr"},
{type = "Color", name = "color"},
{type = "int", name = "format"}
}
},
{
name = "GetPixelDataSize",
description = "Get pixel data size in bytes for certain format",
returnType = "int",
params = {
{type = "int", name = "width"},
{type = "int", name = "height"},
{type = "int", name = "format"}
}
},
{
name = "GetFontDefault",
description = "Get the default Font",
returnType = "Font"
},
{
name = "LoadFont",
description = "Load font from file into GPU memory (VRAM)",
returnType = "Font",
params = {
{type = "const char *", name = "fileName"}
}
},
{
name = "LoadFontEx",
description = "Load font from file with extended parameters, use NULL for codepoints and 0 for codepointCount to load the default character set, font size is provided in pixels height",
returnType = "Font",
params = {
{type = "const char *", name = "fileName"},
{type = "int", name = "fontSize"},
{type = "int *", name = "codepoints"},
{type = "int", name = "codepointCount"}
}
},
{
name = "LoadFontFromImage",
description = "Load font from Image (XNA style)",
returnType = "Font",
params = {
{type = "Image", name = "image"},
{type = "Color", name = "key"},
{type = "int", name = "firstChar"}
}
},
{
name = "LoadFontFromMemory",
description = "Load font from memory buffer, fileType refers to extension: i.e. '.ttf'",
returnType = "Font",
params = {
{type = "const char *", name = "fileType"},
{type = "const unsigned char *", name = "fileData"},
{type = "int", name = "dataSize"},
{type = "int", name = "fontSize"},
{type = "int *", name = "codepoints"},
{type = "int", name = "codepointCount"}
}
},
{
name = "IsFontValid",
description = "Check if a font is valid (font data loaded, WARNING: GPU texture not checked)",
returnType = "bool",
params = {
{type = "Font", name = "font"}
}
},
{
name = "LoadFontData",
description = "Load font data for further use",
returnType = "GlyphInfo *",
params = {
{type = "const unsigned char *", name = "fileData"},
{type = "int", name = "dataSize"},
{type = "int", name = "fontSize"},
{type = "int *", name = "codepoints"},
{type = "int", name = "codepointCount"},
{type = "int", name = "type"}
}
},
{
name = "GenImageFontAtlas",
description = "Generate image font atlas using chars info",
returnType = "Image",
params = {
{type = "const GlyphInfo *", name = "glyphs"},
{type = "Rectangle **", name = "glyphRecs"},
{type = "int", name = "glyphCount"},
{type = "int", name = "fontSize"},
{type = "int", name = "padding"},
{type = "int", name = "packMethod"}
}
},
{
name = "UnloadFontData",
description = "Unload font chars info data (RAM)",
returnType = "void",
params = {
{type = "GlyphInfo *", name = "glyphs"},
{type = "int", name = "glyphCount"}
}
},
{
name = "UnloadFont",
description = "Unload font from GPU memory (VRAM)",
returnType = "void",
params = {
{type = "Font", name = "font"}
}
},
{
name = "ExportFontAsCode",
description = "Export font as code file, returns true on success",
returnType = "bool",
params = {
{type = "Font", name = "font"},
{type = "const char *", name = "fileName"}
}
},
{
name = "DrawFPS",
description = "Draw current FPS",
returnType = "void",
params = {
{type = "int", name = "posX"},
{type = "int", name = "posY"}
}
},
{
name = "DrawText",
description = "Draw text (using default font)",
returnType = "void",
params = {
{type = "const char *", name = "text"},
{type = "int", name = "posX"},
{type = "int", name = "posY"},
{type = "int", name = "fontSize"},
{type = "Color", name = "color"}
}
},
{
name = "DrawTextEx",
description = "Draw text using font and additional parameters",
returnType = "void",
params = {
{type = "Font", name = "font"},
{type = "const char *", name = "text"},
{type = "Vector2", name = "position"},
{type = "float", name = "fontSize"},
{type = "float", name = "spacing"},
{type = "Color", name = "tint"}
}
},
{
name = "DrawTextPro",
description = "Draw text using Font and pro parameters (rotation)",
returnType = "void",
params = {
{type = "Font", name = "font"},
{type = "const char *", name = "text"},
{type = "Vector2", name = "position"},
{type = "Vector2", name = "origin"},
{type = "float", name = "rotation"},
{type = "float", name = "fontSize"},
{type = "float", name = "spacing"},
{type = "Color", name = "tint"}
}
},
{
name = "DrawTextCodepoint",
description = "Draw one character (codepoint)",
returnType = "void",
params = {
{type = "Font", name = "font"},
{type = "int", name = "codepoint"},
{type = "Vector2", name = "position"},
{type = "float", name = "fontSize"},
{type = "Color", name = "tint"}
}
},
{
name = "DrawTextCodepoints",
description = "Draw multiple character (codepoint)",
returnType = "void",
params = {
{type = "Font", name = "font"},
{type = "const int *", name = "codepoints"},
{type = "int", name = "codepointCount"},
{type = "Vector2", name = "position"},
{type = "float", name = "fontSize"},
{type = "float", name = "spacing"},
{type = "Color", name = "tint"}
}
},
{
name = "SetTextLineSpacing",
description = "Set vertical line spacing when drawing with line-breaks",
returnType = "void",
params = {
{type = "int", name = "spacing"}
}
},
{
name = "MeasureText",
description = "Measure string width for default font",
returnType = "int",
params = {
{type = "const char *", name = "text"},
{type = "int", name = "fontSize"}
}
},
{
name = "MeasureTextEx",
description = "Measure string size for Font",
returnType = "Vector2",
params = {
{type = "Font", name = "font"},
{type = "const char *", name = "text"},
{type = "float", name = "fontSize"},
{type = "float", name = "spacing"}
}
},
{
name = "GetGlyphIndex",
description = "Get glyph index position in font for a codepoint (unicode character), fallback to '?' if not found",
returnType = "int",
params = {
{type = "Font", name = "font"},
{type = "int", name = "codepoint"}
}
},
{
name = "GetGlyphInfo",
description = "Get glyph font info data for a codepoint (unicode character), fallback to '?' if not found",
returnType = "GlyphInfo",
params = {
{type = "Font", name = "font"},
{type = "int", name = "codepoint"}
}
},
{
name = "GetGlyphAtlasRec",
description = "Get glyph rectangle in font atlas for a codepoint (unicode character), fallback to '?' if not found",
returnType = "Rectangle",
params = {
{type = "Font", name = "font"},
{type = "int", name = "codepoint"}
}
},
{
name = "LoadUTF8",
description = "Load UTF-8 text encoded from codepoints array",
returnType = "char *",
params = {
{type = "const int *", name = "codepoints"},
{type = "int", name = "length"}
}
},
{
name = "UnloadUTF8",
description = "Unload UTF-8 text encoded from codepoints array",
returnType = "void",
params = {
{type = "char *", name = "text"}
}
},
{
name = "LoadCodepoints",
description = "Load all codepoints from a UTF-8 text string, codepoints count returned by parameter",
returnType = "int *",
params = {
{type = "const char *", name = "text"},
{type = "int *", name = "count"}
}
},
{
name = "UnloadCodepoints",
description = "Unload codepoints data from memory",
returnType = "void",
params = {
{type = "int *", name = "codepoints"}
}
},
{
name = "GetCodepointCount",
description = "Get total number of codepoints in a UTF-8 encoded string",
returnType = "int",
params = {
{type = "const char *", name = "text"}
}
},
{
name = "GetCodepoint",
description = "Get next codepoint in a UTF-8 encoded string, 0x3f('?') is returned on failure",
returnType = "int",
params = {
{type = "const char *", name = "text"},
{type = "int *", name = "codepointSize"}
}
},
{
name = "GetCodepointNext",
description = "Get next codepoint in a UTF-8 encoded string, 0x3f('?') is returned on failure",
returnType = "int",
params = {
{type = "const char *", name = "text"},
{type = "int *", name = "codepointSize"}
}
},
{
name = "GetCodepointPrevious",
description = "Get previous codepoint in a UTF-8 encoded string, 0x3f('?') is returned on failure",
returnType = "int",
params = {
{type = "const char *", name = "text"},
{type = "int *", name = "codepointSize"}
}
},
{
name = "CodepointToUTF8",
description = "Encode one codepoint into UTF-8 byte array (array length returned as parameter)",
returnType = "const char *",
params = {
{type = "int", name = "codepoint"},
{type = "int *", name = "utf8Size"}
}
},
{
name = "TextCopy",
description = "Copy one string to another, returns bytes copied",
returnType = "int",
params = {
{type = "char *", name = "dst"},
{type = "const char *", name = "src"}
}
},
{
name = "TextIsEqual",
description = "Check if two text string are equal",
returnType = "bool",
params = {
{type = "const char *", name = "text1"},
{type = "const char *", name = "text2"}
}
},
{
name = "TextLength",
description = "Get text length, checks for '\\0' ending",
returnType = "unsigned int",
params = {
{type = "const char *", name = "text"}
}
},
{
name = "TextFormat",
description = "Text formatting with variables (sprintf() style)",
returnType = "const char *",
params = {
{type = "const char *", name = "text"},
{type = "...", name = "args"}
}
},
{
name = "TextSubtext",
description = "Get a piece of a text string",
returnType = "const char *",
params = {
{type = "const char *", name = "text"},
{type = "int", name = "position"},
{type = "int", name = "length"}
}
},
{
name = "TextReplace",
description = "Replace text string (WARNING: memory must be freed!)",
returnType = "char *",
params = {
{type = "const char *", name = "text"},
{type = "const char *", name = "replace"},
{type = "const char *", name = "by"}
}
},
{
name = "TextInsert",
description = "Insert text in a position (WARNING: memory must be freed!)",
returnType = "char *",
params = {
{type = "const char *", name = "text"},
{type = "const char *", name = "insert"},
{type = "int", name = "position"}
}
},
{
name = "TextJoin",
description = "Join text strings with delimiter",
returnType = "char *",
params = {
{type = "char **", name = "textList"},
{type = "int", name = "count"},
{type = "const char *", name = "delimiter"}
}
},
{
name = "TextSplit",
description = "Split text into multiple strings",
returnType = "char **",
params = {
{type = "const char *", name = "text"},
{type = "char", name = "delimiter"},
{type = "int *", name = "count"}
}
},
{
name = "TextAppend",
description = "Append text at specific position and move cursor!",
returnType = "void",
params = {
{type = "char *", name = "text"},
{type = "const char *", name = "append"},
{type = "int *", name = "position"}
}
},
{
name = "TextFindIndex",
description = "Find first text occurrence within a string",
returnType = "int",
params = {
{type = "const char *", name = "text"},
{type = "const char *", name = "find"}
}
},
{
name = "TextToUpper",
description = "Get upper case version of provided string",
returnType = "char *",
params = {
{type = "const char *", name = "text"}
}
},
{
name = "TextToLower",
description = "Get lower case version of provided string",
returnType = "char *",
params = {
{type = "const char *", name = "text"}
}
},
{
name = "TextToPascal",
description = "Get Pascal case notation version of provided string",
returnType = "char *",
params = {
{type = "const char *", name = "text"}
}
},
{
name = "TextToSnake",
description = "Get Snake case notation version of provided string",
returnType = "char *",
params = {
{type = "const char *", name = "text"}
}
},
{
name = "TextToCamel",
description = "Get Camel case notation version of provided string",
returnType = "char *",
params = {
{type = "const char *", name = "text"}
}
},
{
name = "TextToInteger",
description = "Get integer value from text",
returnType = "int",
params = {
{type = "const char *", name = "text"}
}
},
{
name = "TextToFloat",
description = "Get float value from text",
returnType = "float",
params = {
{type = "const char *", name = "text"}
}
},
{
name = "DrawLine3D",
description = "Draw a line in 3D world space",
returnType = "void",
params = {
{type = "Vector3", name = "startPos"},
{type = "Vector3", name = "endPos"},
{type = "Color", name = "color"}
}
},
{
name = "DrawPoint3D",
description = "Draw a point in 3D space, actually a small line",
returnType = "void",
params = {
{type = "Vector3", name = "position"},
{type = "Color", name = "color"}
}
},
{
name = "DrawCircle3D",
description = "Draw a circle in 3D world space",
returnType = "void",
params = {
{type = "Vector3", name = "center"},
{type = "float", name = "radius"},
{type = "Vector3", name = "rotationAxis"},
{type = "float", name = "rotationAngle"},
{type = "Color", name = "color"}
}
},
{
name = "DrawTriangle3D",
description = "Draw a color-filled triangle (vertex in counter-clockwise order!)",
returnType = "void",
params = {
{type = "Vector3", name = "v1"},
{type = "Vector3", name = "v2"},
{type = "Vector3", name = "v3"},
{type = "Color", name = "color"}
}
},
{
name = "DrawTriangleStrip3D",
description = "Draw a triangle strip defined by points",
returnType = "void",
params = {
{type = "const Vector3 *", name = "points"},
{type = "int", name = "pointCount"},
{type = "Color", name = "color"}
}
},
{
name = "DrawCube",
description = "Draw cube",
returnType = "void",
params = {
{type = "Vector3", name = "position"},
{type = "float", name = "width"},
{type = "float", name = "height"},
{type = "float", name = "length"},
{type = "Color", name = "color"}
}
},
{
name = "DrawCubeV",
description = "Draw cube (Vector version)",
returnType = "void",
params = {
{type = "Vector3", name = "position"},
{type = "Vector3", name = "size"},
{type = "Color", name = "color"}
}
},
{
name = "DrawCubeWires",
description = "Draw cube wires",
returnType = "void",
params = {
{type = "Vector3", name = "position"},
{type = "float", name = "width"},
{type = "float", name = "height"},
{type = "float", name = "length"},
{type = "Color", name = "color"}
}
},
{
name = "DrawCubeWiresV",
description = "Draw cube wires (Vector version)",
returnType = "void",
params = {
{type = "Vector3", name = "position"},
{type = "Vector3", name = "size"},
{type = "Color", name = "color"}
}
},
{
name = "DrawSphere",
description = "Draw sphere",
returnType = "void",
params = {
{type = "Vector3", name = "centerPos"},
{type = "float", name = "radius"},
{type = "Color", name = "color"}
}
},
{
name = "DrawSphereEx",
description = "Draw sphere with extended parameters",
returnType = "void",
params = {
{type = "Vector3", name = "centerPos"},
{type = "float", name = "radius"},
{type = "int", name = "rings"},
{type = "int", name = "slices"},
{type = "Color", name = "color"}
}
},
{
name = "DrawSphereWires",
description = "Draw sphere wires",
returnType = "void",
params = {
{type = "Vector3", name = "centerPos"},
{type = "float", name = "radius"},
{type = "int", name = "rings"},
{type = "int", name = "slices"},
{type = "Color", name = "color"}
}
},
{
name = "DrawCylinder",
description = "Draw a cylinder/cone",
returnType = "void",
params = {
{type = "Vector3", name = "position"},
{type = "float", name = "radiusTop"},
{type = "float", name = "radiusBottom"},
{type = "float", name = "height"},
{type = "int", name = "slices"},
{type = "Color", name = "color"}
}
},
{
name = "DrawCylinderEx",
description = "Draw a cylinder with base at startPos and top at endPos",
returnType = "void",
params = {
{type = "Vector3", name = "startPos"},
{type = "Vector3", name = "endPos"},
{type = "float", name = "startRadius"},
{type = "float", name = "endRadius"},
{type = "int", name = "sides"},
{type = "Color", name = "color"}
}
},
{
name = "DrawCylinderWires",
description = "Draw a cylinder/cone wires",
returnType = "void",
params = {
{type = "Vector3", name = "position"},
{type = "float", name = "radiusTop"},
{type = "float", name = "radiusBottom"},
{type = "float", name = "height"},
{type = "int", name = "slices"},
{type = "Color", name = "color"}
}
},
{
name = "DrawCylinderWiresEx",
description = "Draw a cylinder wires with base at startPos and top at endPos",
returnType = "void",
params = {
{type = "Vector3", name = "startPos"},
{type = "Vector3", name = "endPos"},
{type = "float", name = "startRadius"},
{type = "float", name = "endRadius"},
{type = "int", name = "sides"},
{type = "Color", name = "color"}
}
},
{
name = "DrawCapsule",
description = "Draw a capsule with the center of its sphere caps at startPos and endPos",
returnType = "void",
params = {
{type = "Vector3", name = "startPos"},
{type = "Vector3", name = "endPos"},
{type = "float", name = "radius"},
{type = "int", name = "slices"},
{type = "int", name = "rings"},
{type = "Color", name = "color"}
}
},
{
name = "DrawCapsuleWires",
description = "Draw capsule wireframe with the center of its sphere caps at startPos and endPos",
returnType = "void",
params = {
{type = "Vector3", name = "startPos"},
{type = "Vector3", name = "endPos"},
{type = "float", name = "radius"},
{type = "int", name = "slices"},
{type = "int", name = "rings"},
{type = "Color", name = "color"}
}
},
{
name = "DrawPlane",
description = "Draw a plane XZ",
returnType = "void",
params = {
{type = "Vector3", name = "centerPos"},
{type = "Vector2", name = "size"},
{type = "Color", name = "color"}
}
},
{
name = "DrawRay",
description = "Draw a ray line",
returnType = "void",
params = {
{type = "Ray", name = "ray"},
{type = "Color", name = "color"}
}
},
{
name = "DrawGrid",
description = "Draw a grid (centered at (0, 0, 0))",
returnType = "void",
params = {
{type = "int", name = "slices"},
{type = "float", name = "spacing"}
}
},
{
name = "LoadModel",
description = "Load model from files (meshes and materials)",
returnType = "Model",
params = {
{type = "const char *", name = "fileName"}
}
},
{
name = "LoadModelFromMesh",
description = "Load model from generated mesh (default material)",
returnType = "Model",
params = {
{type = "Mesh", name = "mesh"}
}
},
{
name = "IsModelValid",
description = "Check if a model is valid (loaded in GPU, VAO/VBOs)",
returnType = "bool",
params = {
{type = "Model", name = "model"}
}
},
{
name = "UnloadModel",
description = "Unload model (including meshes) from memory (RAM and/or VRAM)",
returnType = "void",
params = {
{type = "Model", name = "model"}
}
},
{
name = "GetModelBoundingBox",
description = "Compute model bounding box limits (considers all meshes)",
returnType = "BoundingBox",
params = {
{type = "Model", name = "model"}
}
},
{
name = "DrawModel",
description = "Draw a model (with texture if set)",
returnType = "void",
params = {
{type = "Model", name = "model"},
{type = "Vector3", name = "position"},
{type = "float", name = "scale"},
{type = "Color", name = "tint"}
}
},
{
name = "DrawModelEx",
description = "Draw a model with extended parameters",
returnType = "void",
params = {
{type = "Model", name = "model"},
{type = "Vector3", name = "position"},
{type = "Vector3", name = "rotationAxis"},
{type = "float", name = "rotationAngle"},
{type = "Vector3", name = "scale"},
{type = "Color", name = "tint"}
}
},
{
name = "DrawModelWires",
description = "Draw a model wires (with texture if set)",
returnType = "void",
params = {
{type = "Model", name = "model"},
{type = "Vector3", name = "position"},
{type = "float", name = "scale"},
{type = "Color", name = "tint"}
}
},
{
name = "DrawModelWiresEx",
description = "Draw a model wires (with texture if set) with extended parameters",
returnType = "void",
params = {
{type = "Model", name = "model"},
{type = "Vector3", name = "position"},
{type = "Vector3", name = "rotationAxis"},
{type = "float", name = "rotationAngle"},
{type = "Vector3", name = "scale"},
{type = "Color", name = "tint"}
}
},
{
name = "DrawModelPoints",
description = "Draw a model as points",
returnType = "void",
params = {
{type = "Model", name = "model"},
{type = "Vector3", name = "position"},
{type = "float", name = "scale"},
{type = "Color", name = "tint"}
}
},
{
name = "DrawModelPointsEx",
description = "Draw a model as points with extended parameters",
returnType = "void",
params = {
{type = "Model", name = "model"},
{type = "Vector3", name = "position"},
{type = "Vector3", name = "rotationAxis"},
{type = "float", name = "rotationAngle"},
{type = "Vector3", name = "scale"},
{type = "Color", name = "tint"}
}
},
{
name = "DrawBoundingBox",
description = "Draw bounding box (wires)",
returnType = "void",
params = {
{type = "BoundingBox", name = "box"},
{type = "Color", name = "color"}
}
},
{
name = "DrawBillboard",
description = "Draw a billboard texture",
returnType = "void",
params = {
{type = "Camera", name = "camera"},
{type = "Texture2D", name = "texture"},
{type = "Vector3", name = "position"},
{type = "float", name = "scale"},
{type = "Color", name = "tint"}
}
},
{
name = "DrawBillboardRec",
description = "Draw a billboard texture defined by source",
returnType = "void",
params = {
{type = "Camera", name = "camera"},
{type = "Texture2D", name = "texture"},
{type = "Rectangle", name = "source"},
{type = "Vector3", name = "position"},
{type = "Vector2", name = "size"},
{type = "Color", name = "tint"}
}
},
{
name = "DrawBillboardPro",
description = "Draw a billboard texture defined by source and rotation",
returnType = "void",
params = {
{type = "Camera", name = "camera"},
{type = "Texture2D", name = "texture"},
{type = "Rectangle", name = "source"},
{type = "Vector3", name = "position"},
{type = "Vector3", name = "up"},
{type = "Vector2", name = "size"},
{type = "Vector2", name = "origin"},
{type = "float", name = "rotation"},
{type = "Color", name = "tint"}
}
},
{
name = "UploadMesh",
description = "Upload mesh vertex data in GPU and provide VAO/VBO ids",
returnType = "void",
params = {
{type = "Mesh *", name = "mesh"},
{type = "bool", name = "dynamic"}
}
},
{
name = "UpdateMeshBuffer",
description = "Update mesh vertex data in GPU for a specific buffer index",
returnType = "void",
params = {
{type = "Mesh", name = "mesh"},
{type = "int", name = "index"},
{type = "const void *", name = "data"},
{type = "int", name = "dataSize"},
{type = "int", name = "offset"}
}
},
{
name = "UnloadMesh",
description = "Unload mesh data from CPU and GPU",
returnType = "void",
params = {
{type = "Mesh", name = "mesh"}
}
},
{
name = "DrawMesh",
description = "Draw a 3d mesh with material and transform",
returnType = "void",
params = {
{type = "Mesh", name = "mesh"},
{type = "Material", name = "material"},
{type = "Matrix", name = "transform"}
}
},
{
name = "DrawMeshInstanced",
description = "Draw multiple mesh instances with material and different transforms",
returnType = "void",
params = {
{type = "Mesh", name = "mesh"},
{type = "Material", name = "material"},
{type = "const Matrix *", name = "transforms"},
{type = "int", name = "instances"}
}
},
{
name = "GetMeshBoundingBox",
description = "Compute mesh bounding box limits",
returnType = "BoundingBox",
params = {
{type = "Mesh", name = "mesh"}
}
},
{
name = "GenMeshTangents",
description = "Compute mesh tangents",
returnType = "void",
params = {
{type = "Mesh *", name = "mesh"}
}
},
{
name = "ExportMesh",
description = "Export mesh data to file, returns true on success",
returnType = "bool",
params = {
{type = "Mesh", name = "mesh"},
{type = "const char *", name = "fileName"}
}
},
{
name = "ExportMeshAsCode",
description = "Export mesh as code file (.h) defining multiple arrays of vertex attributes",
returnType = "bool",
params = {
{type = "Mesh", name = "mesh"},
{type = "const char *", name = "fileName"}
}
},
{
name = "GenMeshPoly",
description = "Generate polygonal mesh",
returnType = "Mesh",
params = {
{type = "int", name = "sides"},
{type = "float", name = "radius"}
}
},
{
name = "GenMeshPlane",
description = "Generate plane mesh (with subdivisions)",
returnType = "Mesh",
params = {
{type = "float", name = "width"},
{type = "float", name = "length"},
{type = "int", name = "resX"},
{type = "int", name = "resZ"}
}
},
{
name = "GenMeshCube",
description = "Generate cuboid mesh",
returnType = "Mesh",
params = {
{type = "float", name = "width"},
{type = "float", name = "height"},
{type = "float", name = "length"}
}
},
{
name = "GenMeshSphere",
description = "Generate sphere mesh (standard sphere)",
returnType = "Mesh",
params = {
{type = "float", name = "radius"},
{type = "int", name = "rings"},
{type = "int", name = "slices"}
}
},
{
name = "GenMeshHemiSphere",
description = "Generate half-sphere mesh (no bottom cap)",
returnType = "Mesh",
params = {
{type = "float", name = "radius"},
{type = "int", name = "rings"},
{type = "int", name = "slices"}
}
},
{
name = "GenMeshCylinder",
description = "Generate cylinder mesh",
returnType = "Mesh",
params = {
{type = "float", name = "radius"},
{type = "float", name = "height"},
{type = "int", name = "slices"}
}
},
{
name = "GenMeshCone",
description = "Generate cone/pyramid mesh",
returnType = "Mesh",
params = {
{type = "float", name = "radius"},
{type = "float", name = "height"},
{type = "int", name = "slices"}
}
},
{
name = "GenMeshTorus",
description = "Generate torus mesh",
returnType = "Mesh",
params = {
{type = "float", name = "radius"},
{type = "float", name = "size"},
{type = "int", name = "radSeg"},
{type = "int", name = "sides"}
}
},
{
name = "GenMeshKnot",
description = "Generate trefoil knot mesh",
returnType = "Mesh",
params = {
{type = "float", name = "radius"},
{type = "float", name = "size"},
{type = "int", name = "radSeg"},
{type = "int", name = "sides"}
}
},
{
name = "GenMeshHeightmap",
description = "Generate heightmap mesh from image data",
returnType = "Mesh",
params = {
{type = "Image", name = "heightmap"},
{type = "Vector3", name = "size"}
}
},
{
name = "GenMeshCubicmap",
description = "Generate cubes-based map mesh from image data",
returnType = "Mesh",
params = {
{type = "Image", name = "cubicmap"},
{type = "Vector3", name = "cubeSize"}
}
},
{
name = "LoadMaterials",
description = "Load materials from model file",
returnType = "Material *",
params = {
{type = "const char *", name = "fileName"},
{type = "int *", name = "materialCount"}
}
},
{
name = "LoadMaterialDefault",
description = "Load default material (Supports: DIFFUSE, SPECULAR, NORMAL maps)",
returnType = "Material"
},
{
name = "IsMaterialValid",
description = "Check if a material is valid (shader assigned, map textures loaded in GPU)",
returnType = "bool",
params = {
{type = "Material", name = "material"}
}
},
{
name = "UnloadMaterial",
description = "Unload material from GPU memory (VRAM)",
returnType = "void",
params = {
{type = "Material", name = "material"}
}
},
{
name = "SetMaterialTexture",
description = "Set texture for a material map type (MATERIAL_MAP_DIFFUSE, MATERIAL_MAP_SPECULAR...)",
returnType = "void",
params = {
{type = "Material *", name = "material"},
{type = "int", name = "mapType"},
{type = "Texture2D", name = "texture"}
}
},
{
name = "SetModelMeshMaterial",
description = "Set material for a mesh",
returnType = "void",
params = {
{type = "Model *", name = "model"},
{type = "int", name = "meshId"},
{type = "int", name = "materialId"}
}
},
{
name = "LoadModelAnimations",
description = "Load model animations from file",
returnType = "ModelAnimation *",
params = {
{type = "const char *", name = "fileName"},
{type = "int *", name = "animCount"}
}
},
{
name = "UpdateModelAnimation",
description = "Update model animation pose (CPU)",
returnType = "void",
params = {
{type = "Model", name = "model"},
{type = "ModelAnimation", name = "anim"},
{type = "int", name = "frame"}
}
},
{
name = "UpdateModelAnimationBones",
description = "Update model animation mesh bone matrices (GPU skinning)",
returnType = "void",
params = {
{type = "Model", name = "model"},
{type = "ModelAnimation", name = "anim"},
{type = "int", name = "frame"}
}
},
{
name = "UnloadModelAnimation",
description = "Unload animation data",
returnType = "void",
params = {
{type = "ModelAnimation", name = "anim"}
}
},
{
name = "UnloadModelAnimations",
description = "Unload animation array data",
returnType = "void",
params = {
{type = "ModelAnimation *", name = "animations"},
{type = "int", name = "animCount"}
}
},
{
name = "IsModelAnimationValid",
description = "Check model animation skeleton match",
returnType = "bool",
params = {
{type = "Model", name = "model"},
{type = "ModelAnimation", name = "anim"}
}
},
{
name = "CheckCollisionSpheres",
description = "Check collision between two spheres",
returnType = "bool",
params = {
{type = "Vector3", name = "center1"},
{type = "float", name = "radius1"},
{type = "Vector3", name = "center2"},
{type = "float", name = "radius2"}
}
},
{
name = "CheckCollisionBoxes",
description = "Check collision between two bounding boxes",
returnType = "bool",
params = {
{type = "BoundingBox", name = "box1"},
{type = "BoundingBox", name = "box2"}
}
},
{
name = "CheckCollisionBoxSphere",
description = "Check collision between box and sphere",
returnType = "bool",
params = {
{type = "BoundingBox", name = "box"},
{type = "Vector3", name = "center"},
{type = "float", name = "radius"}
}
},
{
name = "GetRayCollisionSphere",
description = "Get collision info between ray and sphere",
returnType = "RayCollision",
params = {
{type = "Ray", name = "ray"},
{type = "Vector3", name = "center"},
{type = "float", name = "radius"}
}
},
{
name = "GetRayCollisionBox",
description = "Get collision info between ray and box",
returnType = "RayCollision",
params = {
{type = "Ray", name = "ray"},
{type = "BoundingBox", name = "box"}
}
},
{
name = "GetRayCollisionMesh",
description = "Get collision info between ray and mesh",
returnType = "RayCollision",
params = {
{type = "Ray", name = "ray"},
{type = "Mesh", name = "mesh"},
{type = "Matrix", name = "transform"}
}
},
{
name = "GetRayCollisionTriangle",
description = "Get collision info between ray and triangle",
returnType = "RayCollision",
params = {
{type = "Ray", name = "ray"},
{type = "Vector3", name = "p1"},
{type = "Vector3", name = "p2"},
{type = "Vector3", name = "p3"}
}
},
{
name = "GetRayCollisionQuad",
description = "Get collision info between ray and quad",
returnType = "RayCollision",
params = {
{type = "Ray", name = "ray"},
{type = "Vector3", name = "p1"},
{type = "Vector3", name = "p2"},
{type = "Vector3", name = "p3"},
{type = "Vector3", name = "p4"}
}
},
{
name = "InitAudioDevice",
description = "Initialize audio device and context",
returnType = "void"
},
{
name = "CloseAudioDevice",
description = "Close the audio device and context",
returnType = "void"
},
{
name = "IsAudioDeviceReady",
description = "Check if audio device has been initialized successfully",
returnType = "bool"
},
{
name = "SetMasterVolume",
description = "Set master volume (listener)",
returnType = "void",
params = {
{type = "float", name = "volume"}
}
},
{
name = "GetMasterVolume",
description = "Get master volume (listener)",
returnType = "float"
},
{
name = "LoadWave",
description = "Load wave data from file",
returnType = "Wave",
params = {
{type = "const char *", name = "fileName"}
}
},
{
name = "LoadWaveFromMemory",
description = "Load wave from memory buffer, fileType refers to extension: i.e. '.wav'",
returnType = "Wave",
params = {
{type = "const char *", name = "fileType"},
{type = "const unsigned char *", name = "fileData"},
{type = "int", name = "dataSize"}
}
},
{
name = "IsWaveValid",
description = "Checks if wave data is valid (data loaded and parameters)",
returnType = "bool",
params = {
{type = "Wave", name = "wave"}
}
},
{
name = "LoadSound",
description = "Load sound from file",
returnType = "Sound",
params = {
{type = "const char *", name = "fileName"}
}
},
{
name = "LoadSoundFromWave",
description = "Load sound from wave data",
returnType = "Sound",
params = {
{type = "Wave", name = "wave"}
}
},
{
name = "LoadSoundAlias",
description = "Create a new sound that shares the same sample data as the source sound, does not own the sound data",
returnType = "Sound",
params = {
{type = "Sound", name = "source"}
}
},
{
name = "IsSoundValid",
description = "Checks if a sound is valid (data loaded and buffers initialized)",
returnType = "bool",
params = {
{type = "Sound", name = "sound"}
}
},
{
name = "UpdateSound",
description = "Update sound buffer with new data",
returnType = "void",
params = {
{type = "Sound", name = "sound"},
{type = "const void *", name = "data"},
{type = "int", name = "sampleCount"}
}
},
{
name = "UnloadWave",
description = "Unload wave data",
returnType = "void",
params = {
{type = "Wave", name = "wave"}
}
},
{
name = "UnloadSound",
description = "Unload sound",
returnType = "void",
params = {
{type = "Sound", name = "sound"}
}
},
{
name = "UnloadSoundAlias",
description = "Unload a sound alias (does not deallocate sample data)",
returnType = "void",
params = {
{type = "Sound", name = "alias"}
}
},
{
name = "ExportWave",
description = "Export wave data to file, returns true on success",
returnType = "bool",
params = {
{type = "Wave", name = "wave"},
{type = "const char *", name = "fileName"}
}
},
{
name = "ExportWaveAsCode",
description = "Export wave sample data to code (.h), returns true on success",
returnType = "bool",
params = {
{type = "Wave", name = "wave"},
{type = "const char *", name = "fileName"}
}
},
{
name = "PlaySound",
description = "Play a sound",
returnType = "void",
params = {
{type = "Sound", name = "sound"}
}
},
{
name = "StopSound",
description = "Stop playing a sound",
returnType = "void",
params = {
{type = "Sound", name = "sound"}
}
},
{
name = "PauseSound",
description = "Pause a sound",
returnType = "void",
params = {
{type = "Sound", name = "sound"}
}
},
{
name = "ResumeSound",
description = "Resume a paused sound",
returnType = "void",
params = {
{type = "Sound", name = "sound"}
}
},
{
name = "IsSoundPlaying",
description = "Check if a sound is currently playing",
returnType = "bool",
params = {
{type = "Sound", name = "sound"}
}
},
{
name = "SetSoundVolume",
description = "Set volume for a sound (1.0 is max level)",
returnType = "void",
params = {
{type = "Sound", name = "sound"},
{type = "float", name = "volume"}
}
},
{
name = "SetSoundPitch",
description = "Set pitch for a sound (1.0 is base level)",
returnType = "void",
params = {
{type = "Sound", name = "sound"},
{type = "float", name = "pitch"}
}
},
{
name = "SetSoundPan",
description = "Set pan for a sound (0.5 is center)",
returnType = "void",
params = {
{type = "Sound", name = "sound"},
{type = "float", name = "pan"}
}
},
{
name = "WaveCopy",
description = "Copy a wave to a new wave",
returnType = "Wave",
params = {
{type = "Wave", name = "wave"}
}
},
{
name = "WaveCrop",
description = "Crop a wave to defined frames range",
returnType = "void",
params = {
{type = "Wave *", name = "wave"},
{type = "int", name = "initFrame"},
{type = "int", name = "finalFrame"}
}
},
{
name = "WaveFormat",
description = "Convert wave data to desired format",
returnType = "void",
params = {
{type = "Wave *", name = "wave"},
{type = "int", name = "sampleRate"},
{type = "int", name = "sampleSize"},
{type = "int", name = "channels"}
}
},
{
name = "LoadWaveSamples",
description = "Load samples data from wave as a 32bit float data array",
returnType = "float *",
params = {
{type = "Wave", name = "wave"}
}
},
{
name = "UnloadWaveSamples",
description = "Unload samples data loaded with LoadWaveSamples()",
returnType = "void",
params = {
{type = "float *", name = "samples"}
}
},
{
name = "LoadMusicStream",
description = "Load music stream from file",
returnType = "Music",
params = {
{type = "const char *", name = "fileName"}
}
},
{
name = "LoadMusicStreamFromMemory",
description = "Load music stream from data",
returnType = "Music",
params = {
{type = "const char *", name = "fileType"},
{type = "const unsigned char *", name = "data"},
{type = "int", name = "dataSize"}
}
},
{
name = "IsMusicValid",
description = "Checks if a music stream is valid (context and buffers initialized)",
returnType = "bool",
params = {
{type = "Music", name = "music"}
}
},
{
name = "UnloadMusicStream",
description = "Unload music stream",
returnType = "void",
params = {
{type = "Music", name = "music"}
}
},
{
name = "PlayMusicStream",
description = "Start music playing",
returnType = "void",
params = {
{type = "Music", name = "music"}
}
},
{
name = "IsMusicStreamPlaying",
description = "Check if music is playing",
returnType = "bool",
params = {
{type = "Music", name = "music"}
}
},
{
name = "UpdateMusicStream",
description = "Updates buffers for music streaming",
returnType = "void",
params = {
{type = "Music", name = "music"}
}
},
{
name = "StopMusicStream",
description = "Stop music playing",
returnType = "void",
params = {
{type = "Music", name = "music"}
}
},
{
name = "PauseMusicStream",
description = "Pause music playing",
returnType = "void",
params = {
{type = "Music", name = "music"}
}
},
{
name = "ResumeMusicStream",
description = "Resume playing paused music",
returnType = "void",
params = {
{type = "Music", name = "music"}
}
},
{
name = "SeekMusicStream",
description = "Seek music to a position (in seconds)",
returnType = "void",
params = {
{type = "Music", name = "music"},
{type = "float", name = "position"}
}
},
{
name = "SetMusicVolume",
description = "Set volume for music (1.0 is max level)",
returnType = "void",
params = {
{type = "Music", name = "music"},
{type = "float", name = "volume"}
}
},
{
name = "SetMusicPitch",
description = "Set pitch for a music (1.0 is base level)",
returnType = "void",
params = {
{type = "Music", name = "music"},
{type = "float", name = "pitch"}
}
},
{
name = "SetMusicPan",
description = "Set pan for a music (0.5 is center)",
returnType = "void",
params = {
{type = "Music", name = "music"},
{type = "float", name = "pan"}
}
},
{
name = "GetMusicTimeLength",
description = "Get music time length (in seconds)",
returnType = "float",
params = {
{type = "Music", name = "music"}
}
},
{
name = "GetMusicTimePlayed",
description = "Get current music time played (in seconds)",
returnType = "float",
params = {
{type = "Music", name = "music"}
}
},
{
name = "LoadAudioStream",
description = "Load audio stream (to stream raw audio pcm data)",
returnType = "AudioStream",
params = {
{type = "unsigned int", name = "sampleRate"},
{type = "unsigned int", name = "sampleSize"},
{type = "unsigned int", name = "channels"}
}
},
{
name = "IsAudioStreamValid",
description = "Checks if an audio stream is valid (buffers initialized)",
returnType = "bool",
params = {
{type = "AudioStream", name = "stream"}
}
},
{
name = "UnloadAudioStream",
description = "Unload audio stream and free memory",
returnType = "void",
params = {
{type = "AudioStream", name = "stream"}
}
},
{
name = "UpdateAudioStream",
description = "Update audio stream buffers with data",
returnType = "void",
params = {
{type = "AudioStream", name = "stream"},
{type = "const void *", name = "data"},
{type = "int", name = "frameCount"}
}
},
{
name = "IsAudioStreamProcessed",
description = "Check if any audio stream buffers requires refill",
returnType = "bool",
params = {
{type = "AudioStream", name = "stream"}
}
},
{
name = "PlayAudioStream",
description = "Play audio stream",
returnType = "void",
params = {
{type = "AudioStream", name = "stream"}
}
},
{
name = "PauseAudioStream",
description = "Pause audio stream",
returnType = "void",
params = {
{type = "AudioStream", name = "stream"}
}
},
{
name = "ResumeAudioStream",
description = "Resume audio stream",
returnType = "void",
params = {
{type = "AudioStream", name = "stream"}
}
},
{
name = "IsAudioStreamPlaying",
description = "Check if audio stream is playing",
returnType = "bool",
params = {
{type = "AudioStream", name = "stream"}
}
},
{
name = "StopAudioStream",
description = "Stop audio stream",
returnType = "void",
params = {
{type = "AudioStream", name = "stream"}
}
},
{
name = "SetAudioStreamVolume",
description = "Set volume for audio stream (1.0 is max level)",
returnType = "void",
params = {
{type = "AudioStream", name = "stream"},
{type = "float", name = "volume"}
}
},
{
name = "SetAudioStreamPitch",
description = "Set pitch for audio stream (1.0 is base level)",
returnType = "void",
params = {
{type = "AudioStream", name = "stream"},
{type = "float", name = "pitch"}
}
},
{
name = "SetAudioStreamPan",
description = "Set pan for audio stream (0.5 is centered)",
returnType = "void",
params = {
{type = "AudioStream", name = "stream"},
{type = "float", name = "pan"}
}
},
{
name = "SetAudioStreamBufferSizeDefault",
description = "Default size for new audio streams",
returnType = "void",
params = {
{type = "int", name = "size"}
}
},
{
name = "SetAudioStreamCallback",
description = "Audio thread callback to request new data",
returnType = "void",
params = {
{type = "AudioStream", name = "stream"},
{type = "AudioCallback", name = "callback"}
}
},
{
name = "AttachAudioStreamProcessor",
description = "Attach audio stream processor to stream, receives frames x 2 samples as 'float' (stereo)",
returnType = "void",
params = {
{type = "AudioStream", name = "stream"},
{type = "AudioCallback", name = "processor"}
}
},
{
name = "DetachAudioStreamProcessor",
description = "Detach audio stream processor from stream",
returnType = "void",
params = {
{type = "AudioStream", name = "stream"},
{type = "AudioCallback", name = "processor"}
}
},
{
name = "AttachAudioMixedProcessor",
description = "Attach audio stream processor to the entire audio pipeline, receives frames x 2 samples as 'float' (stereo)",
returnType = "void",
params = {
{type = "AudioCallback", name = "processor"}
}
},
{
name = "DetachAudioMixedProcessor",
description = "Detach audio stream processor from the entire audio pipeline",
returnType = "void",
params = {
{type = "AudioCallback", name = "processor"}
}
}
}
}