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"} ] } ] };