raylib/tools/rlparser/output/raylib_api.js
2026-06-20 11:16:34 -03:00

8526 lines
225 KiB
JavaScript

export default {
defines: [
{
name: "RAYLIB_H",
type: "GUARD",
value: "",
description: ""
},
{
name: "RAYLIB_VERSION_MAJOR",
type: "INT",
value: 6,
description: ""
},
{
name: "RAYLIB_VERSION_MINOR",
type: "INT",
value: 1,
description: ""
},
{
name: "RAYLIB_VERSION_PATCH",
type: "INT",
value: 0,
description: ""
},
{
name: "RAYLIB_VERSION",
type: "STRING",
value: "6.1-dev",
description: ""
},
{
name: "__declspec(x)",
type: "MACRO",
value: "__attribute__((x))",
description: ""
},
{
name: "RLAPI",
type: "UNKNOWN",
value: "__declspec(dllexport)",
description: "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 height in world units 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 (screen space offset from window origin)"
},
{
type: "Vector2",
name: "target",
description: "Camera target (world space target point that is mapped to screen space offset)"
},
{
type: "float",
name: "rotation",
description: "Camera rotation in degrees (pivots around target)"
},
{
type: "float",
name: "zoom",
description: "Camera zoom (scaling around target), must not be set to 0, set to 1.0f for no scale"
}
]
},
{
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: "int",
name: "boneCount",
description: "Number of bones (MAX: 256 bones)"
},
{
type: "unsigned char *",
name: "boneIndices",
description: "Vertex bone indices, 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: "float *",
name: "animVertices",
description: "Animated vertex positions (after bones transformations)"
},
{
type: "float *",
name: "animNormals",
description: "Animated normals (after bones transformations)"
},
{
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: "ModelSkeleton",
description: "Skeleton, animation bones hierarchy",
fields: [
{
type: "int",
name: "boneCount",
description: "Number of bones"
},
{
type: "BoneInfo *",
name: "bones",
description: "Bones information (skeleton)"
},
{
type: "ModelAnimPose",
name: "bindPose",
description: "Bones base transformation (Transform[])"
}
]
},
{
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: "ModelSkeleton",
name: "skeleton",
description: "Skeleton for animation"
},
{
type: "ModelAnimPose",
name: "currentPose",
description: "Current animation pose (Transform[])"
},
{
type: "Matrix *",
name: "boneMatrices",
description: "Bones animated transformation matrices"
}
]
},
{
name: "ModelAnimation",
description: "ModelAnimation, contains a full animation sequence",
fields: [
{
type: "char[32]",
name: "name",
description: "Animation name"
},
{
type: "int",
name: "boneCount",
description: "Number of bones (per pose)"
},
{
type: "int",
name: "keyframeCount",
description: "Number of animation key frames"
},
{
type: "ModelAnimPose *",
name: "keyframePoses",
description: "Animation sequence keyframe poses [keyframe][pose]"
}
]
},
{
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: "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"
},
{
type: "Transform",
name: "*ModelAnimPose",
description: "Anim pose, an array of Transform[]"
}
],
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, 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 axes",
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: heightmap"
},
{
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: bone indices"
},
{
name: "SHADER_LOC_VERTEX_BONEWEIGHTS",
value: 27,
description: "Shader location: vertex attribute: bone weights"
},
{
name: "SHADER_LOC_MATRIX_BONETRANSFORMS",
value: 28,
description: "Shader location: matrix attribute: bone transforms (animation)"
},
{
name: "SHADER_LOC_VERTEX_INSTANCETRANSFORM",
value: 29,
description: "Shader location: vertex attribute: instance transforms"
}
]
},
{
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, 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: "const 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: "const 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: "Show cursor",
returnType: "void"
},
{
name: "HideCursor",
description: "Hide cursor",
returnType: "void"
},
{
name: "IsCursorHidden",
description: "Check if cursor is not visible",
returnType: "bool"
},
{
name: "EnableCursor",
description: "Enable cursor (unlock cursor)",
returnType: "void"
},
{
name: "DisableCursor",
description: "Disable cursor (lock cursor)",
returnType: "void"
},
{
name: "IsCursorOnScreen",
description: "Check if cursor is on the screen",
returnType: "bool"
},
{
name: "ClearBackground",
description: "Clear background (framebuffer) to color",
returnType: "void",
params: [
{type: "Color", name: "color"}
]
},
{
name: "BeginDrawing",
description: "Begin canvas (framebuffer) drawing",
returnType: "void"
},
{
name: "EndDrawing",
description: "End canvas (framebuffer) 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: "End 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: "End 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: "End 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 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 screen space position for a 3d world space position",
returnType: "Vector2",
params: [
{type: "Vector3", name: "position"},
{type: "Camera", name: "camera"}
]
},
{
name: "GetWorldToScreenEx",
description: "Get sized screen space 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 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 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: "Set up 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: "SetTraceLogLevel",
description: "Set the current threshold (minimum) log level",
returnType: "void",
params: [
{type: "int", name: "logLevel"}
]
},
{
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: "SetTraceLogCallback",
description: "Set custom trace log",
returnType: "void",
params: [
{type: "TraceLogCallback", name: "callback"}
]
},
{
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: "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: "const 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: "const char *", name: "text"}
]
},
{
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: "FileRename",
description: "Rename file (if exists), returns 0 on success",
returnType: "int",
params: [
{type: "const char *", name: "fileName"},
{type: "const char *", name: "fileRename"}
]
},
{
name: "FileRemove",
description: "Remove file (if exists), returns 0 on success",
returnType: "int",
params: [
{type: "const char *", name: "fileName"}
]
},
{
name: "FileCopy",
description: "Copy file from one path to another, dstPath created if it doesn't exist, returns 0 on success",
returnType: "int",
params: [
{type: "const char *", name: "srcPath"},
{type: "const char *", name: "dstPath"}
]
},
{
name: "FileMove",
description: "Move file from one directory to another, dstPath created if it doesn't exist, returns 0 on success",
returnType: "int",
params: [
{type: "const char *", name: "srcPath"},
{type: "const char *", name: "dstPath"}
]
},
{
name: "FileTextReplace",
description: "Replace text in an existing file, returns 0 on success",
returnType: "int",
params: [
{type: "const char *", name: "fileName"},
{type: "const char *", name: "search"},
{type: "const char *", name: "replacement"}
]
},
{
name: "FileTextFindIndex",
description: "Find text in existing file, returns -1 if index not found or index otherwise",
returnType: "int",
params: [
{type: "const char *", name: "fileName"},
{type: "const char *", name: "search"}
]
},
{
name: "FileExists",
description: "Check if file exists",
returnType: "bool",
params: [
{type: "const char *", name: "fileName"}
]
},
{
name: "DirectoryExists",
description: "Check if directory path exists",
returnType: "bool",
params: [
{type: "const char *", name: "dirPath"}
]
},
{
name: "IsFileExtension",
description: "Check file extension (recommended include 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: "GetFileModTime",
description: "Get file modification time (last write time)",
returnType: "long",
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, returns 0 on success",
returnType: "int",
params: [
{type: "const char *", name: "dirPath"}
]
},
{
name: "IsPathFile",
description: "Check if 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, files and directories, no subdirs scan",
returnType: "FilePathList",
params: [
{type: "const char *", name: "dirPath"}
]
},
{
name: "LoadDirectoryFilesEx",
description: "Load directory filepaths with extension filtering and subdir scan; some filters available: '*.*','FILES*','DIRS*'",
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 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: "GetDirectoryFileCount",
description: "Get the file count in a directory",
returnType: "unsigned int",
params: [
{type: "const char *", name: "dirPath"}
]
},
{
name: "GetDirectoryFileCountEx",
description: "Get the file count in a directory with extension filtering and recursive directory scan. Use 'DIR' in the filter string to include directories in the result",
returnType: "unsigned int",
params: [
{type: "const char *", name: "basePath"},
{type: "const char *", name: "filter"},
{type: "bool", name: "scanSubdirs"}
]
},
{
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 (includes NULL terminator), 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 (expected NULL terminated), memory must be MemFree()",
returnType: "unsigned char *",
params: [
{type: "const char *", name: "text"},
{type: "int *", name: "outputSize"}
]
},
{
name: "ComputeCRC32",
description: "Compute CRC32 hash code",
returnType: "unsigned int",
params: [
{type: "const 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: "const 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: "const unsigned char *", name: "data"},
{type: "int", name: "dataSize"}
]
},
{
name: "ComputeSHA256",
description: "Compute SHA256 hash code, returns static int[8] (32 bytes)",
returnType: "unsigned int *",
params: [
{type: "const 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 key has been pressed once",
returnType: "bool",
params: [
{type: "int", name: "key"}
]
},
{
name: "IsKeyPressedRepeat",
description: "Check if key has been pressed again",
returnType: "bool",
params: [
{type: "int", name: "key"}
]
},
{
name: "IsKeyDown",
description: "Check if key is being pressed",
returnType: "bool",
params: [
{type: "int", name: "key"}
]
},
{
name: "IsKeyReleased",
description: "Check if key has been released once",
returnType: "bool",
params: [
{type: "int", name: "key"}
]
},
{
name: "IsKeyUp",
description: "Check if 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 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 gamepad button has been pressed once",
returnType: "bool",
params: [
{type: "int", name: "gamepad"},
{type: "int", name: "button"}
]
},
{
name: "IsGamepadButtonDown",
description: "Check if gamepad button is being pressed",
returnType: "bool",
params: [
{type: "int", name: "gamepad"},
{type: "int", name: "button"}
]
},
{
name: "IsGamepadButtonReleased",
description: "Check if gamepad button has been released once",
returnType: "bool",
params: [
{type: "int", name: "gamepad"},
{type: "int", name: "button"}
]
},
{
name: "IsGamepadButtonUp",
description: "Check if 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 axis count for a gamepad",
returnType: "int",
params: [
{type: "int", name: "gamepad"}
]
},
{
name: "GetGamepadAxisMovement",
description: "Get 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 mouse button has been pressed once",
returnType: "bool",
params: [
{type: "int", name: "button"}
]
},
{
name: "IsMouseButtonDown",
description: "Check if mouse button is being pressed",
returnType: "bool",
params: [
{type: "int", name: "button"}
]
},
{
name: "IsMouseButtonReleased",
description: "Check if mouse button has been released once",
returnType: "bool",
params: [
{type: "int", name: "button"}
]
},
{
name: "IsMouseButtonUp",
description: "Check if 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 gesture has 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: "rec"}
]
},
{
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: "DrawLineDashed",
description: "Draw a dashed line",
returnType: "void",
params: [
{type: "Vector2", name: "startPos"},
{type: "Vector2", name: "endPos"},
{type: "int", name: "dashSize"},
{type: "int", name: "spaceSize"},
{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: "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: "DrawCircleGradient",
description: "Draw a gradient-filled circle",
returnType: "void",
params: [
{type: "Vector2", name: "center"},
{type: "float", name: "radius"},
{type: "Color", name: "inner"},
{type: "Color", name: "outer"}
]
},
{
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: "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: "DrawEllipseV",
description: "Draw ellipse (Vector version)",
returnType: "void",
params: [
{type: "Vector2", name: "center"},
{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: "DrawEllipseLinesV",
description: "Draw ellipse outline (Vector version)",
returnType: "void",
params: [
{type: "Vector2", name: "center"},
{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: "bottomRight"},
{type: "Color", name: "topRight"}
]
},
{
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 lines 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: "DrawTriangleGradient",
description: "Draw triangle with interpolated colors (vertex in counter-clockwise order!)",
returnType: "void",
params: [
{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: "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 polygon 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: "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: "GetSplinePointBezierQuadratic",
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 between 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 (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, memory must be MemFree()",
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: "int", 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: "int", name: "posX"},
{type: "int", name: "posY"},
{type: "int", name: "width"},
{type: "int", name: "height"},
{type: "Color", name: "color"}
]
},
{
name: "ImageDrawRectangleLinesEx",
description: "Draw rectangle lines within an image with extended parameters",
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: "ImageDrawTriangleGradient",
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: "const 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: "const 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 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 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 (pixels should be able to fill texture)",
returnType: "void",
params: [
{type: "Texture2D", name: "texture"},
{type: "const void *", name: "pixels"}
]
},
{
name: "UpdateTextureRec",
description: "Update GPU texture rectangle with new data (pixels and rec should fit in texture)",
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: "rec"},
{type: "Vector2", name: "position"},
{type: "Color", name: "tint"}
]
},
{
name: "DrawTexturePro",
description: "Draw a part of a texture defined by a source rectangle to destination rectangle, with scaling and rotation",
returnType: "void",
params: [
{type: "Texture2D", name: "texture"},
{type: "Rectangle", name: "srcrec"},
{type: "Rectangle", name: "dstrec"},
{type: "Vector2", name: "origin"},
{type: "float", name: "rotation"},
{type: "Color", name: "tint"}
]
},
{
name: "DrawTextureNPatch",
description: "Draw 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: "dstrec"},
{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: "const 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: "const 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: "const int *", name: "codepoints"},
{type: "int", name: "codepointCount"}
]
},
{
name: "IsFontValid",
description: "Check if 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: "const int *", name: "codepoints"},
{type: "int", name: "codepointCount"},
{type: "int", name: "type"},
{type: "int *", name: "glyphCount"}
]
},
{
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 characters (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: "MeasureTextCodepoints",
description: "Measure string size for an existing array of codepoints for Font",
returnType: "Vector2",
params: [
{type: "Font", name: "font"},
{type: "const int *", name: "codepoints"},
{type: "int", name: "length"},
{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: "LoadTextLines",
description: "Load text as separate lines ('\\n')",
returnType: "char **",
params: [
{type: "const char *", name: "text"},
{type: "int *", name: "count"}
]
},
{
name: "UnloadTextLines",
description: "Unload text lines",
returnType: "void",
params: [
{type: "char **", name: "text"},
{type: "int", name: "lineCount"}
]
},
{
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 strings 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: "TextRemoveSpaces",
description: "Remove text spaces, concat words",
returnType: "const char *",
params: [
{type: "const char *", name: "text"}
]
},
{
name: "GetTextBetween",
description: "Get text between two strings",
returnType: "char *",
params: [
{type: "const char *", name: "text"},
{type: "const char *", name: "begin"},
{type: "const char *", name: "end"}
]
},
{
name: "TextReplace",
description: "Replace text string with new string",
returnType: "char *",
params: [
{type: "const char *", name: "text"},
{type: "const char *", name: "search"},
{type: "const char *", name: "replacement"}
]
},
{
name: "TextReplaceAlloc",
description: "Replace text string with new string, memory must be MemFree()",
returnType: "char *",
params: [
{type: "const char *", name: "text"},
{type: "const char *", name: "search"},
{type: "const char *", name: "replacement"}
]
},
{
name: "TextReplaceBetween",
description: "Replace text between two specific strings",
returnType: "char *",
params: [
{type: "const char *", name: "text"},
{type: "const char *", name: "begin"},
{type: "const char *", name: "end"},
{type: "const char *", name: "replacement"}
]
},
{
name: "TextReplaceBetweenAlloc",
description: "Replace text between two specific strings, memory must be MemFree()",
returnType: "char *",
params: [
{type: "const char *", name: "text"},
{type: "const char *", name: "begin"},
{type: "const char *", name: "end"},
{type: "const char *", name: "replacement"}
]
},
{
name: "TextInsert",
description: "Insert text in a defined byte position",
returnType: "char *",
params: [
{type: "const char *", name: "text"},
{type: "const char *", name: "insert"},
{type: "int", name: "position"}
]
},
{
name: "TextInsertAlloc",
description: "Insert text in a defined byte position, memory must be MemFree()",
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, using MAX_TEXTSPLIT_COUNT static 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, -1 if not found",
returnType: "int",
params: [
{type: "const char *", name: "text"},
{type: "const char *", name: "search"}
]
},
{
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: "sides"},
{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: "sides"},
{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: "rings"},
{type: "int", name: "slices"},
{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: "rings"},
{type: "int", name: "slices"},
{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 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: "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 rectangle",
returnType: "void",
params: [
{type: "Camera", name: "camera"},
{type: "Texture2D", name: "texture"},
{type: "Rectangle", name: "rec"},
{type: "Vector3", name: "position"},
{type: "Vector2", name: "size"},
{type: "Color", name: "tint"}
]
},
{
name: "DrawBillboardPro",
description: "Draw a billboard texture defined by source rectangle with scaling and rotation",
returnType: "void",
params: [
{type: "Camera", name: "camera"},
{type: "Texture2D", name: "texture"},
{type: "Rectangle", name: "rec"},
{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 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 (vertex buffers and bone matrices)",
returnType: "void",
params: [
{type: "Model", name: "model"},
{type: "ModelAnimation", name: "anim"},
{type: "float", name: "frame"}
]
},
{
name: "UpdateModelAnimationEx",
description: "Update model animation pose, blending two animations",
returnType: "void",
params: [
{type: "Model", name: "model"},
{type: "ModelAnimation", name: "animA"},
{type: "float", name: "frameA"},
{type: "ModelAnimation", name: "animB"},
{type: "float", name: "frameB"},
{type: "float", name: "blend"}
]
},
{
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: "Check 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: "Load sound alias, 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: "Check if sound is valid (data loaded and buffers initialized)",
returnType: "bool",
params: [
{type: "Sound", name: "sound"}
]
},
{
name: "UpdateSound",
description: "Update sound buffer with new data (default data format: 32 bit float, stereo)",
returnType: "void",
params: [
{type: "Sound", name: "sound"},
{type: "const void *", name: "data"},
{type: "int", name: "frameCount"}
]
},
{
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 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 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 (-1.0 left, 0.0 center, 1.0 right)",
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: "Check if 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: "Update 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 music (1.0 is base level)",
returnType: "void",
params: [
{type: "Music", name: "music"},
{type: "float", name: "pitch"}
]
},
{
name: "SetMusicPan",
description: "Set pan for music (-1.0 left, 0.0 center, 1.0 right)",
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: "Check 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 (-1.0 left, 0.0 center, 1.0 right)",
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"}
]
}
]
};