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