Created
June 26, 2024 14:19
-
-
Save benphelps/d5ea1e25c7a0e2493724a4095d517c38 to your computer and use it in GitHub Desktop.
LuaLS (EmmyLua) type definitions for most of raylib + raygui
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
---@meta raylib | |
---@class (exact) Vector2 | |
---@field x number x component | |
---@field y number y component | |
---@overload fun(x: number, y: number): Vector2 | |
---@overload fun(): Vector2 | |
Vector2 = {} | |
---@class (exact) Vector3 | |
---@field x number x component | |
---@field y number y component | |
---@field z number z component | |
---@overload fun(x: number, y: number, z: number): Vector3 | |
---@overload fun(x: number, y: number): Vector3 | |
---@overload fun(x: number): Vector3 | |
---@overload fun(): Vector3 | |
Vector3 = {} | |
---@class (exact) Vector4 | |
---@field x number x component | |
---@field y number y component | |
---@field z number z component | |
---@field w number w component | |
---@overload fun(x: number, y: number, z: number, w: number): Vector4 | |
---@overload fun(x: number, y: number, z: number): Vector4 | |
---@overload fun(x: number, y: number): Vector4 | |
---@overload fun(x: number): Vector4 | |
---@overload fun(): Vector4 | |
Vector4 = {} | |
---@class (exact) Quaternion: Vector4 | |
Quaternion = {} | |
---@class (exact) Matrix | |
---@field m0 number Matrix first row (4 components) | |
---@field m4 number | |
---@field m8 number | |
---@field m12 number | |
---@field m1 number Matrix second row (4 components) | |
---@field m5 number | |
---@field m9 number | |
---@field m13 number | |
---@field m2 number Matrix third row (4 components) | |
---@field m6 number | |
---@field m10 number | |
---@field m14 number | |
---@field m3 number Matrix fourth row (4 components) | |
---@field m7 number | |
---@field m11 number | |
---@field m15 number | |
---@overload fun(m0: number, m4: number, m8: number, m12: number, m1: number, m5: number, m9: number, m13: number, m2: number, m6: number, m10: number, m14: number, m3: number, m7: number, m11: number, m15: number): Matrix | |
---@overload fun(): Matrix | |
Matrix = {} | |
---@class (exact) Color | |
---@field r number Color red value | |
---@field g number Color green value | |
---@field b number Color blue value | |
---@field a number Color alpha value | |
---@overload fun(r: number, g: number, b: number, a: number): Color | |
---@overload fun(r: number, g: number, b: number): Color | |
---@overload fun(): Color | |
Color = {} | |
---@class (exact) Rectangle | |
---@field x number Rectangle top-left corner position x | |
---@field y number Rectangle top-left corner position y | |
---@field width number Rectangle width | |
---@field height number Rectangle height | |
---@overload fun(x: number, y: number, width: number, height: number): Rectangle | |
---@overload fun(rectangle: Rectangle): Rectangle | |
---@overload fun(): Rectangle | |
Rectangle = {} | |
---@class (exact) Image | |
---@field data userdata Image raw data | |
---@field width number Image base width | |
---@field height number Image base height | |
---@field mipmaps number Mipmap levels, 1 by default | |
---@field format number Data format (PixelFormat type) | |
Image = {} | |
---@class (exact) Texture | |
---@field id number OpenGL texture id | |
---@field width number Texture base width | |
---@field height number Texture base height | |
---@field mipmaps number Mipmap levels, 1 by default | |
---@field format number Data format (PixelFormat type) | |
Texture = {} | |
---@class (exact) Texture2D: Texture | |
Texture2D = {} | |
---@class (exact) TextureCubemap: Texture | |
TextureCubemap = {} | |
---@class (exact) RenderTexture | |
---@field id number OpenGL framebuffer object id | |
---@field texture Texture Color buffer attachment texture | |
---@field depth Texture Depth buffer attachment texture | |
RenderTexture = {} | |
---@class (exact) RenderTexture2D: RenderTexture | |
RenderTexture2D = {} | |
---@class (exact) NPatchInfo | |
---@field source Rectangle Texture source rectangle | |
---@field left number Left border offset | |
---@field top number Top border offset | |
---@field right number Right border offset | |
---@field bottom number Bottom border offset | |
---@field layout NPatchLayout Layout of the n-patch: 3x3, 1x3 or 3x1 | |
NPatchInfo = {} | |
---@class (exact) GlyphInfo | |
---@field value number Character value (Unicode) | |
---@field offsetX number Character offset X when drawing | |
---@field offsetY number Character offset Y when drawing | |
---@field advanceX number Character advance position X | |
---@field image Image Character image data | |
GlyphInfo = {} | |
---@class (exact) Font | |
---@field baseSize number Base size (default strings height) | |
---@field glyphCount number Number of glyph stringacters | |
---@field glyphPadding number Padding around the glyph stringacters | |
---@field texture Texture2D Texture atlas containing the glyphs | |
---@field recs Rectangle[] Rectangles in texture for the glyphs | |
---@field glyphs GlyphInfo[] Glyphs info data | |
Font = {} | |
---@class (exact) Camera3D | |
---@field position Vector3 Camera position | |
---@field target Vector3 Camera target it looks-at | |
---@field up Vector3 Camera up vector (rotation over its axis) | |
---@field fovy number Camera field-of-view aperture in Y (degrees) in perspective, used as near plane width in orthographic | |
---@field projection CameraProjection Camera projection: CAMERA_PERSPECTIVE or CAMERA_ORTHOGRAPHIC | |
---@overload fun(position: Vector3, target: Vector3, up: Vector3, fovy: number, projection: number): Camera3D | |
---@overload fun(position: Vector3, target: Vector3, up: Vector3, fovy: number): Camera3D | |
---@overload fun(position: Vector3, target: Vector3, up: Vector3): Camera3D | |
---@overload fun(): Camera3D | |
Camera3D = {} | |
---@class (exact) Camera: Camera3D | |
Camera = {} | |
---@class (exact) Camera2D | |
---@field offset Vector2 Camera offset (displacement from target) | |
---@field target Vector2 Camera target (rotation and zoom origin) | |
---@field rotation number Camera rotation in degrees | |
---@field zoom number Camera zoom (scaling), should be 1.0f by default | |
---@overload fun(offset: Vector2, target: Vector2, rotation: number, zoom: number): Camera2D | |
---@overload fun(offset: Vector2, target: Vector2): Camera2D | |
---@overload fun(): Camera2D | |
Camera2D = {} | |
---@class (exact) Mesh | |
---@field vertexCount number Number of vertices stored in arrays | |
---@field triangleCount number Number of triangles stored (indexed or not) | |
---@field vertices number[] Vertex position (XYZ - 3 components per vertex) (shader-location = 0) | |
---@field texcoords number[] Vertex texture coordinates (UV - 2 components per vertex) (shader-location = 1) | |
---@field texcoords2 number[] Vertex texture second coordinates (UV - 2 components per vertex) (shader-location = 5) | |
---@field normals number[] Vertex normals (XYZ - 3 components per vertex) (shader-location = 2) | |
---@field tangents number[] Vertex tangents (XYZW - 4 components per vertex) (shader-location = 4) | |
---@field colors number[] Vertex colors (RGBA - 4 components per vertex) (shader-location = 3) | |
---@field indices number[] Vertex indices (in case vertex data comes indexed) | |
---@field animVertices number[] Animated vertex positions (after bones transformations) | |
---@field animNormals number[] Animated normals (after bones transformations) | |
---@field boneIds number[] Vertex bone ids, max 255 bone ids, up to 4 bones influence by vertex (skinning) | |
---@field boneWeights number[] Vertex bone weight, up to 4 bones influence by vertex (skinning) | |
---@field vaoId number OpenGL Vertex Array Object id | |
---@field vboId number[] OpenGL Vertex Buffer Objects id (default vertex data) | |
Mesh = {} | |
---@class (exact) Shader | |
---@field id number Shader program id | |
---@field locs number[] Shader locations array (RL_MAX_SHADER_LOCATIONS) | |
Shader = {} | |
---@class (exact) MaterialMap | |
---@field texture Texture2D Material map texture | |
---@field color Color Material map color | |
---@field value number Material map value | |
MaterialMap = {} | |
---@class (exact) Material | |
---@field shader Shader Material shader | |
---@field maps MaterialMap[] Material maps array (MAX_MATERIAL_MAPS) | |
---@field params number[] Material generic parameters (if required) | |
Material = {} | |
---@class (exact) Transform | |
---@field translation Vector3 Translation | |
---@field rotation Quaternion Rotation | |
---@field scale Vector3 Scale | |
Transform = {} | |
---@class (exact) BoneInfo | |
---@field name string Bone name | |
---@field parent number Bone parent | |
BoneInfo = {} | |
---@class (exact) Model | |
---@field transform Matrix Local transform matrix | |
---@field meshCount number Number of meshes | |
---@field materialCount number Number of materials | |
---@field meshes Mesh[] Meshes array | |
---@field materials Material[] Materials array | |
---@field meshMaterial number[] Mesh material number | |
---@field boneCount number Number of bones | |
---@field bones BoneInfo[] Bones information (skeleton) | |
---@field bindPose Transform[] Bones base transformation (pose) | |
Model = {} | |
---@class (exact) ModelAnimation | |
---@field boneCount number Number of bones | |
---@field frameCount number Number of animation frames | |
---@field bones BoneInfo[] Bones information (skeleton) | |
---@field framePoses Transform[][] Poses array by frame | |
ModelAnimation = {} | |
---@class (exact) Ray | |
---@field position Vector3 Ray position (origin) | |
---@field direction Vector3 Ray direction | |
---@overload fun(position: Vector3, direction: Vector3): Ray | |
---@overload fun(position: Vector3): Ray | |
---@overload fun(): Ray | |
Ray = {} | |
---@class (exact) RayCollision | |
---@field hit boolean Did the ray hit something? | |
---@field distance number Distance to the nearest hit | |
---@field point Vector3 Point of the nearest hit | |
---@field normal Vector3 Surface normal of hit | |
RayCollision = {} | |
---@class (exact) BoundingBox | |
---@field min Vector3 Minimum vertex box-corner | |
---@field max Vector3 Maximum vertex box-corner | |
---@overload fun(min: Vector3, max: Vector3): BoundingBox | |
---@overload fun(): BoundingBox | |
BoundingBox = {} | |
---@class (exact) Wave | |
---@field frameCount number Total number of frames (considering channels) | |
---@field sampleRate number Frequency (samples per second) | |
---@field sampleSize number Bit depth (bits per sample): 8, 16, 32 (24 not supported) | |
---@field channels number Number of channels (1-mono, 2-stereo, ...) | |
---@field data userdata Buffer data pointer | |
Wave = {} | |
---@class (exact) rAudioBuffer | |
rAudioBuffer = {} | |
---@class (exact) rAudioProcessor | |
rAudioProcessor = {} | |
---@class (exact) AudioStream | |
---@field buffer rAudioBuffer Pointer to internal data used by the audio system | |
---@field processor rAudioProcessor Pointer to internal data processor, useful for audio effects | |
---@field sampleRate number Frequency (samples per second) | |
---@field sampleSize number Bit depth (bits per sample): 8, 16, 32 (24 not supported) | |
---@field channels number Number of channels (1-mono, 2-stereo, ...) | |
AudioStream = {} | |
---@class (exact) Sound | |
---@field stream AudioStream Audio stream | |
---@field frameCount number Total number of frames (considering channels) | |
Sound = {} | |
---@class (exact) Music | |
---@field stream AudioStream Audio stream | |
---@field frameCount number Total number of frames (considering channels) | |
---@field looping boolean Music looping enable | |
---@field ctxType number Type of music context (audio filetype) | |
---@field ctxData userdata Audio context data, depends on type | |
Music = {} | |
---@class (exact) VrDeviceInfo | |
---@field hResolution number Horizontal resolution in pixels | |
---@field vResolution number Vertical resolution in pixels | |
---@field hScreenSize number Horizontal size in meters | |
---@field vScreenSize number Vertical size in meters | |
---@field vScreenCenter number Screen center in meters | |
---@field eyeToScreenDistance number Distance between eye and display in meters | |
---@field lensSeparationDistance number Lens separation distance in meters | |
---@field interpupillaryDistance number IPD (distance between pupils) in meters | |
---@field lensDistortionValues number[] Lens distortion constant parameters | |
---@field chromaAbCorrection number[] Chromatic aberration correction parameters | |
VrDeviceInfo = {} | |
---@class VrStereoConfig | |
---@field projection Matrix[] VR projection matrices (per eye) | |
---@field viewOffset Matrix[] VR view offset matrices (per eye) | |
---@field leftLensCenter number[] VR left lens center | |
---@field rightLensCenter number[] VR right lens center | |
---@field leftScreenCenter number[] VR left screen center | |
---@field rightScreenCenter number[] VR right screen center | |
---@field scale number[] VR distortion scale | |
---@field scaleIn number[] VR distortion scale in | |
VrStereoConfig = {} | |
---@class FilePathList | |
---@field capacity number Filepaths max entries | |
---@field count number Filepaths entries count | |
---@field paths string[] Filepaths entries | |
FilePathList = {} | |
---@class AutomationEvent | |
---@field frame number Event frame | |
---@field type number Event type (AutomationEventType) | |
---@field params number[] Event parameters (if required) | |
AutomationEvent = {} | |
---@class AutomationEventList | |
---@field capacity number Events max entries (MAX_AUTOMATION_EVENTS) | |
---@field count number Events entries count | |
---@field events AutomationEvent[] Events entries | |
AutomationEventList = {} | |
-- Custom raylib color palette for amazing visuals on WHITE backgroun | |
LIGHTGRAY = { r = 200, g = 200, b = 200, a = 255 } --[[@as Color Light Gray]] | |
GRAY = { r = 130, g = 130, b = 130, a = 255 } --[[@as Color Gray]] | |
DARKGRAY = { r = 80, g = 80, b = 80, a = 255 } --[[@as Color Dark Gray]] | |
YELLOW = { r = 253, g = 249, b = 0, a = 255 } --[[@as Color Yellow]] | |
GOLD = { r = 255, g = 203, b = 0, a = 255 } --[[@as Color Gold]] | |
ORANGE = { r = 255, g = 161, b = 0, a = 255 } --[[@as Color Orange]] | |
PINK = { r = 255, g = 109, b = 194, a = 255 } --[[@as Color Pink]] | |
RED = { r = 230, g = 41, b = 55, a = 255 } --[[@as Color Red]] | |
MAROON = { r = 190, g = 33, b = 55, a = 255 } --[[@as Color Maroon]] | |
GREEN = { r = 0, g = 228, b = 48, a = 255 } --[[@as Color Green]] | |
LIME = { r = 0, g = 158, b = 47, a = 255 } --[[@as Color Lime]] | |
DARKGREEN = { r = 0, g = 117, b = 44, a = 255 } --[[@as Color Dark Green]] | |
SKYBLUE = { r = 102, g = 191, b = 255, a = 255 } --[[@as Color Sky Blue]] | |
BLUE = { r = 0, g = 121, b = 241, a = 255 } --[[@as Color Blue]] | |
DARKBLUE = { r = 0, g = 82, b = 172, a = 255 } --[[@as Color Dark Blue]] | |
PURPLE = { r = 200, g = 122, b = 255, a = 255 } --[[@as Color Purple]] | |
VIOLET = { r = 135, g = 60, b = 190, a = 255 } --[[@as Color Violet]] | |
DARKPURPLE = { r = 112, g = 31, b = 126, a = 255 } --[[@as Color Dark Purple]] | |
BEIGE = { r = 211, g = 176, b = 131, a = 255 } --[[@as Color Beige]] | |
BROWN = { r = 127, g = 106, b = 79, a = 255 } --[[@as Color Brown]] | |
DARKBROWN = { r = 76, g = 63, b = 47, a = 255 } --[[@as Color Dark Brown]] | |
WHITE = { r = 255, g = 255, b = 255, a = 255 } --[[@as Color White]] | |
BLACK = { r = 0, g = 0, b = 0, a = 255 } --[[@as Color Black]] | |
BLANK = { r = 0, g = 0, b = 0, a = 0 } --[[@as Color Blank (Transparent)]] | |
MAGENTA = { r = 255, g = 0, b = 255, a = 255 } --[[@as Color Magenta]] | |
RAYWHITE = { r = 245, g = 245, b = 245, a = 255 } --[[@as Color My own White (raylib logo)]] | |
-- System/Window config flags | |
FLAG_VSYNC_HINT = 0x00000040 -- Set to try enabling V-Sync on GPU | |
FLAG_FULLSCREEN_MODE = 0x00000002 -- Set to run program in fullscreen | |
FLAG_WINDOW_RESIZABLE = 0x00000004 -- Set to allow resizable window | |
FLAG_WINDOW_UNDECORATED = 0x00000008 -- Set to disable window decoration (frame and buttons) | |
FLAG_WINDOW_HIDDEN = 0x00000080 -- Set to hide window | |
FLAG_WINDOW_MINIMIZED = 0x00000200 -- Set to minimize window (iconify) | |
FLAG_WINDOW_MAXIMIZED = 0x00000400 -- Set to maximize window (expanded to monitor) | |
FLAG_WINDOW_UNFOCUSED = 0x00000800 -- Set to window non focused | |
FLAG_WINDOW_TOPMOST = 0x00001000 -- Set to window always on top | |
FLAG_WINDOW_ALWAYS_RUN = 0x00000100 -- Set to allow windows running while minimized | |
FLAG_WINDOW_TRANSPARENT = 0x00000010 -- Set to allow transparent framebuffer | |
FLAG_WINDOW_HIGHDPI = 0x00002000 -- Set to support HighDPI | |
FLAG_WINDOW_MOUSE_PASSTHROUGH = 0x00004000 -- Set to support mouse passthrough, only supported when FLAG_WINDOW_UNDECORATED | |
FLAG_BORDERLESS_WINDOWED_MODE = 0x00008000 -- Set to run program in borderless windowed mode | |
FLAG_MSAA_4X_HINT = 0x00000020 -- Set to try enabling MSAA 4X | |
FLAG_INTERLACED_HINT = 0x00010000 -- Set to try enabling interlaced video format (for V3D) | |
-- Trace log level | |
LOG_ALL = 0 -- Display all logs | |
LOG_TRACE = 1 -- Trace logging, intended for internal use only | |
LOG_DEBUG = 2 -- Debug logging, used for internal debugging, it should be disabled on release builds | |
LOG_INFO = 3 -- Info logging, used for program execution info | |
LOG_WARNING = 4 -- Warning logging, used on recoverable failures | |
LOG_ERROR = 5 -- Error logging, used on unrecoverable failures | |
LOG_FATAL = 6 -- Fatal logging, used to abort program: exit(EXIT_FAILURE) | |
LOG_NONE = 7 -- Disable logging | |
-- Keyboard keys (US keyboard layout) | |
KEY_NULL = 0 -- Key: NULL, used for no key pressed | |
KEY_APOSTROPHE = 39 -- Key: ' | |
KEY_COMMA = 44 -- Key: , | |
KEY_MINUS = 45 -- Key: - | |
KEY_PERIOD = 46 -- Key: . | |
KEY_SLASH = 47 -- Key: / | |
KEY_ZERO = 48 -- Key: 0 | |
KEY_ONE = 49 -- Key: 1 | |
KEY_TWO = 50 -- Key: 2 | |
KEY_THREE = 51 -- Key: 3 | |
KEY_FOUR = 52 -- Key: 4 | |
KEY_FIVE = 53 -- Key: 5 | |
KEY_SIX = 54 -- Key: 6 | |
KEY_SEVEN = 55 -- Key: 7 | |
KEY_EIGHT = 56 -- Key: 8 | |
KEY_NINE = 57 -- Key: 9 | |
KEY_SEMICOLON = 59 -- Key: ; | |
KEY_EQUAL = 61 -- Key: = | |
KEY_A = 65 -- Key: A | a | |
KEY_B = 66 -- Key: B | b | |
KEY_C = 67 -- Key: C | c | |
KEY_D = 68 -- Key: D | d | |
KEY_E = 69 -- Key: E | e | |
KEY_F = 70 -- Key: F | f | |
KEY_G = 71 -- Key: G | g | |
KEY_H = 72 -- Key: H | h | |
KEY_I = 73 -- Key: I | i | |
KEY_J = 74 -- Key: J | j | |
KEY_K = 75 -- Key: K | k | |
KEY_L = 76 -- Key: L | l | |
KEY_M = 77 -- Key: M | m | |
KEY_N = 78 -- Key: N | n | |
KEY_O = 79 -- Key: O | o | |
KEY_P = 80 -- Key: P | p | |
KEY_Q = 81 -- Key: Q | q | |
KEY_R = 82 -- Key: R | r | |
KEY_S = 83 -- Key: S | s | |
KEY_T = 84 -- Key: T | t | |
KEY_U = 85 -- Key: U | u | |
KEY_V = 86 -- Key: V | v | |
KEY_W = 87 -- Key: W | w | |
KEY_X = 88 -- Key: X | x | |
KEY_Y = 89 -- Key: Y | y | |
KEY_Z = 90 -- Key: Z | z | |
KEY_LEFT_BRACKET = 91 -- Key: [ | |
KEY_BACKSLASH = 92 -- Key: '\' | |
KEY_RIGHT_BRACKET = 93 -- Key: ] | |
KEY_GRAVE = 96 -- Key: ` | |
KEY_SPACE = 32 -- Key: Space | |
KEY_ESCAPE = 256 -- Key: Esc | |
KEY_ENTER = 257 -- Key: Enter | |
KEY_TAB = 258 -- Key: Tab | |
KEY_BACKSPACE = 259 -- Key: Backspace | |
KEY_INSERT = 260 -- Key: Ins | |
KEY_DELETE = 261 -- Key: Del | |
KEY_RIGHT = 262 -- Key: Cursor right | |
KEY_LEFT = 263 -- Key: Cursor left | |
KEY_DOWN = 264 -- Key: Cursor down | |
KEY_UP = 265 -- Key: Cursor up | |
KEY_PAGE_UP = 266 -- Key: Page up | |
KEY_PAGE_DOWN = 267 -- Key: Page down | |
KEY_HOME = 268 -- Key: Home | |
KEY_END = 269 -- Key: End | |
KEY_CAPS_LOCK = 280 -- Key: Caps lock | |
KEY_SCROLL_LOCK = 281 -- Key: Scroll down | |
KEY_NUM_LOCK = 282 -- Key: Num lock | |
KEY_PRINT_SCREEN = 283 -- Key: Print screen | |
KEY_PAUSE = 284 -- Key: Pause | |
KEY_F1 = 290 -- Key: F1 | |
KEY_F2 = 291 -- Key: F2 | |
KEY_F3 = 292 -- Key: F3 | |
KEY_F4 = 293 -- Key: F4 | |
KEY_F5 = 294 -- Key: F5 | |
KEY_F6 = 295 -- Key: F6 | |
KEY_F7 = 296 -- Key: F7 | |
KEY_F8 = 297 -- Key: F8 | |
KEY_F9 = 298 -- Key: F9 | |
KEY_F10 = 299 -- Key: F10 | |
KEY_F11 = 300 -- Key: F11 | |
KEY_F12 = 301 -- Key: F12 | |
KEY_LEFT_SHIFT = 340 -- Key: Shift left | |
KEY_LEFT_CONTROL = 341 -- Key: Control left | |
KEY_LEFT_ALT = 342 -- Key: Alt left | |
KEY_LEFT_SUPER = 343 -- Key: Super left | |
KEY_RIGHT_SHIFT = 344 -- Key: Shift right | |
KEY_RIGHT_CONTROL = 345 -- Key: Control right | |
KEY_RIGHT_ALT = 346 -- Key: Alt right | |
KEY_RIGHT_SUPER = 347 -- Key: Super right | |
KEY_KB_MENU = 348 -- Key: KB menu | |
KEY_KP_0 = 320 -- Key: Keypad 0 | |
KEY_KP_1 = 321 -- Key: Keypad 1 | |
KEY_KP_2 = 322 -- Key: Keypad 2 | |
KEY_KP_3 = 323 -- Key: Keypad 3 | |
KEY_KP_4 = 324 -- Key: Keypad 4 | |
KEY_KP_5 = 325 -- Key: Keypad 5 | |
KEY_KP_6 = 326 -- Key: Keypad 6 | |
KEY_KP_7 = 327 -- Key: Keypad 7 | |
KEY_KP_8 = 328 -- Key: Keypad 8 | |
KEY_KP_9 = 329 -- Key: Keypad 9 | |
KEY_KP_DECIMAL = 330 -- Key: Keypad . | |
KEY_KP_DIVIDE = 331 -- Key: Keypad / | |
KEY_KP_MULTIPLY = 332 -- Key: Keypad * | |
KEY_KP_SUBTRACT = 333 -- Key: Keypad - | |
KEY_KP_ADD = 334 -- Key: Keypad + | |
KEY_KP_ENTER = 335 -- Key: Keypad Enter | |
KEY_KP_EQUAL = 336 -- Key: Keypad = | |
KEY_BACK = 4 -- Key: Android back button | |
KEY_MENU = 5 -- Key: Android menu button | |
KEY_VOLUME_UP = 24 -- Key: Android volume up button | |
KEY_VOLUME_DOWN = 25 -- Key: Android volume down button | |
-- Mouse buttons | |
MOUSE_BUTTON_LEFT = 0 -- Mouse button left | |
MOUSE_BUTTON_RIGHT = 1 -- Mouse button right | |
MOUSE_BUTTON_MIDDLE = 2 -- Mouse button middle (pressed wheel) | |
MOUSE_BUTTON_SIDE = 3 -- Mouse button side (advanced mouse device) | |
MOUSE_BUTTON_EXTRA = 4 -- Mouse button extra (advanced mouse device) | |
MOUSE_BUTTON_FORWARD = 5 -- Mouse button forward (advanced mouse device) | |
MOUSE_BUTTON_BACK = 6 -- Mouse button back (advanced mouse device) | |
-- Mouse cursor | |
MOUSE_CURSOR_DEFAULT = 0 -- Default pointer shape | |
MOUSE_CURSOR_ARROW = 1 -- Arrow shape | |
MOUSE_CURSOR_IBEAM = 2 -- Text writing cursor shape | |
MOUSE_CURSOR_CROSSHAIR = 3 -- Cross shape | |
MOUSE_CURSOR_POINTING_HAND = 4 -- Pointing hand cursor | |
MOUSE_CURSOR_RESIZE_EW = 5 -- Horizontal resize/move arrow shape | |
MOUSE_CURSOR_RESIZE_NS = 6 -- Vertical resize/move arrow shape | |
MOUSE_CURSOR_RESIZE_NWSE = 7 -- Top-left to bottom-right diagonal resize/move arrow shape | |
MOUSE_CURSOR_RESIZE_NESW = 8 -- Top-right to bottom-left diagonal resize/move arrow shape | |
MOUSE_CURSOR_RESIZE_ALL = 9 -- Omnidirectional resize/move cursor shape | |
MOUSE_CURSOR_NOT_ALLOWED = 10 -- Operation-not-allowed shape | |
-- Gamepad buttons | |
GAMEPAD_BUTTON_UNKNOWN = 0 -- Unknown button, just for error checking | |
GAMEPAD_BUTTON_LEFT_FACE_UP = 1 -- Gamepad left DPAD up button | |
GAMEPAD_BUTTON_LEFT_FACE_RIGHT = 2 -- Gamepad left DPAD right button | |
GAMEPAD_BUTTON_LEFT_FACE_DOWN = 3 -- Gamepad left DPAD down button | |
GAMEPAD_BUTTON_LEFT_FACE_LEFT = 4 -- Gamepad left DPAD left button | |
GAMEPAD_BUTTON_RIGHT_FACE_UP = 5 -- Gamepad right button up (i.e. PS3: Triangle, Xbox: Y) | |
GAMEPAD_BUTTON_RIGHT_FACE_RIGHT = 6 -- Gamepad right button right (i.e. PS3: Circle, Xbox: B) | |
GAMEPAD_BUTTON_RIGHT_FACE_DOWN = 7 -- Gamepad right button down (i.e. PS3: Cross, Xbox: A) | |
GAMEPAD_BUTTON_RIGHT_FACE_LEFT = 8 -- Gamepad right button left (i.e. PS3: Square, Xbox: X) | |
GAMEPAD_BUTTON_LEFT_TRIGGER_1 = 9 -- Gamepad top/back trigger left (first), it could be a trailing button | |
GAMEPAD_BUTTON_LEFT_TRIGGER_2 = 10 -- Gamepad top/back trigger left (second), it could be a trailing button | |
GAMEPAD_BUTTON_RIGHT_TRIGGER_1 = 11 -- Gamepad top/back trigger right (first), it could be a trailing button | |
GAMEPAD_BUTTON_RIGHT_TRIGGER_2 = 12 -- Gamepad top/back trigger right (second), it could be a trailing button | |
GAMEPAD_BUTTON_MIDDLE_LEFT = 13 -- Gamepad center buttons, left one (i.e. PS3: Select) | |
GAMEPAD_BUTTON_MIDDLE = 14 -- Gamepad center buttons, middle one (i.e. PS3: PS, Xbox: XBOX) | |
GAMEPAD_BUTTON_MIDDLE_RIGHT = 15 -- Gamepad center buttons, right one (i.e. PS3: Start) | |
GAMEPAD_BUTTON_LEFT_THUMB = 16 -- Gamepad joystick pressed button left | |
GAMEPAD_BUTTON_RIGHT_THUMB = 17 -- Gamepad joystick pressed button right | |
-- Gamepad axis | |
GAMEPAD_AXIS_LEFT_X = 0 -- Gamepad left stick X axis | |
GAMEPAD_AXIS_LEFT_Y = 1 -- Gamepad left stick Y axis | |
GAMEPAD_AXIS_RIGHT_X = 2 -- Gamepad right stick X axis | |
GAMEPAD_AXIS_RIGHT_Y = 3 -- Gamepad right stick Y axis | |
GAMEPAD_AXIS_LEFT_TRIGGER = 4 -- Gamepad back trigger left, pressure level: [1..-1] | |
GAMEPAD_AXIS_RIGHT_TRIGGER = 5 -- Gamepad back trigger right, pressure level: [1..-1] | |
-- Material map index | |
MATERIAL_MAP_ALBEDO = 0 -- Albedo material (same as: MATERIAL_MAP_DIFFUSE) | |
MATERIAL_MAP_METALNESS = 1 -- Metalness material (same as: MATERIAL_MAP_SPECULAR) | |
MATERIAL_MAP_NORMAL = 2 -- Normal material | |
MATERIAL_MAP_ROUGHNESS = 3 -- Roughness material | |
MATERIAL_MAP_OCCLUSION = 4 -- Ambient occlusion material | |
MATERIAL_MAP_EMISSION = 5 -- Emission material | |
MATERIAL_MAP_HEIGHT = 6 -- Heightmap material | |
MATERIAL_MAP_CUBEMAP = 7 -- Cubemap material (NOTE: Uses GL_TEXTURE_CUBE_MAP) | |
MATERIAL_MAP_IRRADIANCE = 8 -- Irradiance material (NOTE: Uses GL_TEXTURE_CUBE_MAP) | |
MATERIAL_MAP_PREFILTER = 9 -- Prefilter material (NOTE: Uses GL_TEXTURE_CUBE_MAP) | |
MATERIAL_MAP_BRDF = 10 -- Brdf material | |
MATERIAL_MAP_DIFFUSE = MATERIAL_MAP_ALBEDO | |
MATERIAL_MAP_SPECULAR = MATERIAL_MAP_METALNESS | |
-- Shader location index | |
SHADER_LOC_VERTEX_POSITION = 0 -- Shader location: vertex attribute: position | |
SHADER_LOC_VERTEX_TEXCOORD01 = 1 -- Shader location: vertex attribute: texcoord01 | |
SHADER_LOC_VERTEX_TEXCOORD02 = 2 -- Shader location: vertex attribute: texcoord02 | |
SHADER_LOC_VERTEX_NORMAL = 3 -- Shader location: vertex attribute: normal | |
SHADER_LOC_VERTEX_TANGENT = 4 -- Shader location: vertex attribute: tangent | |
SHADER_LOC_VERTEX_COLOR = 5 -- Shader location: vertex attribute: color | |
SHADER_LOC_MATRIX_MVP = 6 -- Shader location: matrix uniform: model-view-projection | |
SHADER_LOC_MATRIX_VIEW = 7 -- Shader location: matrix uniform: view (camera transform) | |
SHADER_LOC_MATRIX_PROJECTION = 8 -- Shader location: matrix uniform: projection | |
SHADER_LOC_MATRIX_MODEL = 9 -- Shader location: matrix uniform: model (transform) | |
SHADER_LOC_MATRIX_NORMAL = 10 -- Shader location: matrix uniform: normal | |
SHADER_LOC_VECTOR_VIEW = 11 -- Shader location: vector uniform: view | |
SHADER_LOC_COLOR_DIFFUSE = 12 -- Shader location: vector uniform: diffuse color | |
SHADER_LOC_COLOR_SPECULAR = 13 -- Shader location: vector uniform: specular color | |
SHADER_LOC_COLOR_AMBIENT = 14 -- Shader location: vector uniform: ambient color | |
SHADER_LOC_MAP_ALBEDO = 15 -- Shader location: sampler2d texture: albedo (same as: SHADER_LOC_MAP_DIFFUSE) | |
SHADER_LOC_MAP_METALNESS = 16 -- Shader location: sampler2d texture: metalness (same as: SHADER_LOC_MAP_SPECULAR) | |
SHADER_LOC_MAP_NORMAL = 17 -- Shader location: sampler2d texture: normal | |
SHADER_LOC_MAP_ROUGHNESS = 18 -- Shader location: sampler2d texture: roughness | |
SHADER_LOC_MAP_OCCLUSION = 19 -- Shader location: sampler2d texture: occlusion | |
SHADER_LOC_MAP_EMISSION = 20 -- Shader location: sampler2d texture: emission | |
SHADER_LOC_MAP_HEIGHT = 21 -- Shader location: sampler2d texture: height | |
SHADER_LOC_MAP_CUBEMAP = 22 -- Shader location: samplerCube texture: cubemap | |
SHADER_LOC_MAP_IRRADIANCE = 23 -- Shader location: samplerCube texture: irradiance | |
SHADER_LOC_MAP_PREFILTER = 24 -- Shader location: samplerCube texture: prefilter | |
SHADER_LOC_MAP_BRDF = 25 -- Shader location: sampler2d texture: brdf | |
SHADER_LOC_MAP_DIFFUSE = SHADER_LOC_MAP_ALBEDO | |
SHADER_LOC_MAP_SPECULAR = SHADER_LOC_MAP_METALNESS | |
-- Shader uniform data type | |
SHADER_UNIFORM_FLOAT = 0 -- Shader uniform type: float | |
SHADER_UNIFORM_VEC2 = 1 -- Shader uniform type: vec2 (2 float) | |
SHADER_UNIFORM_VEC3 = 2 -- Shader uniform type: vec3 (3 float) | |
SHADER_UNIFORM_VEC4 = 3 -- Shader uniform type: vec4 (4 float) | |
SHADER_UNIFORM_INT = 4 -- Shader uniform type: int | |
SHADER_UNIFORM_IVEC2 = 5 -- Shader uniform type: ivec2 (2 int) | |
SHADER_UNIFORM_IVEC3 = 6 -- Shader uniform type: ivec3 (3 int) | |
SHADER_UNIFORM_IVEC4 = 7 -- Shader uniform type: ivec4 (4 int) | |
SHADER_UNIFORM_SAMPLER2D = 8 -- Shader uniform type: sampler2d | |
-- Shader attribute data types | |
SHADER_ATTRIB_FLOAT = 0 -- Shader attribute type: float | |
SHADER_ATTRIB_VEC2 = 1 -- Shader attribute type: vec2 (2 float) | |
SHADER_ATTRIB_VEC3 = 2 -- Shader attribute type: vec3 (3 float) | |
SHADER_ATTRIB_VEC4 = 3 -- Shader attribute type: vec4 (4 float) | |
-- Pixel formats | |
PIXELFORMAT_UNCOMPRESSED_GRAYSCALE = 1 -- 8 bit per pixel (no alpha) | |
PIXELFORMAT_UNCOMPRESSED_GRAY_ALPHA = 2 -- 8*2 bpp (2 channels) | |
PIXELFORMAT_UNCOMPRESSED_R5G6B5 = 3 -- 16 bpp | |
PIXELFORMAT_UNCOMPRESSED_R8G8B8 = 4 -- 24 bpp | |
PIXELFORMAT_UNCOMPRESSED_R5G5B5A1 = 5 -- 16 bpp (1 bit alpha) | |
PIXELFORMAT_UNCOMPRESSED_R4G4B4A4 = 6 -- 16 bpp (4 bit alpha) | |
PIXELFORMAT_UNCOMPRESSED_R8G8B8A8 = 7 -- 32 bpp | |
PIXELFORMAT_UNCOMPRESSED_R32 = 8 -- 32 bpp (1 channel - float) | |
PIXELFORMAT_UNCOMPRESSED_R32G32B32 = 9 -- 32*3 bpp (3 channels - float) | |
PIXELFORMAT_UNCOMPRESSED_R32G32B32A32 = 10 -- 32*4 bpp (4 channels - float) | |
PIXELFORMAT_UNCOMPRESSED_R16 = 11 -- 16 bpp (1 channel - half float) | |
PIXELFORMAT_UNCOMPRESSED_R16G16B16 = 12 -- 16*3 bpp (3 channels - half float) | |
PIXELFORMAT_UNCOMPRESSED_R16G16B16A16 = 13 -- 16*4 bpp (4 channels - half float) | |
PIXELFORMAT_COMPRESSED_DXT1_RGB = 14 -- 4 bpp (no alpha) | |
PIXELFORMAT_COMPRESSED_DXT1_RGBA = 15 -- 4 bpp (1 bit alpha) | |
PIXELFORMAT_COMPRESSED_DXT3_RGBA = 16 -- 8 bpp | |
PIXELFORMAT_COMPRESSED_DXT5_RGBA = 17 -- 8 bpp | |
PIXELFORMAT_COMPRESSED_ETC1_RGB = 18 -- 4 bpp | |
PIXELFORMAT_COMPRESSED_ETC2_RGB = 19 -- 4 bpp | |
PIXELFORMAT_COMPRESSED_ETC2_EAC_RGBA = 20 -- 8 bpp | |
PIXELFORMAT_COMPRESSED_PVRT_RGB = 21 -- 4 bpp | |
PIXELFORMAT_COMPRESSED_PVRT_RGBA = 22 -- 4 bpp | |
PIXELFORMAT_COMPRESSED_ASTC_4x4_RGBA = 23 -- 8 bpp | |
PIXELFORMAT_COMPRESSED_ASTC_8x8_RGBA = 24 -- 2 bpp | |
-- Texture parameters: filter mode | |
TEXTURE_FILTER_POINT = 0 -- No filter, just pixel approximation | |
TEXTURE_FILTER_BILINEAR = 1 -- Linear filtering | |
TEXTURE_FILTER_TRILINEAR = 2 -- Trilinear filtering (linear with mipmaps) | |
TEXTURE_FILTER_ANISOTROPIC_4X = 3 -- Anisotropic filtering 4x | |
TEXTURE_FILTER_ANISOTROPIC_8X = 4 -- Anisotropic filtering 8x | |
TEXTURE_FILTER_ANISOTROPIC_16X = 5 -- Anisotropic filtering 16x | |
-- Texture parameters: wrap mode | |
TEXTURE_WRAP_REPEAT = 0 -- Repeats texture in tiled mode | |
TEXTURE_WRAP_CLAMP = 1 -- Clamps texture to edge pixel in tiled mode | |
TEXTURE_WRAP_MIRROR_REPEAT = 2 -- Mirrors and repeats the texture in tiled mode | |
TEXTURE_WRAP_MIRROR_CLAMP = 3 -- Mirrors and clamps to border the texture in tiled mode | |
-- Cubemap layouts | |
CUBEMAP_LAYOUT_AUTO_DETECT = 0 -- Automatically detect layout type | |
CUBEMAP_LAYOUT_LINE_VERTICAL = 1 -- Layout is defined by a vertical line with faces | |
CUBEMAP_LAYOUT_LINE_HORIZONTAL = 2 -- Layout is defined by a horizontal line with faces | |
CUBEMAP_LAYOUT_CROSS_THREE_BY_FOUR = 3 -- Layout is defined by a 3x4 cross with cubemap faces | |
CUBEMAP_LAYOUT_CROSS_FOUR_BY_THREE = 4 -- Layout is defined by a 4x3 cross with cubemap faces | |
CUBEMAP_LAYOUT_PANORAMA = 5 -- Layout is defined by a panorama image (equirrectangular map) | |
-- Font type, defines generation method | |
FONT_DEFAULT = 0 -- Default font generation, anti-aliased | |
FONT_BITMAP = 1 -- Bitmap font generation, no anti-aliasing | |
FONT_SDF = 2 -- SDF font generation, requires external shader | |
-- Color blending modes (pre-defined) | |
BLEND_ALPHA = 0 -- Blend textures considering alpha (default) | |
BLEND_ADDITIVE = 1 -- Blend textures adding colors | |
BLEND_MULTIPLIED = 2 -- Blend textures multiplying colors | |
BLEND_ADD_COLORS = 3 -- Blend textures adding colors (alternative) | |
BLEND_SUBTRACT_COLORS = 4 -- Blend textures subtracting colors (alternative) | |
BLEND_ALPHA_PREMULTIPLY = 5 -- Blend premultiplied textures considering alpha | |
BLEND_CUSTOM = 6 -- Blend textures using custom src/dst factors (use rlSetBlendFactors()) | |
BLEND_CUSTOM_SEPARATE = 7 -- Blend textures using custom rgb/alpha separate src/dst factors (use rlSetBlendFactorsSeparate()) | |
-- Gesture | |
GESTURE_NONE = 0 -- No gesture | |
GESTURE_TAP = 1 -- Tap gesture | |
GESTURE_DOUBLETAP = 2 -- Double tap gesture | |
GESTURE_HOLD = 4 -- Hold gesture | |
GESTURE_DRAG = 8 -- Drag gesture | |
GESTURE_SWIPE_RIGHT = 16 -- Swipe right gesture | |
GESTURE_SWIPE_LEFT = 32 -- Swipe left gesture | |
GESTURE_SWIPE_UP = 64 -- Swipe up gesture | |
GESTURE_SWIPE_DOWN = 128 -- Swipe down gesture | |
GESTURE_PINCH_IN = 256 -- Pinch in gesture | |
GESTURE_PINCH_OUT = 512 -- Pinch out gesture | |
-- Camera system modes | |
CAMERA_CUSTOM = 0 -- Camera custom, controlled by user (UpdateCamera() does nothing) | |
CAMERA_FREE = 1 -- Camera free mode | |
CAMERA_ORBITAL = 2 -- Camera orbital, around target, zoom supported | |
CAMERA_FIRST_PERSON = 3 -- Camera first person | |
CAMERA_THIRD_PERSON = 4 -- Camera third person | |
-- Camera projection | |
CAMERA_PERSPECTIVE = 0 -- Perspective projection | |
CAMERA_ORTHOGRAPHIC = 1 -- Orthographic projection | |
-- N-patch layout | |
NPATCH_NINE_PATCH = 0 -- Npatch layout: 3x3 tiles | |
NPATCH_THREE_PATCH_VERTICAL = 1 -- Npatch layout: 1x3 tiles | |
NPATCH_THREE_PATCH_HORIZONTAL = 2 -- Npatch layout: 3x1 tiles | |
-- Gui control state | |
STATE_NORMAL = 0 | |
STATE_FOCUSED = 1 | |
STATE_PRESSED = 2 | |
STATE_DISABLED = 3 | |
-- Gui control text alignment | |
TEXT_ALIGN_LEFT = 0 | |
TEXT_ALIGN_CENTER = 1 | |
TEXT_ALIGN_RIGHT = 2 | |
-- Gui control text alignment vertical | |
-- NOTE: Text vertical position inside the text bounds | |
TEXT_ALIGN_TOP = 0 | |
TEXT_ALIGN_MIDDLE = 1 | |
TEXT_ALIGN_BOTTOM = 2 | |
-- Gui control text wrap mode | |
-- NOTE: Useful for multiline text | |
TEXT_WRAP_NONE = 0 | |
TEXT_WRAP_CHAR = 1 | |
TEXT_WRAP_WORD = 2 | |
-- Gui controls | |
-- Default -> populates to all controls when set | |
DEFAULT = 0 | |
LABEL = 1 -- Used also for: LABELBUTTON | |
BUTTON = 2 | |
TOGGLE = 3 -- Used also for: TOGGLEGROUP | |
SLIDER = 4 -- Used also for: SLIDERBAR, TOGGLESLIDER | |
PROGRESSBAR = 5 | |
CHECKBOX = 6 | |
COMBOBOX = 7 | |
DROPDOWNBOX = 8 | |
TEXTBOX = 9 -- Used also for: TEXTBOXMULTI | |
VALUEBOX = 10 | |
SPINNER = 11 -- Uses: BUTTON, VALUEBOX | |
LISTVIEW = 12 | |
COLORPICKER = 13 | |
SCROLLBAR = 14 | |
STATUSBAR = 15 | |
-- Gui base properties for every control | |
-- NOTE: RAYGUI_MAX_PROPS_BASE properties (by default 16 properties) | |
BORDER_COLOR_NORMAL = 0 -- Control border color in STATE_NORMAL | |
BASE_COLOR_NORMAL = 1 -- Control base color in STATE_NORMAL | |
TEXT_COLOR_NORMAL = 2 -- Control text color in STATE_NORMAL | |
BORDER_COLOR_FOCUSED = 3 -- Control border color in STATE_FOCUSED | |
BASE_COLOR_FOCUSED = 4 -- Control base color in STATE_FOCUSED | |
TEXT_COLOR_FOCUSED = 5 -- Control text color in STATE_FOCUSED | |
BORDER_COLOR_PRESSED = 6 -- Control border color in STATE_PRESSED | |
BASE_COLOR_PRESSED = 7 -- Control base color in STATE_PRESSED | |
TEXT_COLOR_PRESSED = 8 -- Control text color in STATE_PRESSED | |
BORDER_COLOR_DISABLED = 9 -- Control border color in STATE_DISABLED | |
BASE_COLOR_DISABLED = 10 -- Control base color in STATE_DISABLED | |
TEXT_COLOR_DISABLED = 11 -- Control text color in STATE_DISABLED | |
BORDER_WIDTH = 12 -- Control border size, 0 for no border | |
TEXT_PADDING = 13 -- Control text padding, not considering border | |
TEXT_ALIGNMENT = 14 -- Control text horizontal alignment inside control text bound (after border and padding) | |
-- Gui extended properties depend on control | |
-- NOTE: RAYGUI_MAX_PROPS_EXTENDED properties (by default, max 8 properties) | |
-- DEFAULT extended properties | |
-- NOTE: Those properties are common to all controls or global | |
-- WARNING: We only have 8 slots for those properties by default!!! -> New global control: TEXT? | |
TEXT_SIZE = 16 -- Text size (glyphs max height) | |
TEXT_SPACING = 17 -- Text spacing between glyphs | |
LINE_COLOR = 18 -- Line control color | |
BACKGROUND_COLOR = 19 -- Background color | |
TEXT_LINE_SPACING = 20 -- Text spacing between lines | |
TEXT_ALIGNMENT_VERTICAL = 21 -- Text vertical alignment inside text bounds (after border and padding) | |
TEXT_WRAP_MODE = 22 -- Text wrap-mode inside text bounds | |
-- Toggle/ToggleGroup | |
GROUP_PADDING = 16 -- ToggleGroup separation between toggles | |
-- Slider/SliderBar | |
SLIDER_WIDTH = 16 -- Slider size of internal bar | |
SLIDER_PADDING = 17 -- Slider/SliderBar internal bar padding | |
-- ProgressBar | |
PROGRESS_PADDING = 16 -- ProgressBar internal padding | |
-- ScrollBar | |
ARROWS_SIZE = 16 -- ScrollBar arrows size | |
ARROWS_VISIBLE = 17 -- ScrollBar arrows visible | |
SCROLL_SLIDER_PADDING = 18 -- ScrollBar slider internal padding | |
SCROLL_SLIDER_SIZE = 19 -- ScrollBar slider size | |
SCROLL_PADDING = 20 -- ScrollBar scroll padding from arrows | |
SCROLL_SPEED = 21 -- ScrollBar scrolling speed | |
-- CheckBox | |
CHECK_PADDING = 16 -- CheckBox internal check padding | |
-- ComboBox | |
COMBO_BUTTON_WIDTH = 16 -- ComboBox right button width | |
COMBO_BUTTON_SPACING = 17 -- ComboBox button separation | |
-- DropdownBox | |
ARROW_PADDING = 16 -- DropdownBox arrow separation from border and items | |
DROPDOWN_ITEMS_SPACING = 17 -- DropdownBox items separation | |
DROPDOWN_ARROW_HIDDEN = 18 -- DropdownBox arrow hidden | |
-- TextBox/TextBoxMulti/ValueBox/Spinner | |
TEXT_READONLY = 16 -- TextBox in read-only mode: 0-text editable, 1-text no-editable | |
-- Spinner | |
SPIN_BUTTON_WIDTH = 16 -- Spinner left/right buttons width | |
SPIN_BUTTON_SPACING = 17 -- Spinner buttons separation | |
-- ListView | |
LIST_ITEMS_HEIGHT = 16 -- ListView items height | |
LIST_ITEMS_SPACING = 17 -- ListView items separation | |
SCROLLBAR_WIDTH = 18 -- ListView scrollbar size (usually width) | |
SCROLLBAR_SIDE = 19 -- ListView scrollbar side (0-SCROLLBAR_LEFT_SIDE, 1-SCROLLBAR_RIGHT_SIDE) | |
LIST_ITEMS_BORDER_WIDTH = 20 -- ListView items border width | |
-- ColorPicker | |
COLOR_SELECTOR_SIZE = 16 | |
HUEBAR_WIDTH = 17 -- ColorPicker right hue bar width | |
HUEBAR_PADDING = 18 -- ColorPicker right hue bar separation from panel | |
HUEBAR_SELECTOR_HEIGHT = 19 -- ColorPicker right hue bar selector height | |
HUEBAR_SELECTOR_OVERFLOW = 20 -- ColorPicker right hue bar selector overflow | |
SCROLLBAR_LEFT_SIDE = 0 | |
SCROLLBAR_RIGHT_SIDE = 1 | |
-- Icons | |
ICON_NONE = 0 | |
ICON_FOLDER_FILE_OPEN = 1 | |
ICON_FILE_SAVE_CLASSIC = 2 | |
ICON_FOLDER_OPEN = 3 | |
ICON_FOLDER_SAVE = 4 | |
ICON_FILE_OPEN = 5 | |
ICON_FILE_SAVE = 6 | |
ICON_FILE_EXPORT = 7 | |
ICON_FILE_ADD = 8 | |
ICON_FILE_DELETE = 9 | |
ICON_FILETYPE_TEXT = 10 | |
ICON_FILETYPE_AUDIO = 11 | |
ICON_FILETYPE_IMAGE = 12 | |
ICON_FILETYPE_PLAY = 13 | |
ICON_FILETYPE_VIDEO = 14 | |
ICON_FILETYPE_INFO = 15 | |
ICON_FILE_COPY = 16 | |
ICON_FILE_CUT = 17 | |
ICON_FILE_PASTE = 18 | |
ICON_CURSOR_HAND = 19 | |
ICON_CURSOR_POINTER = 20 | |
ICON_CURSOR_CLASSIC = 21 | |
ICON_PENCIL = 22 | |
ICON_PENCIL_BIG = 23 | |
ICON_BRUSH_CLASSIC = 24 | |
ICON_BRUSH_PAINTER = 25 | |
ICON_WATER_DROP = 26 | |
ICON_COLOR_PICKER = 27 | |
ICON_RUBBER = 28 | |
ICON_COLOR_BUCKET = 29 | |
ICON_TEXT_T = 30 | |
ICON_TEXT_A = 31 | |
ICON_SCALE = 32 | |
ICON_RESIZE = 33 | |
ICON_FILTER_POINT = 34 | |
ICON_FILTER_BILINEAR = 35 | |
ICON_CROP = 36 | |
ICON_CROP_ALPHA = 37 | |
ICON_SQUARE_TOGGLE = 38 | |
ICON_SYMMETRY = 39 | |
ICON_SYMMETRY_HORIZONTAL = 40 | |
ICON_SYMMETRY_VERTICAL = 41 | |
ICON_LENS = 42 | |
ICON_LENS_BIG = 43 | |
ICON_EYE_ON = 44 | |
ICON_EYE_OFF = 45 | |
ICON_FILTER_TOP = 46 | |
ICON_FILTER = 47 | |
ICON_TARGET_POINT = 48 | |
ICON_TARGET_SMALL = 49 | |
ICON_TARGET_BIG = 50 | |
ICON_TARGET_MOVE = 51 | |
ICON_CURSOR_MOVE = 52 | |
ICON_CURSOR_SCALE = 53 | |
ICON_CURSOR_SCALE_RIGHT = 54 | |
ICON_CURSOR_SCALE_LEFT = 55 | |
ICON_UNDO = 56 | |
ICON_REDO = 57 | |
ICON_REREDO = 58 | |
ICON_MUTATE = 59 | |
ICON_ROTATE = 60 | |
ICON_REPEAT = 61 | |
ICON_SHUFFLE = 62 | |
ICON_EMPTYBOX = 63 | |
ICON_TARGET = 64 | |
ICON_TARGET_SMALL_FILL = 65 | |
ICON_TARGET_BIG_FILL = 66 | |
ICON_TARGET_MOVE_FILL = 67 | |
ICON_CURSOR_MOVE_FILL = 68 | |
ICON_CURSOR_SCALE_FILL = 69 | |
ICON_CURSOR_SCALE_RIGHT_FILL = 70 | |
ICON_CURSOR_SCALE_LEFT_FILL = 71 | |
ICON_UNDO_FILL = 72 | |
ICON_REDO_FILL = 73 | |
ICON_REREDO_FILL = 74 | |
ICON_MUTATE_FILL = 75 | |
ICON_ROTATE_FILL = 76 | |
ICON_REPEAT_FILL = 77 | |
ICON_SHUFFLE_FILL = 78 | |
ICON_EMPTYBOX_SMALL = 79 | |
ICON_BOX = 80 | |
ICON_BOX_TOP = 81 | |
ICON_BOX_TOP_RIGHT = 82 | |
ICON_BOX_RIGHT = 83 | |
ICON_BOX_BOTTOM_RIGHT = 84 | |
ICON_BOX_BOTTOM = 85 | |
ICON_BOX_BOTTOM_LEFT = 86 | |
ICON_BOX_LEFT = 87 | |
ICON_BOX_TOP_LEFT = 88 | |
ICON_BOX_CENTER = 89 | |
ICON_BOX_CIRCLE_MASK = 90 | |
ICON_POT = 91 | |
ICON_ALPHA_MULTIPLY = 92 | |
ICON_ALPHA_CLEAR = 93 | |
ICON_DITHERING = 94 | |
ICON_MIPMAPS = 95 | |
ICON_BOX_GRID = 96 | |
ICON_GRID = 97 | |
ICON_BOX_CORNERS_SMALL = 98 | |
ICON_BOX_CORNERS_BIG = 99 | |
ICON_FOUR_BOXES = 100 | |
ICON_GRID_FILL = 101 | |
ICON_BOX_MULTISIZE = 102 | |
ICON_ZOOM_SMALL = 103 | |
ICON_ZOOM_MEDIUM = 104 | |
ICON_ZOOM_BIG = 105 | |
ICON_ZOOM_ALL = 106 | |
ICON_ZOOM_CENTER = 107 | |
ICON_BOX_DOTS_SMALL = 108 | |
ICON_BOX_DOTS_BIG = 109 | |
ICON_BOX_CONCENTRIC = 110 | |
ICON_BOX_GRID_BIG = 111 | |
ICON_OK_TICK = 112 | |
ICON_CROSS = 113 | |
ICON_ARROW_LEFT = 114 | |
ICON_ARROW_RIGHT = 115 | |
ICON_ARROW_DOWN = 116 | |
ICON_ARROW_UP = 117 | |
ICON_ARROW_LEFT_FILL = 118 | |
ICON_ARROW_RIGHT_FILL = 119 | |
ICON_ARROW_DOWN_FILL = 120 | |
ICON_ARROW_UP_FILL = 121 | |
ICON_AUDIO = 122 | |
ICON_FX = 123 | |
ICON_WAVE = 124 | |
ICON_WAVE_SINUS = 125 | |
ICON_WAVE_SQUARE = 126 | |
ICON_WAVE_TRIANGULAR = 127 | |
ICON_CROSS_SMALL = 128 | |
ICON_PLAYER_PREVIOUS = 129 | |
ICON_PLAYER_PLAY_BACK = 130 | |
ICON_PLAYER_PLAY = 131 | |
ICON_PLAYER_PAUSE = 132 | |
ICON_PLAYER_STOP = 133 | |
ICON_PLAYER_NEXT = 134 | |
ICON_PLAYER_RECORD = 135 | |
ICON_MAGNET = 136 | |
ICON_LOCK_CLOSE = 137 | |
ICON_LOCK_OPEN = 138 | |
ICON_CLOCK = 139 | |
ICON_TOOLS = 140 | |
ICON_GEAR = 141 | |
ICON_GEAR_BIG = 142 | |
ICON_BIN = 143 | |
ICON_HAND_POINTER = 144 | |
ICON_LASER = 145 | |
ICON_COIN = 146 | |
ICON_EXPLOSION = 147 | |
ICON_1UP = 148 | |
ICON_PLAYER = 149 | |
ICON_PLAYER_JUMP = 150 | |
ICON_KEY = 151 | |
ICON_DEMON = 152 | |
ICON_TEXT_POPUP = 153 | |
ICON_GEAR_EX = 154 | |
ICON_CRACK = 155 | |
ICON_CRACK_POINTS = 156 | |
ICON_STAR = 157 | |
ICON_DOOR = 158 | |
ICON_EXIT = 159 | |
ICON_MODE_2D = 160 | |
ICON_MODE_3D = 161 | |
ICON_CUBE = 162 | |
ICON_CUBE_FACE_TOP = 163 | |
ICON_CUBE_FACE_LEFT = 164 | |
ICON_CUBE_FACE_FRONT = 165 | |
ICON_CUBE_FACE_BOTTOM = 166 | |
ICON_CUBE_FACE_RIGHT = 167 | |
ICON_CUBE_FACE_BACK = 168 | |
ICON_CAMERA = 169 | |
ICON_SPECIAL = 170 | |
ICON_LINK_NET = 171 | |
ICON_LINK_BOXES = 172 | |
ICON_LINK_MULTI = 173 | |
ICON_LINK = 174 | |
ICON_LINK_BROKE = 175 | |
ICON_TEXT_NOTES = 176 | |
ICON_NOTEBOOK = 177 | |
ICON_SUITCASE = 178 | |
ICON_SUITCASE_ZIP = 179 | |
ICON_MAILBOX = 180 | |
ICON_MONITOR = 181 | |
ICON_PRINTER = 182 | |
ICON_PHOTO_CAMERA = 183 | |
ICON_PHOTO_CAMERA_FLASH = 184 | |
ICON_HOUSE = 185 | |
ICON_HEART = 186 | |
ICON_CORNER = 187 | |
ICON_VERTICAL_BARS = 188 | |
ICON_VERTICAL_BARS_FILL = 189 | |
ICON_LIFE_BARS = 190 | |
ICON_INFO = 191 | |
ICON_CROSSLINE = 192 | |
ICON_HELP = 193 | |
ICON_FILETYPE_ALPHA = 194 | |
ICON_FILETYPE_HOME = 195 | |
ICON_LAYERS_VISIBLE = 196 | |
ICON_LAYERS = 197 | |
ICON_WINDOW = 198 | |
ICON_HIDPI = 199 | |
ICON_FILETYPE_BINARY = 200 | |
ICON_HEX = 201 | |
ICON_SHIELD = 202 | |
ICON_FILE_NEW = 203 | |
ICON_FOLDER_ADD = 204 | |
ICON_ALARM = 205 | |
ICON_CPU = 206 | |
ICON_ROM = 207 | |
ICON_STEP_OVER = 208 | |
ICON_STEP_INTO = 209 | |
ICON_STEP_OUT = 210 | |
ICON_RESTART = 211 | |
ICON_BREAKPOINT_ON = 212 | |
ICON_BREAKPOINT_OFF = 213 | |
ICON_BURGER_MENU = 214 | |
ICON_CASE_SENSITIVE = 215 | |
ICON_REG_EXP = 216 | |
ICON_FOLDER = 217 | |
ICON_FILE = 218 | |
ICON_SAND_TIMER = 219 | |
ICON_WARNING = 220 | |
ICON_HELP_BOX = 221 | |
ICON_INFO_BOX = 222 | |
ICON_223 = 223 | |
ICON_224 = 224 | |
ICON_225 = 225 | |
ICON_226 = 226 | |
ICON_227 = 227 | |
ICON_228 = 228 | |
ICON_229 = 229 | |
ICON_230 = 230 | |
ICON_231 = 231 | |
ICON_232 = 232 | |
ICON_233 = 233 | |
ICON_234 = 234 | |
ICON_235 = 235 | |
ICON_236 = 236 | |
ICON_237 = 237 | |
ICON_238 = 238 | |
ICON_239 = 239 | |
ICON_240 = 240 | |
ICON_241 = 241 | |
ICON_242 = 242 | |
ICON_243 = 243 | |
ICON_244 = 244 | |
ICON_245 = 245 | |
ICON_246 = 246 | |
ICON_247 = 247 | |
ICON_248 = 248 | |
ICON_249 = 249 | |
ICON_250 = 250 | |
ICON_251 = 251 | |
ICON_252 = 252 | |
ICON_253 = 253 | |
ICON_254 = 254 | |
ICON_255 = 255 | |
---@alias ConfigFlags | |
---| `FLAG_VSYNC_HINT` | |
---| `FLAG_FULLSCREEN_MODE` | |
---| `FLAG_WINDOW_RESIZABLE` | |
---| `FLAG_WINDOW_UNDECORATED` | |
---| `FLAG_WINDOW_HIDDEN` | |
---| `FLAG_WINDOW_MINIMIZED` | |
---| `FLAG_WINDOW_MAXIMIZED` | |
---| `FLAG_WINDOW_UNFOCUSED` | |
---| `FLAG_WINDOW_TOPMOST` | |
---| `FLAG_WINDOW_ALWAYS_RUN` | |
---| `FLAG_WINDOW_TRANSPARENT` | |
---| `FLAG_WINDOW_HIGHDPI` | |
---| `FLAG_WINDOW_MOUSE_PASSTHROUGH` | |
---| `FLAG_BORDERLESS_WINDOWED_MODE` | |
---| `FLAG_MSAA_4X_HINT` | |
---| `FLAG_INTERLACED_HINT` | |
---@alias TraceLogLevel | |
---| `LOG_ALL` | |
---| `LOG_TRACE` | |
---| `LOG_DEBUG` | |
---| `LOG_INFO` | |
---| `LOG_WARNING` | |
---| `LOG_ERROR` | |
---| `LOG_FATAL` | |
---| `LOG_NONE` | |
---@alias KeyboardKey | |
---| `KEY_NULL` | |
---| `KEY_APOSTROPHE` | |
---| `KEY_COMMA` | |
---| `KEY_MINUS` | |
---| `KEY_PERIOD` | |
---| `KEY_SLASH` | |
---| `KEY_ZERO` | |
---| `KEY_ONE` | |
---| `KEY_TWO` | |
---| `KEY_THREE` | |
---| `KEY_FOUR` | |
---| `KEY_FIVE` | |
---| `KEY_SIX` | |
---| `KEY_SEVEN` | |
---| `KEY_EIGHT` | |
---| `KEY_NINE` | |
---| `KEY_SEMICOLON` | |
---| `KEY_EQUAL` | |
---| `KEY_A` | |
---| `KEY_B` | |
---| `KEY_C` | |
---| `KEY_D` | |
---| `KEY_E` | |
---| `KEY_F` | |
---| `KEY_G` | |
---| `KEY_H` | |
---| `KEY_I` | |
---| `KEY_J` | |
---| `KEY_K` | |
---| `KEY_L` | |
---| `KEY_M` | |
---| `KEY_N` | |
---| `KEY_O` | |
---| `KEY_P` | |
---| `KEY_Q` | |
---| `KEY_R` | |
---| `KEY_S` | |
---| `KEY_T` | |
---| `KEY_U` | |
---| `KEY_V` | |
---| `KEY_W` | |
---| `KEY_X` | |
---| `KEY_Y` | |
---| `KEY_Z` | |
---| `KEY_LEFT_BRACKET` | |
---| `KEY_BACKSLASH` | |
---| `KEY_RIGHT_BRACKET` | |
---| `KEY_GRAVE` | |
---| `KEY_SPACE` | |
---| `KEY_ESCAPE` | |
---| `KEY_ENTER` | |
---| `KEY_TAB` | |
---| `KEY_BACKSPACE` | |
---| `KEY_INSERT` | |
---| `KEY_DELETE` | |
---| `KEY_RIGHT` | |
---| `KEY_LEFT` | |
---| `KEY_DOWN` | |
---| `KEY_UP` | |
---| `KEY_PAGE_UP` | |
---| `KEY_PAGE_DOWN` | |
---| `KEY_HOME` | |
---| `KEY_END` | |
---| `KEY_CAPS_LOCK` | |
---| `KEY_SCROLL_LOCK` | |
---| `KEY_NUM_LOCK` | |
---| `KEY_PRINT_SCREEN` | |
---| `KEY_PAUSE` | |
---| `KEY_F1` | |
---| `KEY_F2` | |
---| `KEY_F3` | |
---| `KEY_F4` | |
---| `KEY_F5` | |
---| `KEY_F6` | |
---| `KEY_F7` | |
---| `KEY_F8` | |
---| `KEY_F9` | |
---| `KEY_F10` | |
---| `KEY_F11` | |
---| `KEY_F12` | |
---| `KEY_LEFT_SHIFT` | |
---| `KEY_LEFT_CONTROL` | |
---| `KEY_LEFT_ALT` | |
---| `KEY_LEFT_SUPER` | |
---| `KEY_RIGHT_SHIFT` | |
---| `KEY_RIGHT_CONTROL` | |
---| `KEY_RIGHT_ALT` | |
---| `KEY_RIGHT_SUPER` | |
---| `KEY_KB_MENU` | |
---| `KEY_KP_0` | |
---| `KEY_KP_1` | |
---| `KEY_KP_2` | |
---| `KEY_KP_3` | |
---| `KEY_KP_4` | |
---| `KEY_KP_5` | |
---| `KEY_KP_6` | |
---| `KEY_KP_7` | |
---| `KEY_KP_8` | |
---| `KEY_KP_9` | |
---| `KEY_KP_DECIMAL` | |
---| `KEY_KP_DIVIDE` | |
---| `KEY_KP_MULTIPLY` | |
---| `KEY_KP_SUBTRACT` | |
---| `KEY_KP_ADD` | |
---| `KEY_KP_ENTER` | |
---| `KEY_KP_EQUAL` | |
---| `KEY_BACK` | |
---| `KEY_MENU` | |
---| `KEY_VOLUME_UP` | |
---| `KEY_VOLUME_DOWN` | |
---@alias MouseButton | |
---| `MOUSE_BUTTON_LEFT` | |
---| `MOUSE_BUTTON_RIGHT` | |
---| `MOUSE_BUTTON_MIDDLE` | |
---| `MOUSE_BUTTON_SIDE` | |
---| `MOUSE_BUTTON_EXTRA` | |
---| `MOUSE_BUTTON_FORWARD` | |
---| `MOUSE_BUTTON_BACK` | |
---@alias MouseCursor | |
---| `MOUSE_CURSOR_DEFAULT` | |
---| `MOUSE_CURSOR_ARROW` | |
---| `MOUSE_CURSOR_IBEAM` | |
---| `MOUSE_CURSOR_CROSSHAIR` | |
---| `MOUSE_CURSOR_POINTING_HAND` | |
---| `MOUSE_CURSOR_RESIZE_EW` | |
---| `MOUSE_CURSOR_RESIZE_NS` | |
---| `MOUSE_CURSOR_RESIZE_NWSE` | |
---| `MOUSE_CURSOR_RESIZE_NESW` | |
---| `MOUSE_CURSOR_RESIZE_ALL` | |
---| `MOUSE_CURSOR_NOT_ALLOWED` | |
---@alias GamepadButton | |
---| `GAMEPAD_BUTTON_UNKNOWN` | |
---| `GAMEPAD_BUTTON_LEFT_FACE_UP` | |
---| `GAMEPAD_BUTTON_LEFT_FACE_RIGHT` | |
---| `GAMEPAD_BUTTON_LEFT_FACE_DOWN` | |
---| `GAMEPAD_BUTTON_LEFT_FACE_LEFT` | |
---| `GAMEPAD_BUTTON_RIGHT_FACE_UP` | |
---| `GAMEPAD_BUTTON_RIGHT_FACE_RIGHT` | |
---| `GAMEPAD_BUTTON_RIGHT_FACE_DOWN` | |
---| `GAMEPAD_BUTTON_RIGHT_FACE_LEFT` | |
---| `GAMEPAD_BUTTON_LEFT_TRIGGER_1` | |
---| `GAMEPAD_BUTTON_LEFT_TRIGGER_2` | |
---| `GAMEPAD_BUTTON_RIGHT_TRIGGER_1` | |
---| `GAMEPAD_BUTTON_RIGHT_TRIGGER_2` | |
---| `GAMEPAD_BUTTON_MIDDLE_LEFT` | |
---| `GAMEPAD_BUTTON_MIDDLE` | |
---| `GAMEPAD_BUTTON_MIDDLE_RIGHT` | |
---| `GAMEPAD_BUTTON_LEFT_THUMB` | |
---| `GAMEPAD_BUTTON_RIGHT_THUMB` | |
---@alias GamepadAxis | |
---| `GAMEPAD_AXIS_LEFT_X` | |
---| `GAMEPAD_AXIS_LEFT_Y` | |
---| `GAMEPAD_AXIS_RIGHT_X` | |
---| `GAMEPAD_AXIS_RIGHT_Y` | |
---| `GAMEPAD_AXIS_LEFT_TRIGGER` | |
---| `GAMEPAD_AXIS_RIGHT_TRIGGER` | |
---@alias MaterialMapIndex | |
---| `MATERIAL_MAP_ALBEDO` | |
---| `MATERIAL_MAP_METALNESS` | |
---| `MATERIAL_MAP_NORMAL` | |
---| `MATERIAL_MAP_ROUGHNESS` | |
---| `MATERIAL_MAP_OCCLUSION` | |
---| `MATERIAL_MAP_EMISSION` | |
---| `MATERIAL_MAP_HEIGHT` | |
---| `MATERIAL_MAP_CUBEMAP` | |
---| `MATERIAL_MAP_IRRADIANCE` | |
---| `MATERIAL_MAP_PREFILTER` | |
---| `MATERIAL_MAP_BRDF` | |
---| `MATERIAL_MAP_DIFFUSE` | |
---| `MATERIAL_MAP_SPECULAR` | |
---@alias ShaderLocationIndex | |
---| `SHADER_LOC_VERTEX_POSITION` | |
---| `SHADER_LOC_VERTEX_TEXCOORD01` | |
---| `SHADER_LOC_VERTEX_TEXCOORD02` | |
---| `SHADER_LOC_VERTEX_NORMAL` | |
---| `SHADER_LOC_VERTEX_TANGENT` | |
---| `SHADER_LOC_VERTEX_COLOR` | |
---| `SHADER_LOC_MATRIX_MVP` | |
---| `SHADER_LOC_MATRIX_VIEW` | |
---| `SHADER_LOC_MATRIX_PROJECTION` | |
---| `SHADER_LOC_MATRIX_MODEL` | |
---| `SHADER_LOC_MATRIX_NORMAL` | |
---| `SHADER_LOC_VECTOR_VIEW` | |
---| `SHADER_LOC_COLOR_DIFFUSE` | |
---| `SHADER_LOC_COLOR_SPECULAR` | |
---| `SHADER_LOC_COLOR_AMBIENT` | |
---| `SHADER_LOC_MAP_ALBEDO` | |
---| `SHADER_LOC_MAP_METALNESS` | |
---| `SHADER_LOC_MAP_NORMAL` | |
---| `SHADER_LOC_MAP_ROUGHNESS` | |
---| `SHADER_LOC_MAP_OCCLUSION` | |
---| `SHADER_LOC_MAP_EMISSION` | |
---| `SHADER_LOC_MAP_HEIGHT` | |
---| `SHADER_LOC_MAP_CUBEMAP` | |
---| `SHADER_LOC_MAP_IRRADIANCE` | |
---| `SHADER_LOC_MAP_PREFILTER` | |
---| `SHADER_LOC_MAP_BRDF` | |
---| `SHADER_LOC_MAP_DIFFUSE` | |
---| `SHADER_LOC_MAP_SPECULAR` | |
---@alias ShaderUniformDataType | |
---| `SHADER_UNIFORM_FLOAT` | |
---| `SHADER_UNIFORM_VEC2` | |
---| `SHADER_UNIFORM_VEC3` | |
---| `SHADER_UNIFORM_VEC4` | |
---| `SHADER_UNIFORM_INT` | |
---| `SHADER_UNIFORM_IVEC2` | |
---| `SHADER_UNIFORM_IVEC3` | |
---| `SHADER_UNIFORM_IVEC4` | |
---| `SHADER_UNIFORM_SAMPLER2D` | |
---@alias ShaderAttributeDataType | |
---| `SHADER_ATTRIB_FLOAT` | |
---| `SHADER_ATTRIB_VEC2` | |
---| `SHADER_ATTRIB_VEC3` | |
---| `SHADER_ATTRIB_VEC4` | |
---@alias PixelFormat | |
---| `PIXELFORMAT_UNCOMPRESSED_GRAYSCALE` | |
---| `PIXELFORMAT_UNCOMPRESSED_GRAY_ALPHA` | |
---| `PIXELFORMAT_UNCOMPRESSED_R5G6B5` | |
---| `PIXELFORMAT_UNCOMPRESSED_R8G8B8` | |
---| `PIXELFORMAT_UNCOMPRESSED_R5G5B5A1` | |
---| `PIXELFORMAT_UNCOMPRESSED_R4G4B4A4` | |
---| `PIXELFORMAT_UNCOMPRESSED_R8G8B8A8` | |
---| `PIXELFORMAT_UNCOMPRESSED_R32` | |
---| `PIXELFORMAT_UNCOMPRESSED_R32G32B32` | |
---| `PIXELFORMAT_UNCOMPRESSED_R32G32B32A32` | |
---| `PIXELFORMAT_UNCOMPRESSED_R16` | |
---| `PIXELFORMAT_UNCOMPRESSED_R16G16B16` | |
---| `PIXELFORMAT_UNCOMPRESSED_R16G16B16A16` | |
---| `PIXELFORMAT_COMPRESSED_DXT1_RGB` | |
---| `PIXELFORMAT_COMPRESSED_DXT1_RGBA` | |
---| `PIXELFORMAT_COMPRESSED_DXT3_RGBA` | |
---| `PIXELFORMAT_COMPRESSED_DXT5_RGBA` | |
---| `PIXELFORMAT_COMPRESSED_ETC1_RGB` | |
---| `PIXELFORMAT_COMPRESSED_ETC2_RGB` | |
---| `PIXELFORMAT_COMPRESSED_ETC2_EAC_RGBA` | |
---| `PIXELFORMAT_COMPRESSED_PVRT_RGB` | |
---| `PIXELFORMAT_COMPRESSED_PVRT_RGBA` | |
---| `PIXELFORMAT_COMPRESSED_ASTC_4x4_RGBA` | |
---| `PIXELFORMAT_COMPRESSED_ASTC_8x8_RGBA` | |
---@alias TextureFilter | |
---| `TEXTURE_FILTER_POINT` | |
---| `TEXTURE_FILTER_BILINEAR` | |
---| `TEXTURE_FILTER_TRILINEAR` | |
---| `TEXTURE_FILTER_ANISOTROPIC_4X` | |
---| `TEXTURE_FILTER_ANISOTROPIC_8X` | |
---| `TEXTURE_FILTER_ANISOTROPIC_16X` | |
---@alias TextureWrap | |
---| `TEXTURE_WRAP_REPEAT` | |
---| `TEXTURE_WRAP_CLAMP` | |
---| `TEXTURE_WRAP_MIRROR_REPEAT` | |
---| `TEXTURE_WRAP_MIRROR_CLAMP` | |
---@alias CubemapLayout | |
---| `CUBEMAP_LAYOUT_AUTO_DETECT` | |
---| `CUBEMAP_LAYOUT_LINE_VERTICAL` | |
---| `CUBEMAP_LAYOUT_LINE_HORIZONTAL` | |
---| `CUBEMAP_LAYOUT_CROSS_THREE_BY_FOUR` | |
---| `CUBEMAP_LAYOUT_CROSS_FOUR_BY_THREE` | |
---| `CUBEMAP_LAYOUT_PANORAMA` | |
---@alias FontType | |
---| `FONT_DEFAULT` | |
---| `FONT_BITMAP` | |
---| `FONT_SDF` | |
---@alias BlendMode | |
---| `BLEND_ALPHA` | |
---| `BLEND_ADDITIVE` | |
---| `BLEND_MULTIPLIED` | |
---| `BLEND_ADD_COLORS` | |
---| `BLEND_SUBTRACT_COLORS` | |
---| `BLEND_ALPHA_PREMULTIPLY` | |
---| `BLEND_CUSTOM` | |
---| `BLEND_CUSTOM_SEPARATE` | |
---@alias Gesture | |
---| `GESTURE_NONE` | |
---| `GESTURE_TAP` | |
---| `GESTURE_DOUBLETAP` | |
---| `GESTURE_HOLD` | |
---| `GESTURE_DRAG` | |
---| `GESTURE_SWIPE_RIGHT` | |
---| `GESTURE_SWIPE_LEFT` | |
---| `GESTURE_SWIPE_UP` | |
---| `GESTURE_SWIPE_DOWN` | |
---| `GESTURE_PINCH_IN` | |
---| `GESTURE_PINCH_OUT` | |
---@alias CameraMode | |
---| `CAMERA_CUSTOM` | |
---| `CAMERA_FREE` | |
---| `CAMERA_ORBITAL` | |
---| `CAMERA_FIRST_PERSON` | |
---| `CAMERA_THIRD_PERSON` | |
---@alias CameraProjection | |
---| `CAMERA_PERSPECTIVE` | |
---| `CAMERA_ORTHOGRAPHIC` | |
---@alias NPatchLayout | |
---| `NPATCH_NINE_PATCH` | |
---| `NPATCH_THREE_PATCH_VERTICAL` | |
---| `NPATCH_THREE_PATCH_HORIZONTAL` | |
---@alias GuiState | |
---| `STATE_NORMAL` | |
---| `STATE_FOCUSED` | |
---| `STATE_PRESSED` | |
---| `STATE_DISABLED` | |
---@alias GuiTextAlignment | |
---| `TEXT_ALIGN_LEFT` | |
---| `TEXT_ALIGN_CENTER` | |
---| `TEXT_ALIGN_RIGHT` | |
---@alias GuiTextAlignmentVertical | |
---| `TEXT_ALIGN_TOP` | |
---| `TEXT_ALIGN_MIDDLE` | |
---| `TEXT_ALIGN_BOTTOM` | |
---@alias GuiTextWrapMode | |
---| `TEXT_WRAP_NONE` | |
---| `TEXT_WRAP_CHAR` | |
---| `TEXT_WRAP_WORD` | |
---@alias GuiControl | |
---| `DEFAULT` | |
---| `LABEL` | |
---| `BUTTON` | |
---| `TOGGLE` | |
---| `SLIDER` | |
---| `PROGRESSBAR` | |
---| `CHECKBOX` | |
---| `COMBOBOX` | |
---| `DROPDOWNBOX` | |
---| `TEXTBOX` | |
---| `VALUEBOX` | |
---| `SPINNER` | |
---| `LISTVIEW` | |
---| `COLORPICKER` | |
---| `SCROLLBAR` | |
---| `STATUSBAR` | |
---@alias GuiControlProperty | |
---| `BORDER_COLOR_NORMAL` | |
---| `BASE_COLOR_NORMAL` | |
---| `TEXT_COLOR_NORMAL` | |
---| `BORDER_COLOR_FOCUSED` | |
---| `BASE_COLOR_FOCUSED` | |
---| `TEXT_COLOR_FOCUSED` | |
---| `BORDER_COLOR_PRESSED` | |
---| `BASE_COLOR_PRESSED` | |
---| `TEXT_COLOR_PRESSED` | |
---| `BORDER_COLOR_DISABLED` | |
---| `BASE_COLOR_DISABLED` | |
---| `TEXT_COLOR_DISABLED` | |
---| `BORDER_WIDTH` | |
---| `TEXT_PADDING` | |
---| `TEXT_ALIGNMENT` | |
---@alias GuiDefaultProperty | |
---| `TEXT_SIZE` | |
---| `TEXT_SPACING` | |
---| `LINE_COLOR` | |
---| `BACKGROUND_COLOR` | |
---| `TEXT_LINE_SPACING` | |
---| `TEXT_ALIGNMENT_VERTICAL` | |
---| `TEXT_WRAP_MODE` | |
---@alias GuiToggleProperty | |
---| `GROUP_PADDING` | |
---@alias GuiSliderProperty | |
---| `SLIDER_WIDTH` | |
---| `SLIDER_PADDING` | |
---@alias GuiProgressBarProperty | |
---| `PROGRESS_PADDING` | |
---@alias GuiScrollBarProperty | |
---| `ARROWS_SIZE` | |
---| `ARROWS_VISIBLE` | |
---| `SCROLL_SLIDER_PADDING` | |
---| `SCROLL_SLIDER_SIZE` | |
---| `SCROLL_PADDING` | |
---| `SCROLL_SPEED` | |
---@alias GuiCheckBoxProperty | |
---| `CHECK_PADDING` | |
---@alias GuiComboBoxProperty | |
---| `COMBO_BUTTON_WIDTH` | |
---| `COMBO_BUTTON_SPACING` | |
---@alias GuiDropdownBoxProperty | |
---| `ARROW_PADDING` | |
---| `DROPDOWN_ITEMS_SPACING` | |
---| `DROPDOWN_ARROW_HIDDEN` | |
---@alias GuiTextBoxProperty | |
---| `TEXT_READONLY` | |
---@alias GuiSpinnerProperty | |
---| `SPIN_BUTTON_WIDTH` | |
---| `SPIN_BUTTON_SPACING` | |
---@alias GuiListViewProperty | |
---| `LIST_ITEMS_HEIGHT` | |
---| `LIST_ITEMS_SPACING` | |
---| `SCROLLBAR_WIDTH` | |
---| `SCROLLBAR_SIDE` | |
---| `LIST_ITEMS_BORDER_WIDTH` | |
---@alias GuiColorPickerProperty | |
---| `COLOR_SELECTOR_SIZE` | |
---| `HUEBAR_WIDTH` | |
---| `HUEBAR_PADDING` | |
---| `HUEBAR_SELECTOR_HEIGHT` | |
---| `HUEBAR_SELECTOR_OVERFLOW` | |
---@alias GuiScrollBarSide | |
---| `SCROLLBAR_LEFT_SIDE` | |
---| `SCROLLBAR_RIGHT_SIDE` | |
---@alias GuiIconName | |
---| `ICON_NONE` | |
---| `ICON_FOLDER_FILE_OPEN` | |
---| `ICON_FILE_SAVE_CLASSIC` | |
---| `ICON_FOLDER_OPEN` | |
---| `ICON_FOLDER_SAVE` | |
---| `ICON_FILE_OPEN` | |
---| `ICON_FILE_SAVE` | |
---| `ICON_FILE_EXPORT` | |
---| `ICON_FILE_ADD` | |
---| `ICON_FILE_DELETE` | |
---| `ICON_FILETYPE_TEXT` | |
---| `ICON_FILETYPE_AUDIO` | |
---| `ICON_FILETYPE_IMAGE` | |
---| `ICON_FILETYPE_PLAY` | |
---| `ICON_FILETYPE_VIDEO` | |
---| `ICON_FILETYPE_INFO` | |
---| `ICON_FILE_COPY` | |
---| `ICON_FILE_CUT` | |
---| `ICON_FILE_PASTE` | |
---| `ICON_CURSOR_HAND` | |
---| `ICON_CURSOR_POINTER` | |
---| `ICON_CURSOR_CLASSIC` | |
---| `ICON_PENCIL` | |
---| `ICON_PENCIL_BIG` | |
---| `ICON_BRUSH_CLASSIC` | |
---| `ICON_BRUSH_PAINTER` | |
---| `ICON_WATER_DROP` | |
---| `ICON_COLOR_PICKER` | |
---| `ICON_RUBBER` | |
---| `ICON_COLOR_BUCKET` | |
---| `ICON_TEXT_T` | |
---| `ICON_TEXT_A` | |
---| `ICON_SCALE` | |
---| `ICON_RESIZE` | |
---| `ICON_FILTER_POINT` | |
---| `ICON_FILTER_BILINEAR` | |
---| `ICON_CROP` | |
---| `ICON_CROP_ALPHA` | |
---| `ICON_SQUARE_TOGGLE` | |
---| `ICON_SYMMETRY` | |
---| `ICON_SYMMETRY_HORIZONTAL` | |
---| `ICON_SYMMETRY_VERTICAL` | |
---| `ICON_LENS` | |
---| `ICON_LENS_BIG` | |
---| `ICON_EYE_ON` | |
---| `ICON_EYE_OFF` | |
---| `ICON_FILTER_TOP` | |
---| `ICON_FILTER` | |
---| `ICON_TARGET_POINT` | |
---| `ICON_TARGET_SMALL` | |
---| `ICON_TARGET_BIG` | |
---| `ICON_TARGET_MOVE` | |
---| `ICON_CURSOR_MOVE` | |
---| `ICON_CURSOR_SCALE` | |
---| `ICON_CURSOR_SCALE_RIGHT` | |
---| `ICON_CURSOR_SCALE_LEFT` | |
---| `ICON_UNDO` | |
---| `ICON_REDO` | |
---| `ICON_REREDO` | |
---| `ICON_MUTATE` | |
---| `ICON_ROTATE` | |
---| `ICON_REPEAT` | |
---| `ICON_SHUFFLE` | |
---| `ICON_EMPTYBOX` | |
---| `ICON_TARGET` | |
---| `ICON_TARGET_SMALL_FILL` | |
---| `ICON_TARGET_BIG_FILL` | |
---| `ICON_TARGET_MOVE_FILL` | |
---| `ICON_CURSOR_MOVE_FILL` | |
---| `ICON_CURSOR_SCALE_FILL` | |
---| `ICON_CURSOR_SCALE_RIGHT_FILL` | |
---| `ICON_CURSOR_SCALE_LEFT_FILL` | |
---| `ICON_UNDO_FILL` | |
---| `ICON_REDO_FILL` | |
---| `ICON_REREDO_FILL` | |
---| `ICON_MUTATE_FILL` | |
---| `ICON_ROTATE_FILL` | |
---| `ICON_REPEAT_FILL` | |
---| `ICON_SHUFFLE_FILL` | |
---| `ICON_EMPTYBOX_SMALL` | |
---| `ICON_BOX` | |
---| `ICON_BOX_TOP` | |
---| `ICON_BOX_TOP_RIGHT` | |
---| `ICON_BOX_RIGHT` | |
---| `ICON_BOX_BOTTOM_RIGHT` | |
---| `ICON_BOX_BOTTOM` | |
---| `ICON_BOX_BOTTOM_LEFT` | |
---| `ICON_BOX_LEFT` | |
---| `ICON_BOX_TOP_LEFT` | |
---| `ICON_BOX_CENTER` | |
---| `ICON_BOX_CIRCLE_MASK` | |
---| `ICON_POT` | |
---| `ICON_ALPHA_MULTIPLY` | |
---| `ICON_ALPHA_CLEAR` | |
---| `ICON_DITHERING` | |
---| `ICON_MIPMAPS` | |
---| `ICON_BOX_GRID` | |
---| `ICON_GRID` | |
---| `ICON_BOX_CORNERS_SMALL` | |
---| `ICON_BOX_CORNERS_BIG` | |
---| `ICON_FOUR_BOXES` | |
---| `ICON_GRID_FILL` | |
---| `ICON_BOX_MULTISIZE` | |
---| `ICON_ZOOM_SMALL` | |
---| `ICON_ZOOM_MEDIUM` | |
---| `ICON_ZOOM_BIG` | |
---| `ICON_ZOOM_ALL` | |
---| `ICON_ZOOM_CENTER` | |
---| `ICON_BOX_DOTS_SMALL` | |
---| `ICON_BOX_DOTS_BIG` | |
---| `ICON_BOX_CONCENTRIC` | |
---| `ICON_BOX_GRID_BIG` | |
---| `ICON_OK_TICK` | |
---| `ICON_CROSS` | |
---| `ICON_ARROW_LEFT` | |
---| `ICON_ARROW_RIGHT` | |
---| `ICON_ARROW_DOWN` | |
---| `ICON_ARROW_UP` | |
---| `ICON_ARROW_LEFT_FILL` | |
---| `ICON_ARROW_RIGHT_FILL` | |
---| `ICON_ARROW_DOWN_FILL` | |
---| `ICON_ARROW_UP_FILL` | |
---| `ICON_AUDIO` | |
---| `ICON_FX` | |
---| `ICON_WAVE` | |
---| `ICON_WAVE_SINUS` | |
---| `ICON_WAVE_SQUARE` | |
---| `ICON_WAVE_TRIANGULAR` | |
---| `ICON_CROSS_SMALL` | |
---| `ICON_PLAYER_PREVIOUS` | |
---| `ICON_PLAYER_PLAY_BACK` | |
---| `ICON_PLAYER_PLAY` | |
---| `ICON_PLAYER_PAUSE` | |
---| `ICON_PLAYER_STOP` | |
---| `ICON_PLAYER_NEXT` | |
---| `ICON_PLAYER_RECORD` | |
---| `ICON_MAGNET` | |
---| `ICON_LOCK_CLOSE` | |
---| `ICON_LOCK_OPEN` | |
---| `ICON_CLOCK` | |
---| `ICON_TOOLS` | |
---| `ICON_GEAR` | |
---| `ICON_GEAR_BIG` | |
---| `ICON_BIN` | |
---| `ICON_HAND_POINTER` | |
---| `ICON_LASER` | |
---| `ICON_COIN` | |
---| `ICON_EXPLOSION` | |
---| `ICON_1UP` | |
---| `ICON_PLAYER` | |
---| `ICON_PLAYER_JUMP` | |
---| `ICON_KEY` | |
---| `ICON_DEMON` | |
---| `ICON_TEXT_POPUP` | |
---| `ICON_GEAR_EX` | |
---| `ICON_CRACK` | |
---| `ICON_CRACK_POINTS` | |
---| `ICON_STAR` | |
---| `ICON_DOOR` | |
---| `ICON_EXIT` | |
---| `ICON_MODE_2D` | |
---| `ICON_MODE_3D` | |
---| `ICON_CUBE` | |
---| `ICON_CUBE_FACE_TOP` | |
---| `ICON_CUBE_FACE_LEFT` | |
---| `ICON_CUBE_FACE_FRONT` | |
---| `ICON_CUBE_FACE_BOTTOM` | |
---| `ICON_CUBE_FACE_RIGHT` | |
---| `ICON_CUBE_FACE_BACK` | |
---| `ICON_CAMERA` | |
---| `ICON_SPECIAL` | |
---| `ICON_LINK_NET` | |
---| `ICON_LINK_BOXES` | |
---| `ICON_LINK_MULTI` | |
---| `ICON_LINK` | |
---| `ICON_LINK_BROKE` | |
---| `ICON_TEXT_NOTES` | |
---| `ICON_NOTEBOOK` | |
---| `ICON_SUITCASE` | |
---| `ICON_SUITCASE_ZIP` | |
---| `ICON_MAILBOX` | |
---| `ICON_MONITOR` | |
---| `ICON_PRINTER` | |
---| `ICON_PHOTO_CAMERA` | |
---| `ICON_PHOTO_CAMERA_FLASH` | |
---| `ICON_HOUSE` | |
---| `ICON_HEART` | |
---| `ICON_CORNER` | |
---| `ICON_VERTICAL_BARS` | |
---| `ICON_VERTICAL_BARS_FILL` | |
---| `ICON_LIFE_BARS` | |
---| `ICON_INFO` | |
---| `ICON_CROSSLINE` | |
---| `ICON_HELP` | |
---| `ICON_FILETYPE_ALPHA` | |
---| `ICON_FILETYPE_HOME` | |
---| `ICON_LAYERS_VISIBLE` | |
---| `ICON_LAYERS` | |
---| `ICON_WINDOW` | |
---| `ICON_HIDPI` | |
---| `ICON_FILETYPE_BINARY` | |
---| `ICON_HEX` | |
---| `ICON_SHIELD` | |
---| `ICON_FILE_NEW` | |
---| `ICON_FOLDER_ADD` | |
---| `ICON_ALARM` | |
---| `ICON_CPU` | |
---| `ICON_ROM` | |
---| `ICON_STEP_OVER` | |
---| `ICON_STEP_INTO` | |
---| `ICON_STEP_OUT` | |
---| `ICON_RESTART` | |
---| `ICON_BREAKPOINT_ON` | |
---| `ICON_BREAKPOINT_OFF` | |
---| `ICON_BURGER_MENU` | |
---| `ICON_CASE_SENSITIVE` | |
---| `ICON_REG_EXP` | |
---| `ICON_FOLDER` | |
---| `ICON_FILE` | |
---| `ICON_SAND_TIMER` | |
---| `ICON_WARNING` | |
---| `ICON_HELP_BOX` | |
---| `ICON_INFO_BOX` | |
---| `ICON_223` | |
---| `ICON_224` | |
---| `ICON_225` | |
---| `ICON_226` | |
---| `ICON_227` | |
---| `ICON_228` | |
---| `ICON_229` | |
---| `ICON_230` | |
---| `ICON_231` | |
---| `ICON_232` | |
---| `ICON_233` | |
---| `ICON_234` | |
---| `ICON_235` | |
---| `ICON_236` | |
---| `ICON_237` | |
---| `ICON_238` | |
---| `ICON_239` | |
---| `ICON_240` | |
---| `ICON_241` | |
---| `ICON_242` | |
---| `ICON_243` | |
---| `ICON_244` | |
---| `ICON_245` | |
---| `ICON_246` | |
---| `ICON_247` | |
---| `ICON_248` | |
---| `ICON_249` | |
---| `ICON_250` | |
---| `ICON_251` | |
---| `ICON_252` | |
---| `ICON_253` | |
---| `ICON_254` | |
---| `ICON_255` | |
---@alias GuiProperty GuiControlProperty | GuiDefaultProperty | GuiToggleProperty | GuiSliderProperty | GuiProgressBarProperty | GuiScrollBarProperty | GuiCheckBoxProperty | GuiComboBoxProperty | GuiDropdownBoxProperty | GuiTextBoxProperty | GuiSpinnerProperty | GuiListViewProperty | GuiColorPickerProperty | |
---@alias TraceLogCallback fun(logLevel: TraceLogLevel, text: string, args: userdata) | |
---@alias LoadFileDataCallback fun(fileName: string, dataSize: integer): userdata | |
---@alias SaveFileDataCallback fun(fileName: string, data: userdata, dataSize: integer): boolean | |
---@alias LoadFileTextCallback fun(fileName: string): string | |
---@alias SaveFileTextCallback fun(fileName: string, text: string): boolean | |
---Initialize window and OpenGL context | |
---@type fun(width:number, height:number, title:string) | |
function InitWindow(width, height, title) | |
end | |
---Close window and unload OpenGL context | |
---@type fun() | |
function CloseWindow() | |
end | |
---Check if application should close (KEY_ESCAPE pressed or windows close icon clicked) | |
---@type fun():boolean | |
function WindowShouldClose() | |
end | |
---Check if window has been initialized successfully | |
---@type fun():boolean | |
function IsWindowReady() | |
end | |
---Check if window is currently fullscreen | |
---@type fun():boolean | |
function IsWindowFullscreen() | |
end | |
---Check if window is currently hidden (only PLATFORM_DESKTOP) | |
---@type fun():boolean | |
function IsWindowHidden() | |
end | |
---Check if window is currently minimized (only PLATFORM_DESKTOP) | |
---@type fun():boolean | |
function IsWindowMinimized() | |
end | |
---Check if window is currently maximized (only PLATFORM_DESKTOP) | |
---@type fun():boolean | |
function IsWindowMaximized() | |
end | |
---Check if window is currently focused (only PLATFORM_DESKTOP) | |
---@type fun():boolean | |
function IsWindowFocused() | |
end | |
---Check if window has been resized last frame | |
---@type fun():boolean | |
function IsWindowResized() | |
end | |
---Check if one specific window flag is enabled | |
---@type fun(flag:number):boolean | |
function IsWindowState(flag) | |
end | |
---Set window configuration state using flags (only PLATFORM_DESKTOP) | |
---@type fun(flags:number) | |
function SetWindowState(flags) | |
end | |
---Clear window configuration state flags | |
---@type fun(flags:number) | |
function ClearWindowState(flags) | |
end | |
---Toggle window state: fullscreen/windowed (only PLATFORM_DESKTOP) | |
---@type fun() | |
function ToggleFullscreen() | |
end | |
---Toggle window state: borderless windowed (only PLATFORM_DESKTOP) | |
---@type fun() | |
function ToggleBorderlessWindowed() | |
end | |
---Set window state: maximized, if resizable (only PLATFORM_DESKTOP) | |
---@type fun() | |
function MaximizeWindow() | |
end | |
---Set window state: minimized, if resizable (only PLATFORM_DESKTOP) | |
---@type fun() | |
function MinimizeWindow() | |
end | |
---Set window state: not minimized/maximized (only PLATFORM_DESKTOP) | |
---@type fun() | |
function RestoreWindow() | |
end | |
---Set icon for window (single image, RGBA 32bit, only PLATFORM_DESKTOP) | |
---@type fun(image:Image) | |
function SetWindowIcon(image) | |
end | |
---Set icon for window (multiple images, RGBA 32bit, only PLATFORM_DESKTOP) | |
---@type fun(images:Image, count:number) | |
function SetWindowIcons(images, count) | |
end | |
---Set title for window (only PLATFORM_DESKTOP and PLATFORM_WEB) | |
---@type fun(title:string) | |
function SetWindowTitle(title) | |
end | |
---Set window position on screen (only PLATFORM_DESKTOP) | |
---@type fun(x:number, y:number) | |
function SetWindowPosition(x, y) | |
end | |
---Set monitor for the current window | |
---@type fun(monitor:number) | |
function SetWindowMonitor(monitor) | |
end | |
---Set window minimum dimensions (for FLAG_WINDOW_RESIZABLE) | |
---@type fun(width:number, height:number) | |
function SetWindowMinSize(width, height) | |
end | |
---Set window maximum dimensions (for FLAG_WINDOW_RESIZABLE) | |
---@type fun(width:number, height:number) | |
function SetWindowMaxSize(width, height) | |
end | |
---Set window dimensions | |
---@type fun(width:number, height:number) | |
function SetWindowSize(width, height) | |
end | |
---Set window opacity [0.0f..1.0f] (only PLATFORM_DESKTOP) | |
---@type fun(opacity:number) | |
function SetWindowOpacity(opacity) | |
end | |
---Set window focused (only PLATFORM_DESKTOP) | |
---@type fun() | |
function SetWindowFocused() | |
end | |
---Get native window handle | |
---@type fun() | |
function GetWindowHandle() | |
end | |
---Get current screen width | |
---@type fun():number | |
function GetScreenWidth() | |
end | |
---Get current screen height | |
---@type fun():number | |
function GetScreenHeight() | |
end | |
---Get current render width (it considers HiDPI) | |
---@type fun():number | |
function GetRenderWidth() | |
end | |
---Get current render height (it considers HiDPI) | |
---@type fun():number | |
function GetRenderHeight() | |
end | |
---Get number of connected monitors | |
---@type fun():number | |
function GetMonitorCount() | |
end | |
---Get current connected monitor | |
---@type fun():number | |
function GetCurrentMonitor() | |
end | |
---Get specified monitor position | |
---@type fun(monitor:number):Vector2 | |
function GetMonitorPosition(monitor) | |
end | |
---Get specified monitor width (current video mode used by monitor) | |
---@type fun(monitor:number):number | |
function GetMonitorWidth(monitor) | |
end | |
---Get specified monitor height (current video mode used by monitor) | |
---@type fun(monitor:number):number | |
function GetMonitorHeight(monitor) | |
end | |
---Get specified monitor physical width in millimetres | |
---@type fun(monitor:number):number | |
function GetMonitorPhysicalWidth(monitor) | |
end | |
---Get specified monitor physical height in millimetres | |
---@type fun(monitor:number):number | |
function GetMonitorPhysicalHeight(monitor) | |
end | |
---Get specified monitor refresh rate | |
---@type fun(monitor:number):number | |
function GetMonitorRefreshRate(monitor) | |
end | |
---Get window position XY on monitor | |
---@type fun():Vector2 | |
function GetWindowPosition() | |
end | |
---Get window scale DPI factor | |
---@type fun():Vector2 | |
function GetWindowScaleDPI() | |
end | |
---Get the human-readable, UTF-8 encoded name of the specified monitor | |
---@type fun(monitor:number):string | |
function GetMonitorName(monitor) | |
end | |
---Set clipboard text content | |
---@type fun(text:string) | |
function SetClipboardText(text) | |
end | |
---Get clipboard text content | |
---@type fun():string | |
function GetClipboardText() | |
end | |
---Enable waiting for events on EndDrawing(), no automatic event polling | |
---@type fun() | |
function EnableEventWaiting() | |
end | |
---Disable waiting for events on EndDrawing(), automatic events polling | |
---@type fun() | |
function DisableEventWaiting() | |
end | |
---Shows cursor | |
---@type fun() | |
function ShowCursor() | |
end | |
---Hides cursor | |
---@type fun() | |
function HideCursor() | |
end | |
---Check if cursor is not visible | |
---@type fun():boolean | |
function IsCursorHidden() | |
end | |
---Enables cursor (unlock cursor) | |
---@type fun() | |
function EnableCursor() | |
end | |
---Disables cursor (lock cursor) | |
---@type fun() | |
function DisableCursor() | |
end | |
---Check if cursor is on the screen | |
---@type fun():boolean | |
function IsCursorOnScreen() | |
end | |
---Set background color (framebuffer clear color) | |
---@type fun(color:Color) | |
function ClearBackground(color) | |
end | |
---Setup canvas (framebuffer) to start drawing | |
---@type fun() | |
function BeginDrawing() | |
end | |
---End canvas drawing and swap buffers (number buffering) | |
---@type fun() | |
function EndDrawing() | |
end | |
---Begin 2D mode with custom camera (2D) | |
---@type fun(camera:Camera2D) | |
function BeginMode2D(camera) | |
end | |
---Ends 2D mode with custom camera | |
---@type fun() | |
function EndMode2D() | |
end | |
---Begin 3D mode with custom camera (3D) | |
---@type fun(camera:Camera3D) | |
function BeginMode3D(camera) | |
end | |
---Ends 3D mode and returns to default 2D orthographic mode | |
---@type fun() | |
function EndMode3D() | |
end | |
---Begin drawing to render texture | |
---@type fun(target:RenderTexture2D) | |
function BeginTextureMode(target) | |
end | |
---Ends drawing to render texture | |
---@type fun() | |
function EndTextureMode() | |
end | |
---Begin custom shader drawing | |
---@type fun(shader:Shader) | |
function BeginShaderMode(shader) | |
end | |
---End custom shader drawing (use default shader) | |
---@type fun() | |
function EndShaderMode() | |
end | |
---Begin blending mode (alpha, additive, multiplied, subtract, custom) | |
---@type fun(mode:BlendMode) | |
function BeginBlendMode(mode) | |
end | |
---End blending mode (reset to default: alpha blending) | |
---@type fun() | |
function EndBlendMode() | |
end | |
---Begin scissor mode (define screen area for following drawing) | |
---@type fun(x:number, y:number, width:number, height:number) | |
function BeginScissorMode(x, y, width, height) | |
end | |
---End scissor mode | |
---@type fun() | |
function EndScissorMode() | |
end | |
---Begin stereo rendering (requires VR simulator) | |
---@type fun(config:VrStereoConfig) | |
function BeginVrStereoMode(config) | |
end | |
---End stereo rendering (requires VR simulator) | |
---@type fun() | |
function EndVrStereoMode() | |
end | |
---Load VR stereo config for VR simulator device parameters | |
---@type fun(device:VrDeviceInfo):VrStereoConfig | |
function LoadVrStereoConfig(device) | |
end | |
---Unload VR stereo config | |
---@type fun(config:VrStereoConfig) | |
function UnloadVrStereoConfig(config) | |
end | |
---Load shader from files and bind default locations | |
---@type fun(vsFileName:string, fsFileName:string):Shader | |
function LoadShader(vsFileName, fsFileName) | |
end | |
---Load shader from code strings and bind default locations | |
---@type fun(vsCode:string, fsCode:string):Shader | |
function LoadShaderFromMemory(vsCode, fsCode) | |
end | |
---Check if a shader is ready | |
---@type fun(shader:Shader):boolean | |
function IsShaderReady(shader) | |
end | |
---Get shader uniform location | |
---@type fun(shader:Shader, uniformName:string):number | |
function GetShaderLocation(shader, uniformName) | |
end | |
---Get shader attribute location | |
---@type fun(shader:Shader, attribName:string):number | |
function GetShaderLocationAttrib(shader, attribName) | |
end | |
---Set shader uniform value | |
---@type fun(shader:Shader, locIndex:ShaderLocationIndex, value:userdata, uniformType:ShaderUniformDataType) | |
function SetShaderValue(shader, locIndex, value, uniformType) | |
end | |
---Set shader uniform value vector | |
---@type fun(shader:Shader, locIndex:ShaderLocationIndex, value:userdata, uniformType:ShaderUniformDataType, count:number) | |
function SetShaderValueV(shader, locIndex, value, uniformType, count) | |
end | |
---Set shader uniform value (matrix 4x4) | |
---@type fun(shader:Shader, locIndex:ShaderLocationIndex, mat:Matrix) | |
function SetShaderValueMatrix(shader, locIndex, mat) | |
end | |
---Set shader uniform value for texture (sampler2d) | |
---@type fun(shader:Shader, locIndex:ShaderLocationIndex, texture:Texture2D) | |
function SetShaderValueTexture(shader, locIndex, texture) | |
end | |
---Unload shader from GPU memory (VRAM) | |
---@type fun(shader:Shader) | |
function UnloadShader(shader) | |
end | |
---Get a ray trace from mouse position | |
---@type fun(mousePosition:Vector2, camera:Camera):Ray | |
function GetMouseRay(mousePosition, camera) | |
end | |
---Get camera transform matrix (view matrix) | |
---@type fun(camera:Camera):Matrix | |
function GetCameraMatrix(camera) | |
end | |
---Get camera 2d transform matrix | |
---@type fun(camera:Camera2D):Matrix | |
function GetCameraMatrix2D(camera) | |
end | |
---Get the screen space position for a 3d world space position | |
---@type fun(position:Vector3, camera:Camera):Vector2 | |
function GetWorldToScreen(position, camera) | |
end | |
---Get the world space position for a 2d camera screen space position | |
---@type fun(position:Vector2, camera:Camera2D):Vector2 | |
function GetScreenToWorld2D(position, camera) | |
end | |
---Get size position for a 3d world space position | |
---@type fun(position:Vector3, camera:Camera, width:number, height:number):Vector2 | |
function GetWorldToScreenEx(position, camera, width, height) | |
end | |
---Get the screen space position for a 2d camera world space position | |
---@type fun(position:Vector2, camera:Camera2D):Vector2 | |
function GetWorldToScreen2D(position, camera) | |
end | |
---Set target FPS (maximum) | |
---@type fun(fps:number) | |
function SetTargetFPS(fps) | |
end | |
---Get time in seconds for last frame drawn (delta time) | |
---@type fun():number | |
function GetFrameTime() | |
end | |
---Get elapsed time in seconds since InitWindow() | |
---@type fun():number | |
function GetTime() | |
end | |
---Get current FPS | |
---@type fun():number | |
function GetFPS() | |
end | |
---Swap back buffer with front buffer (screen drawing) | |
---@type fun() | |
function SwapScreenBuffer() | |
end | |
---Register all input events | |
---@type fun() | |
function PollInputEvents() | |
end | |
---Wait for some time (halt program execution) | |
---@type fun(seconds:number) | |
function WaitTime(seconds) | |
end | |
---Set the seed for the random number generator | |
---@type fun(seed:number) | |
function SetRandomSeed(seed) | |
end | |
---Get a random value between min and max (both included) | |
---@type fun(min:number, max:number):number | |
function GetRandomValue(min, max) | |
end | |
---Load random values sequence, no values repeated | |
---@type fun(count:number, min:number, max:number):number | |
function LoadRandomSequence(count, min, max) | |
end | |
---Unload random values sequence | |
---@type fun(sequence:number) | |
function UnloadRandomSequence(sequence) | |
end | |
---Takes a screenshot of current screen (filename extension defines format) | |
---@type fun(fileName:string) | |
function TakeScreenshot(fileName) | |
end | |
---Setup init configuration flags (view FLAGS) | |
---@type fun(flags:ConfigFlags) | |
function SetConfigFlags(flags) | |
end | |
---Open URL with default system browser (if available) | |
---@type fun(url:string) | |
function OpenURL(url) | |
end | |
---Show trace log messages (LOG_DEBUG, LOG_INFO, LOG_WARNING, LOG_ERROR...) | |
---@type fun(logLevel:TraceLogLevel, text:string, ...) | |
---@vararg string | |
function TraceLog(logLevel, text) | |
end | |
---Set the current threshold (minimum) log level | |
---@type fun(logLevel:TraceLogLevel) | |
function SetTraceLogLevel(logLevel) | |
end | |
---Internal memory allocator | |
---@type fun(size:number) | |
function MemAlloc(size) | |
end | |
---Internal memory reallocator | |
---@type fun(ptr:userdata, size:number) | |
function MemRealloc(ptr, size) | |
end | |
---Internal memory free | |
---@type fun(ptr:userdata) | |
function MemFree(ptr) | |
end | |
---Set custom trace log | |
---@type fun(callback:TraceLogCallback) | |
function SetTraceLogCallback(callback) | |
end | |
---Set custom file binary data loader | |
---@type fun(callback:LoadFileDataCallback) | |
function SetLoadFileDataCallback(callback) | |
end | |
---Set custom file binary data saver | |
---@type fun(callback:SaveFileDataCallback) | |
function SetSaveFileDataCallback(callback) | |
end | |
---Set custom file text data loader | |
---@type fun(callback:LoadFileTextCallback) | |
function SetLoadFileTextCallback(callback) | |
end | |
---Set custom file text data saver | |
---@type fun(callback:SaveFileTextCallback) | |
function SetSaveFileTextCallback(callback) | |
end | |
---Load file data as byte array (read) | |
---@type fun(fileName:string, dataSize:number):string | |
function LoadFileData(fileName, dataSize) | |
end | |
---Unload file data allocated by LoadFileData() | |
---@type fun(data:string) | |
function UnloadFileData(data) | |
end | |
---Save data to file from byte array (write), returns true on success | |
---@type fun(fileName:string, data:userdata, dataSize:number):boolean | |
function SaveFileData(fileName, data, dataSize) | |
end | |
---Export data to code (.h), returns true on success | |
---@type fun(data:string, dataSize:number, fileName:string):boolean | |
function ExportDataAsCode(data, dataSize, fileName) | |
end | |
---Load text data from file (read), returns a '\0' terminated string | |
---@type fun(fileName:string):string | |
function LoadFileText(fileName) | |
end | |
---Unload file text data allocated by LoadFileText() | |
---@type fun(text:string) | |
function UnloadFileText(text) | |
end | |
---Save text data to file (write), string must be '\0' terminated, returns true on success | |
---@type fun(fileName:string, text:string):boolean | |
function SaveFileText(fileName, text) | |
end | |
---Check if file exists | |
---@type fun(fileName:string):boolean | |
function FileExists(fileName) | |
end | |
---Check if a directory path exists | |
---@type fun(dirPath:string):boolean | |
function DirectoryExists(dirPath) | |
end | |
---Check file extension (including point: .png, .wav) | |
---@type fun(fileName:string, ext:string):boolean | |
function IsFileExtension(fileName, ext) | |
end | |
---Get file length in bytes (NOTE: GetFileSize() conflicts with windows.h) | |
---@type fun(fileName:string):number | |
function GetFileLength(fileName) | |
end | |
---Get pointer to extension for a filename string (includes dot: '.png') | |
---@type fun(fileName:string):string | |
function GetFileExtension(fileName) | |
end | |
---Get pointer to filename for a path string | |
---@type fun(filePath:string):string | |
function GetFileName(filePath) | |
end | |
---Get filename string without extension (uses static string) | |
---@type fun(filePath:string):string | |
function GetFileNameWithoutExt(filePath) | |
end | |
---Get full path for a given fileName with path (uses static string) | |
---@type fun(filePath:string):string | |
function GetDirectoryPath(filePath) | |
end | |
---Get previous directory path for a given path (uses static string) | |
---@type fun(dirPath:string):string | |
function GetPrevDirectoryPath(dirPath) | |
end | |
---Get current working directory (uses static string) | |
---@type fun():string | |
function GetWorkingDirectory() | |
end | |
---Get the directory of the running application (uses static string) | |
---@type fun():string | |
function GetApplicationDirectory() | |
end | |
---Change working directory, return true on success | |
---@type fun(dir:string):boolean | |
function ChangeDirectory(dir) | |
end | |
---Check if a given path is a file or a directory | |
---@type fun(path:string):boolean | |
function IsPathFile(path) | |
end | |
---Load directory filepaths | |
---@type fun(dirPath:string):FilePathList | |
function LoadDirectoryFiles(dirPath) | |
end | |
---Load directory filepaths with extension filtering and recursive directory scan | |
---@type fun(basePath:string, filter:string, scanSubdirs:boolean):FilePathList | |
function LoadDirectoryFilesEx(basePath, filter, scanSubdirs) | |
end | |
---Unload filepaths | |
---@type fun(files:FilePathList) | |
function UnloadDirectoryFiles(files) | |
end | |
---Check if a file has been dropped into window | |
---@type fun():boolean | |
function IsFileDropped() | |
end | |
---Load dropped filepaths | |
---@type fun():FilePathList | |
function LoadDroppedFiles() | |
end | |
---Unload dropped filepaths | |
---@type fun(files:FilePathList) | |
function UnloadDroppedFiles(files) | |
end | |
---Get file modification time (last write time) | |
---@type fun(fileName:string):number | |
function GetFileModTime(fileName) | |
end | |
---Compress data (DEFLATE algorithm), memory must be MemFree() | |
---@type fun(data:string, dataSize:number, compDataSize:number):string | |
function CompressData(data, dataSize, compDataSize) | |
end | |
---Decompress data (DEFLATE algorithm), memory must be MemFree() | |
---@type fun(compData:string, compDataSize:number, dataSize:number):string | |
function DecompressData(compData, compDataSize, dataSize) | |
end | |
---Encode data to Base64 string, memory must be MemFree() | |
---@type fun(data:string, dataSize:number, outputSize:number):string | |
function EncodeDataBase64(data, dataSize, outputSize) | |
end | |
---Decode Base64 string data, memory must be MemFree() | |
---@type fun(data:string, outputSize:number):string | |
function DecodeDataBase64(data, outputSize) | |
end | |
---Load automation events list from file, NULL for empty list, capacity = MAX_AUTOMATION_EVENTS | |
---@type fun(fileName:string):AutomationEventList | |
function LoadAutomationEventList(fileName) | |
end | |
---Unload automation events list from file | |
---@type fun(list:AutomationEventList) | |
function UnloadAutomationEventList(list) | |
end | |
---Export automation events list as text file | |
---@type fun(list:AutomationEventList, fileName:string):boolean | |
function ExportAutomationEventList(list, fileName) | |
end | |
---Set automation event list to record to | |
---@type fun(list:AutomationEventList) | |
function SetAutomationEventList(list) | |
end | |
---Set automation event internal base frame to start recording | |
---@type fun(frame:number) | |
function SetAutomationEventBaseFrame(frame) | |
end | |
---Start recording automation events (AutomationEventList must be set) | |
---@type fun() | |
function StartAutomationEventRecording() | |
end | |
---Stop recording automation events | |
---@type fun() | |
function StopAutomationEventRecording() | |
end | |
---Play a recorded automation event | |
---@type fun(event:AutomationEvent) | |
function PlayAutomationEvent(event) | |
end | |
---Check if a key has been pressed once | |
---@type fun(key:KeyboardKey):boolean | |
function IsKeyPressed(key) | |
end | |
---Check if a key has been pressed again (Only PLATFORM_DESKTOP) | |
---@type fun(key:KeyboardKey):boolean | |
function IsKeyPressedRepeat(key) | |
end | |
---Check if a key is being pressed | |
---@type fun(key:KeyboardKey):boolean | |
function IsKeyDown(key) | |
end | |
---Check if a key has been released once | |
---@type fun(key:KeyboardKey):boolean | |
function IsKeyReleased(key) | |
end | |
---Check if a key is NOT being pressed | |
---@type fun(key:KeyboardKey):boolean | |
function IsKeyUp(key) | |
end | |
---Get key pressed (keycode), call it multiple times for keys queued, returns 0 when the queue is empty | |
---@type fun():number | |
function GetKeyPressed() | |
end | |
---Get string pressed (unicode), call it multiple times for strings queued, returns 0 when the queue is empty | |
---@type fun():number | |
function GetCharPressed() | |
end | |
---Set a custom key to exit program (default is ESC) | |
---@type fun(key:KeyboardKey) | |
function SetExitKey(key) | |
end | |
---Check if a gamepad is available | |
---@type fun(gamepad:number):boolean | |
function IsGamepadAvailable(gamepad) | |
end | |
---Get gamepad internal name id | |
---@type fun(gamepad:number):string | |
function GetGamepadName(gamepad) | |
end | |
---Check if a gamepad button has been pressed once | |
---@type fun(gamepad:number, button:GamepadButton):boolean | |
function IsGamepadButtonPressed(gamepad, button) | |
end | |
---Check if a gamepad button is being pressed | |
---@type fun(gamepad:number, button:GamepadButton):boolean | |
function IsGamepadButtonDown(gamepad, button) | |
end | |
---Check if a gamepad button has been released once | |
---@type fun(gamepad:number, button:GamepadButton):boolean | |
function IsGamepadButtonReleased(gamepad, button) | |
end | |
---Check if a gamepad button is NOT being pressed | |
---@type fun(gamepad:number, button:GamepadButton):boolean | |
function IsGamepadButtonUp(gamepad, button) | |
end | |
---Get the last gamepad button pressed | |
---@type fun():number | |
function GetGamepadButtonPressed() | |
end | |
---Get gamepad axis count for a gamepad | |
---@type fun(gamepad:number):number | |
function GetGamepadAxisCount(gamepad) | |
end | |
---Get axis movement value for a gamepad axis | |
---@type fun(gamepad:number, axis:GamepadAxis):number | |
function GetGamepadAxisMovement(gamepad, axis) | |
end | |
---Set internal gamepad mappings (SDL_GameControllerDB) | |
---@type fun(mappings:string):number | |
function SetGamepadMappings(mappings) | |
end | |
---Check if a mouse button has been pressed once | |
---@type fun(button:MouseButton):boolean | |
function IsMouseButtonPressed(button) | |
end | |
---Check if a mouse button is being pressed | |
---@type fun(button:MouseButton):boolean | |
function IsMouseButtonDown(button) | |
end | |
---Check if a mouse button has been released once | |
---@type fun(button:MouseButton):boolean | |
function IsMouseButtonReleased(button) | |
end | |
---Check if a mouse button is NOT being pressed | |
---@type fun(button:MouseButton):boolean | |
function IsMouseButtonUp(button) | |
end | |
---Get mouse position X | |
---@type fun():number | |
function GetMouseX() | |
end | |
---Get mouse position Y | |
---@type fun():number | |
function GetMouseY() | |
end | |
---Get mouse position XY | |
---@type fun():Vector2 | |
function GetMousePosition() | |
end | |
---Get mouse delta between frames | |
---@type fun():Vector2 | |
function GetMouseDelta() | |
end | |
---Set mouse position XY | |
---@type fun(x:number, y:number) | |
function SetMousePosition(x, y) | |
end | |
---Set mouse offset | |
---@type fun(offsetX:number, offsetY:number) | |
function SetMouseOffset(offsetX, offsetY) | |
end | |
---Set mouse scaling | |
---@type fun(scaleX:number, scaleY:number) | |
function SetMouseScale(scaleX, scaleY) | |
end | |
---Get mouse wheel movement for X or Y, whichever is larger | |
---@type fun():number | |
function GetMouseWheelMove() | |
end | |
---Get mouse wheel movement for both X and Y | |
---@type fun():Vector2 | |
function GetMouseWheelMoveV() | |
end | |
---Set mouse cursor | |
---@type fun(cursor:MouseCursor) | |
function SetMouseCursor(cursor) | |
end | |
---Get touch position X for touch ponumber 0 (relative to screen size) | |
---@type fun():number | |
function GetTouchX() | |
end | |
---Get touch position Y for touch ponumber 0 (relative to screen size) | |
---@type fun():number | |
function GetTouchY() | |
end | |
---Get touch position XY for a touch ponumber index (relative to screen size) | |
---@type fun(index:number):Vector2 | |
function GetTouchPosition(index) | |
end | |
---Get touch ponumber identifier for given index | |
---@type fun(index:number):number | |
function GetTouchPointId(index) | |
end | |
---Get number of touch points | |
---@type fun():number | |
function GetTouchPointCount() | |
end | |
---Enable a set of gestures using flags | |
---@type fun(flags:number) | |
function SetGesturesEnabled(flags) | |
end | |
---Check if a gesture have been detected | |
---@type fun(gesture:Gesture):boolean | |
function IsGestureDetected(gesture) | |
end | |
---Get latest detected gesture | |
---@type fun():Gesture | |
function GetGestureDetected() | |
end | |
---Get gesture hold time in milliseconds | |
---@type fun():number | |
function GetGestureHoldDuration() | |
end | |
---Get gesture drag vector | |
---@type fun():Vector2 | |
function GetGestureDragVector() | |
end | |
---Get gesture drag angle | |
---@type fun():number | |
function GetGestureDragAngle() | |
end | |
---Get gesture pinch delta | |
---@type fun():Vector2 | |
function GetGesturePinchVector() | |
end | |
---Get gesture pinch angle | |
---@type fun():number | |
function GetGesturePinchAngle() | |
end | |
---Update camera position for selected mode | |
---@type fun(camera:Camera, mode:CameraMode) | |
function UpdateCamera(camera, mode) | |
end | |
---Update camera movement/rotation | |
---@type fun(camera:Camera, movement:Vector3, rotation:Vector3, zoom:number) | |
function UpdateCameraPro(camera, movement, rotation, zoom) | |
end | |
---Set texture and rectangle to be used on shapes drawing | |
---@type fun(texture:Texture2D, source:Rectangle) | |
function SetShapesTexture(texture, source) | |
end | |
---Draw a pixel | |
---@type fun(posX:number, posY:number, color:Color) | |
function DrawPixel(posX, posY, color) | |
end | |
---Draw a pixel (Vector version) | |
---@type fun(position:Vector2, color:Color) | |
function DrawPixelV(position, color) | |
end | |
---Draw a line | |
---@type fun(startPosX:number, startPosY:number, endPosX:number, endPosY:number, color:Color) | |
function DrawLine(startPosX, startPosY, endPosX, endPosY, color) | |
end | |
---Draw a line (using gl lines) | |
---@type fun(startPos:Vector2, endPos:Vector2, color:Color) | |
function DrawLineV(startPos, endPos, color) | |
end | |
---Draw a line (using triangles/quads) | |
---@type fun(startPos:Vector2, endPos:Vector2, thick:number, color:Color) | |
function DrawLineEx(startPos, endPos, thick, color) | |
end | |
---Draw lines sequence (using gl lines) | |
---@type fun(points:Vector2, pointCount:number, color:Color) | |
function DrawLineStrip(points, pointCount, color) | |
end | |
---Draw line segment cubic-bezier in-out interpolation | |
---@type fun(startPos:Vector2, endPos:Vector2, thick:number, color:Color) | |
function DrawLineBezier(startPos, endPos, thick, color) | |
end | |
---Draw a color-filled circle | |
---@type fun(centerX:number, centerY:number, radius:number, color:Color) | |
function DrawCircle(centerX, centerY, radius, color) | |
end | |
---Draw a piece of a circle | |
---@type fun(center:Vector2, radius:number, startAngle:number, endAngle:number, segments:number, color:Color) | |
function DrawCircleSector(center, radius, startAngle, endAngle, segments, color) | |
end | |
---Draw circle sector outline | |
---@type fun(center:Vector2, radius:number, startAngle:number, endAngle:number, segments:number, color:Color) | |
function DrawCircleSectorLines(center, radius, startAngle, endAngle, segments, color) | |
end | |
---Draw a gradient-filled circle | |
---@type fun(centerX:number, centerY:number, radius:number, color1:Color, color2:Color) | |
function DrawCircleGradient(centerX, centerY, radius, color1, color2) | |
end | |
---Draw a color-filled circle (Vector version) | |
---@type fun(center:Vector2, radius:number, color:Color) | |
function DrawCircleV(center, radius, color) | |
end | |
---Draw circle outline | |
---@type fun(centerX:number, centerY:number, radius:number, color:Color) | |
function DrawCircleLines(centerX, centerY, radius, color) | |
end | |
---Draw circle outline (Vector version) | |
---@type fun(center:Vector2, radius:number, color:Color) | |
function DrawCircleLinesV(center, radius, color) | |
end | |
---Draw ellipse | |
---@type fun(centerX:number, centerY:number, radiusH:number, radiusV:number, color:Color) | |
function DrawEllipse(centerX, centerY, radiusH, radiusV, color) | |
end | |
---Draw ellipse outline | |
---@type fun(centerX:number, centerY:number, radiusH:number, radiusV:number, color:Color) | |
function DrawEllipseLines(centerX, centerY, radiusH, radiusV, color) | |
end | |
---Draw ring | |
---@type fun(center:Vector2, innerRadius:number, outerRadius:number, startAngle:number, endAngle:number, segments:number, color:Color) | |
function DrawRing(center, innerRadius, outerRadius, startAngle, endAngle, segments, color) | |
end | |
---Draw ring outline | |
---@type fun(center:Vector2, innerRadius:number, outerRadius:number, startAngle:number, endAngle:number, segments:number, color:Color) | |
function DrawRingLines(center, innerRadius, outerRadius, startAngle, endAngle, segments, color) | |
end | |
---Draw a color-filled rectangle | |
---@type fun(posX:number, posY:number, width:number, height:number, color:Color) | |
function DrawRectangle(posX, posY, width, height, color) | |
end | |
---Draw a color-filled rectangle (Vector version) | |
---@type fun(position:Vector2, size:Vector2, color:Color) | |
function DrawRectangleV(position, size, color) | |
end | |
---Draw a color-filled rectangle | |
---@type fun(rec:Rectangle, color:Color) | |
function DrawRectangleRec(rec, color) | |
end | |
---Draw a color-filled rectangle with pro parameters | |
---@type fun(rec:Rectangle, origin:Vector2, rotation:number, color:Color) | |
function DrawRectanglePro(rec, origin, rotation, color) | |
end | |
---Draw a vertical-gradient-filled rectangle | |
---@type fun(posX:number, posY:number, width:number, height:number, color1:Color, color2:Color) | |
function DrawRectangleGradientV(posX, posY, width, height, color1, color2) | |
end | |
---Draw a horizontal-gradient-filled rectangle | |
---@type fun(posX:number, posY:number, width:number, height:number, color1:Color, color2:Color) | |
function DrawRectangleGradientH(posX, posY, width, height, color1, color2) | |
end | |
---Draw a gradient-filled rectangle with custom vertex colors | |
---@type fun(rec:Rectangle, col1:Color, col2:Color, col3:Color, col4:Color) | |
function DrawRectangleGradientEx(rec, col1, col2, col3, col4) | |
end | |
---Draw rectangle outline | |
---@type fun(posX:number, posY:number, width:number, height:number, color:Color) | |
function DrawRectangleLines(posX, posY, width, height, color) | |
end | |
---Draw rectangle outline with extended parameters | |
---@type fun(rec:Rectangle, lineThick:number, color:Color) | |
function DrawRectangleLinesEx(rec, lineThick, color) | |
end | |
---Draw rectangle with rounded edges | |
---@type fun(rec:Rectangle, roundness:number, segments:number, color:Color) | |
function DrawRectangleRounded(rec, roundness, segments, color) | |
end | |
---Draw rectangle with rounded edges outline | |
---@type fun(rec:Rectangle, roundness:number, segments:number, lineThick:number, color:Color) | |
function DrawRectangleRoundedLines(rec, roundness, segments, lineThick, color) | |
end | |
---Draw a color-filled triangle (vertex in counter-clockwise order!) | |
---@type fun(v1:Vector2, v2:Vector2, v3:Vector2, color:Color) | |
function DrawTriangle(v1, v2, v3, color) | |
end | |
---Draw triangle outline (vertex in counter-clockwise order!) | |
---@type fun(v1:Vector2, v2:Vector2, v3:Vector2, color:Color) | |
function DrawTriangleLines(v1, v2, v3, color) | |
end | |
---Draw a triangle fan defined by points (first vertex is the center) | |
---@type fun(points:Vector2, pointCount:number, color:Color) | |
function DrawTriangleFan(points, pointCount, color) | |
end | |
---Draw a triangle strip defined by points | |
---@type fun(points:Vector2, pointCount:number, color:Color) | |
function DrawTriangleStrip(points, pointCount, color) | |
end | |
---Draw a regular polygon (Vector version) | |
---@type fun(center:Vector2, sides:number, radius:number, rotation:number, color:Color) | |
function DrawPoly(center, sides, radius, rotation, color) | |
end | |
---Draw a polygon outline of n sides | |
---@type fun(center:Vector2, sides:number, radius:number, rotation:number, color:Color) | |
function DrawPolyLines(center, sides, radius, rotation, color) | |
end | |
---Draw a polygon outline of n sides with extended parameters | |
---@type fun(center:Vector2, sides:number, radius:number, rotation:number, lineThick:number, color:Color) | |
function DrawPolyLinesEx(center, sides, radius, rotation, lineThick, color) | |
end | |
---Draw spline: Linear, minimum 2 points | |
---@type fun(points:Vector2, pointCount:number, thick:number, color:Color) | |
function DrawSplineLinear(points, pointCount, thick, color) | |
end | |
---Draw spline: B-Spline, minimum 4 points | |
---@type fun(points:Vector2, pointCount:number, thick:number, color:Color) | |
function DrawSplineBasis(points, pointCount, thick, color) | |
end | |
---Draw spline: Catmull-Rom, minimum 4 points | |
---@type fun(points:Vector2, pointCount:number, thick:number, color:Color) | |
function DrawSplineCatmullRom(points, pointCount, thick, color) | |
end | |
---Draw spline: Quadratic Bezier, minimum 3 points (1 control point): [p1, c2, p3, c4...] | |
---@type fun(points:Vector2, pointCount:number, thick:number, color:Color) | |
function DrawSplineBezierQuadratic(points, pointCount, thick, color) | |
end | |
---Draw spline: Cubic Bezier, minimum 4 points (2 control points): [p1, c2, c3, p4, c5, c6...] | |
---@type fun(points:Vector2, pointCount:number, thick:number, color:Color) | |
function DrawSplineBezierCubic(points, pointCount, thick, color) | |
end | |
---Draw spline segment: Linear, 2 points | |
---@type fun(p1:Vector2, p2:Vector2, thick:number, color:Color) | |
function DrawSplineSegmentLinear(p1, p2, thick, color) | |
end | |
---Draw spline segment: B-Spline, 4 points | |
---@type fun(p1:Vector2, p2:Vector2, p3:Vector2, p4:Vector2, thick:number, color:Color) | |
function DrawSplineSegmentBasis(p1, p2, p3, p4, thick, color) | |
end | |
---Draw spline segment: Catmull-Rom, 4 points | |
---@type fun(p1:Vector2, p2:Vector2, p3:Vector2, p4:Vector2, thick:number, color:Color) | |
function DrawSplineSegmentCatmullRom(p1, p2, p3, p4, thick, color) | |
end | |
---Draw spline segment: Quadratic Bezier, 2 points, 1 control point | |
---@type fun(p1:Vector2, c2:Vector2, p3:Vector2, thick:number, color:Color) | |
function DrawSplineSegmentBezierQuadratic(p1, c2, p3, thick, color) | |
end | |
---Draw spline segment: Cubic Bezier, 2 points, 2 control points | |
---@type fun(p1:Vector2, c2:Vector2, c3:Vector2, p4:Vector2, thick:number, color:Color) | |
function DrawSplineSegmentBezierCubic(p1, c2, c3, p4, thick, color) | |
end | |
---Get (evaluate) spline point: Linear | |
---@type fun(startPos:Vector2, endPos:Vector2, t:number):Vector2 | |
function GetSplinePointLinear(startPos, endPos, t) | |
end | |
---Get (evaluate) spline point: B-Spline | |
---@type fun(p1:Vector2, p2:Vector2, p3:Vector2, p4:Vector2, t:number):Vector2 | |
function GetSplinePointBasis(p1, p2, p3, p4, t) | |
end | |
---Get (evaluate) spline point: Catmull-Rom | |
---@type fun(p1:Vector2, p2:Vector2, p3:Vector2, p4:Vector2, t:number):Vector2 | |
function GetSplinePointCatmullRom(p1, p2, p3, p4, t) | |
end | |
---Get (evaluate) spline point: Quadratic Bezier | |
---@type fun(p1:Vector2, c2:Vector2, p3:Vector2, t:number):Vector2 | |
function GetSplinePointBezierQuad(p1, c2, p3, t) | |
end | |
---Get (evaluate) spline point: Cubic Bezier | |
---@type fun(p1:Vector2, c2:Vector2, c3:Vector2, p4:Vector2, t:number):Vector2 | |
function GetSplinePointBezierCubic(p1, c2, c3, p4, t) | |
end | |
---Check collision between two rectangles | |
---@type fun(rec1:Rectangle, rec2:Rectangle):boolean | |
function CheckCollisionRecs(rec1, rec2) | |
end | |
---Check collision between two circles | |
---@type fun(center1:Vector2, radius1:number, center2:Vector2, radius2:number):boolean | |
function CheckCollisionCircles(center1, radius1, center2, radius2) | |
end | |
---Check collision between circle and rectangle | |
---@type fun(center:Vector2, radius:number, rec:Rectangle):boolean | |
function CheckCollisionCircleRec(center, radius, rec) | |
end | |
---Check if ponumber is inside rectangle | |
---@type fun(point:Vector2, rec:Rectangle):boolean | |
function CheckCollisionPointRec(point, rec) | |
end | |
---Check if ponumber is inside circle | |
---@type fun(point:Vector2, center:Vector2, radius:number):boolean | |
function CheckCollisionPointCircle(point, center, radius) | |
end | |
---Check if ponumber is inside a triangle | |
---@type fun(point:Vector2, p1:Vector2, p2:Vector2, p3:Vector2):boolean | |
function CheckCollisionPointTriangle(point, p1, p2, p3) | |
end | |
---Check if ponumber is within a polygon described by array of vertices | |
---@type fun(point:Vector2, points:Vector2, pointCount:number):boolean | |
function CheckCollisionPointPoly(point, points, pointCount) | |
end | |
---Check the collision between two lines defined by two points each, returns collision ponumber by reference | |
---@type fun(startPos1:Vector2, endPos1:Vector2, startPos2:Vector2, endPos2:Vector2, collisionPoint:Vector2):boolean | |
function CheckCollisionLines(startPos1, endPos1, startPos2, endPos2, collisionPoint) | |
end | |
---Check if ponumber benumbers to line created between two points [p1] and [p2] with defined margin in pixels [threshold] | |
---@type fun(point:Vector2, p1:Vector2, p2:Vector2, threshold:number):boolean | |
function CheckCollisionPointLine(point, p1, p2, threshold) | |
end | |
---Get collision rectangle for two rectangles collision | |
---@type fun(rec1:Rectangle, rec2:Rectangle):Rectangle | |
function GetCollisionRec(rec1, rec2) | |
end | |
---Load image from file into CPU memory (RAM) | |
---@type fun(fileName:string):Image | |
function LoadImage(fileName) | |
end | |
---Load image from RAW file data | |
---@type fun(fileName:string, width:number, height:number, format:PixelFormat, headerSize:number):Image | |
function LoadImageRaw(fileName, width, height, format, headerSize) | |
end | |
---Load image from SVG file data or string with specified size | |
---@type fun(fileNameOrString:string, width:number, height:number):Image | |
function LoadImageSvg(fileNameOrString, width, height) | |
end | |
---Load image sequence from file (frames appended to image.data) | |
---@type fun(fileName:string, frames:number):Image | |
function LoadImageAnim(fileName, frames) | |
end | |
---Load image from memory buffer, fileType refers to extension: i.e. '.png' | |
---@type fun(fileType:string, fileData:string, dataSize:number):Image | |
function LoadImageFromMemory(fileType, fileData, dataSize) | |
end | |
---Load image from GPU texture data | |
---@type fun(texture:Texture2D):Image | |
function LoadImageFromTexture(texture) | |
end | |
---Load image from screen buffer and (screenshot) | |
---@type fun():Image | |
function LoadImageFromScreen() | |
end | |
---Check if an image is ready | |
---@type fun(image:Image):boolean | |
function IsImageReady(image) | |
end | |
---Unload image from CPU memory (RAM) | |
---@type fun(image:Image) | |
function UnloadImage(image) | |
end | |
---Export image data to file, returns true on success | |
---@type fun(image:Image, fileName:string):boolean | |
function ExportImage(image, fileName) | |
end | |
---Export image to memory buffer | |
---@type fun(image:Image, fileType:string, fileSize:number):string | |
function ExportImageToMemory(image, fileType, fileSize) | |
end | |
---Export image as code file defining an array of bytes, returns true on success | |
---@type fun(image:Image, fileName:string):boolean | |
function ExportImageAsCode(image, fileName) | |
end | |
---Generate image: plain color | |
---@type fun(width:number, height:number, color:Color):Image | |
function GenImageColor(width, height, color) | |
end | |
---Generate image: linear gradient, direction in degrees [0..360], 0=Vertical gradient | |
---@type fun(width:number, height:number, direction:number, start:Color, stop:Color):Image | |
function GenImageGradientLinear(width, height, direction, start, stop) | |
end | |
---Generate image: radial gradient | |
---@type fun(width:number, height:number, density:number, inner:Color, outer:Color):Image | |
function GenImageGradientRadial(width, height, density, inner, outer) | |
end | |
---Generate image: square gradient | |
---@type fun(width:number, height:number, density:number, inner:Color, outer:Color):Image | |
function GenImageGradientSquare(width, height, density, inner, outer) | |
end | |
---Generate image: checked | |
---@type fun(width:number, height:number, checksX:number, checksY:number, col1:Color, col2:Color):Image | |
function GenImageChecked(width, height, checksX, checksY, col1, col2) | |
end | |
---Generate image: white noise | |
---@type fun(width:number, height:number, factor:number):Image | |
function GenImageWhiteNoise(width, height, factor) | |
end | |
---Generate image: perlin noise | |
---@type fun(width:number, height:number, offsetX:number, offsetY:number, scale:number):Image | |
function GenImagePerlinNoise(width, height, offsetX, offsetY, scale) | |
end | |
---Generate image: cellular algorithm, bigger tileSize means bigger cells | |
---@type fun(width:number, height:number, tileSize:number):Image | |
function GenImageCellular(width, height, tileSize) | |
end | |
---Generate image: grayscale image from text data | |
---@type fun(width:number, height:number, text:string):Image | |
function GenImageText(width, height, text) | |
end | |
---Create an image duplicate (useful for transformations) | |
---@type fun(image:Image):Image | |
function ImageCopy(image) | |
end | |
---Create an image from another image piece | |
---@type fun(image:Image, rec:Rectangle):Image | |
function ImageFromImage(image, rec) | |
end | |
---Create an image from text (default font) | |
---@type fun(text:string, fontSize:number, color:Color):Image | |
function ImageText(text, fontSize, color) | |
end | |
---Create an image from text (custom sprite font) | |
---@type fun(font:Font, text:string, fontSize:number, spacing:number, tint:Color):Image | |
function ImageTextEx(font, text, fontSize, spacing, tint) | |
end | |
---Convert image data to desired format | |
---@type fun(image:Image, newFormat:PixelFormat) | |
function ImageFormat(image, newFormat) | |
end | |
---Convert image to POT (power-of-two) | |
---@type fun(image:Image, fill:Color) | |
function ImageToPOT(image, fill) | |
end | |
---Crop an image to a defined rectangle | |
---@type fun(image:Image, crop:Rectangle) | |
function ImageCrop(image, crop) | |
end | |
---Crop image depending on alpha value | |
---@type fun(image:Image, threshold:number) | |
function ImageAlphaCrop(image, threshold) | |
end | |
---Clear alpha channel to desired color | |
---@type fun(image:Image, color:Color, threshold:number) | |
function ImageAlphaClear(image, color, threshold) | |
end | |
---Apply alpha mask to image | |
---@type fun(image:Image, alphaMask:Image) | |
function ImageAlphaMask(image, alphaMask) | |
end | |
---Premultiply alpha channel | |
---@type fun(image:Image) | |
function ImageAlphaPremultiply(image) | |
end | |
---Apply Gaussian blur using a box blur approximation | |
---@type fun(image:Image, blurSize:number) | |
function ImageBlurGaussian(image, blurSize) | |
end | |
---Resize image (Bicubic scaling algorithm) | |
---@type fun(image:Image, newWidth:number, newHeight:number) | |
function ImageResize(image, newWidth, newHeight) | |
end | |
---Resize image (Nearest-Neighbor scaling algorithm) | |
---@type fun(image:Image, newWidth:number, newHeight:number) | |
function ImageResizeNN(image, newWidth, newHeight) | |
end | |
---Resize canvas and fill with color | |
---@type fun(image:Image, newWidth:number, newHeight:number, offsetX:number, offsetY:number, fill:Color) | |
function ImageResizeCanvas(image, newWidth, newHeight, offsetX, offsetY, fill) | |
end | |
---Compute all mipmap levels for a provided image | |
---@type fun(image:Image) | |
function ImageMipmaps(image) | |
end | |
---Dither image data to 16bpp or lower (Floyd-Steinberg dithering) | |
---@type fun(image:Image, rBpp:number, gBpp:number, bBpp:number, aBpp:number) | |
function ImageDither(image, rBpp, gBpp, bBpp, aBpp) | |
end | |
---Flip image vertically | |
---@type fun(image:Image) | |
function ImageFlipVertical(image) | |
end | |
---Flip image horizontally | |
---@type fun(image:Image) | |
function ImageFlipHorizontal(image) | |
end | |
---Rotate image by input angle in degrees (-359 to 359) | |
---@type fun(image:Image, degrees:number) | |
function ImageRotate(image, degrees) | |
end | |
---Rotate image clockwise 90deg | |
---@type fun(image:Image) | |
function ImageRotateCW(image) | |
end | |
---Rotate image counter-clockwise 90deg | |
---@type fun(image:Image) | |
function ImageRotateCCW(image) | |
end | |
---Modify image color: tint | |
---@type fun(image:Image, color:Color) | |
function ImageColorTint(image, color) | |
end | |
---Modify image color: invert | |
---@type fun(image:Image) | |
function ImageColorInvert(image) | |
end | |
---Modify image color: grayscale | |
---@type fun(image:Image) | |
function ImageColorGrayscale(image) | |
end | |
---Modify image color: contrast (-100 to 100) | |
---@type fun(image:Image, contrast:number) | |
function ImageColorContrast(image, contrast) | |
end | |
---Modify image color: brightness (-255 to 255) | |
---@type fun(image:Image, brightness:number) | |
function ImageColorBrightness(image, brightness) | |
end | |
---Modify image color: replace color | |
---@type fun(image:Image, color:Color, replace:Color) | |
function ImageColorReplace(image, color, replace) | |
end | |
---Load color data from image as a Color array (RGBA - 32bit) | |
---@type fun(image:Image):Color | |
function LoadImageColors(image) | |
end | |
---Load colors palette from image as a Color array (RGBA - 32bit) | |
---@type fun(image:Image, maxPaletteSize:number, colorCount:number):Color | |
function LoadImagePalette(image, maxPaletteSize, colorCount) | |
end | |
---Unload color data loaded with LoadImageColors() | |
---@type fun(colors:Color) | |
function UnloadImageColors(colors) | |
end | |
---Unload colors palette loaded with LoadImagePalette() | |
---@type fun(colors:Color) | |
function UnloadImagePalette(colors) | |
end | |
---Get image alpha border rectangle | |
---@type fun(image:Image, threshold:number):Rectangle | |
function GetImageAlphaBorder(image, threshold) | |
end | |
---Get image pixel color at (x, y) position | |
---@type fun(image:Image, x:number, y:number):Color | |
function GetImageColor(image, x, y) | |
end | |
---Clear image background with given color | |
---@type fun(dst:Image, color:Color) | |
function ImageClearBackground(dst, color) | |
end | |
---Draw pixel within an image | |
---@type fun(dst:Image, posX:number, posY:number, color:Color) | |
function ImageDrawPixel(dst, posX, posY, color) | |
end | |
---Draw pixel within an image (Vector version) | |
---@type fun(dst:Image, position:Vector2, color:Color) | |
function ImageDrawPixelV(dst, position, color) | |
end | |
---Draw line within an image | |
---@type fun(dst:Image, startPosX:number, startPosY:number, endPosX:number, endPosY:number, color:Color) | |
function ImageDrawLine(dst, startPosX, startPosY, endPosX, endPosY, color) | |
end | |
---Draw line within an image (Vector version) | |
---@type fun(dst:Image, start:Vector2, stop:Vector2, color:Color) | |
function ImageDrawLineV(dst, start, stop, color) | |
end | |
---Draw a filled circle within an image | |
---@type fun(dst:Image, centerX:number, centerY:number, radius:number, color:Color) | |
function ImageDrawCircle(dst, centerX, centerY, radius, color) | |
end | |
---Draw a filled circle within an image (Vector version) | |
---@type fun(dst:Image, center:Vector2, radius:number, color:Color) | |
function ImageDrawCircleV(dst, center, radius, color) | |
end | |
---Draw circle outline within an image | |
---@type fun(dst:Image, centerX:number, centerY:number, radius:number, color:Color) | |
function ImageDrawCircleLines(dst, centerX, centerY, radius, color) | |
end | |
---Draw circle outline within an image (Vector version) | |
---@type fun(dst:Image, center:Vector2, radius:number, color:Color) | |
function ImageDrawCircleLinesV(dst, center, radius, color) | |
end | |
---Draw rectangle within an image | |
---@type fun(dst:Image, posX:number, posY:number, width:number, height:number, color:Color) | |
function ImageDrawRectangle(dst, posX, posY, width, height, color) | |
end | |
---Draw rectangle within an image (Vector version) | |
---@type fun(dst:Image, position:Vector2, size:Vector2, color:Color) | |
function ImageDrawRectangleV(dst, position, size, color) | |
end | |
---Draw rectangle within an image | |
---@type fun(dst:Image, rec:Rectangle, color:Color) | |
function ImageDrawRectangleRec(dst, rec, color) | |
end | |
---Draw rectangle lines within an image | |
---@type fun(dst:Image, rec:Rectangle, thick:number, color:Color) | |
function ImageDrawRectangleLines(dst, rec, thick, color) | |
end | |
---Draw a source image within a destination image (tnumber applied to source) | |
---@type fun(dst:Image, src:Image, srcRec:Rectangle, dstRec:Rectangle, tint:Color) | |
function ImageDraw(dst, src, srcRec, dstRec, tint) | |
end | |
---Draw text (using default font) within an image (destination) | |
---@type fun(dst:Image, text:string, posX:number, posY:number, fontSize:number, color:Color) | |
function ImageDrawText(dst, text, posX, posY, fontSize, color) | |
end | |
---Draw text (custom sprite font) within an image (destination) | |
---@type fun(dst:Image, font:Font, text:string, position:Vector2, fontSize:number, spacing:number, tint:Color) | |
function ImageDrawTextEx(dst, font, text, position, fontSize, spacing, tint) | |
end | |
---Load texture from file into GPU memory (VRAM) | |
---@type fun(fileName:string):Texture2D | |
function LoadTexture(fileName) | |
end | |
---Load texture from image data | |
---@type fun(image:Image):Texture2D | |
function LoadTextureFromImage(image) | |
end | |
---Load cubemap from image, multiple image cubemap layouts supported | |
---@type fun(image:Image, layout:CubemapLayout):TextureCubemap | |
function LoadTextureCubemap(image, layout) | |
end | |
---Load texture for rendering (framebuffer) | |
---@type fun(width:number, height:number):RenderTexture2D | |
function LoadRenderTexture(width, height) | |
end | |
---Check if a texture is ready | |
---@type fun(texture:Texture2D):boolean | |
function IsTextureReady(texture) | |
end | |
---Unload texture from GPU memory (VRAM) | |
---@type fun(texture:Texture2D) | |
function UnloadTexture(texture) | |
end | |
---Check if a render texture is ready | |
---@type fun(target:RenderTexture2D):boolean | |
function IsRenderTextureReady(target) | |
end | |
---Unload render texture from GPU memory (VRAM) | |
---@type fun(target:RenderTexture2D) | |
function UnloadRenderTexture(target) | |
end | |
---Update GPU texture with new data | |
---@type fun(texture:Texture2D, pixels:userdata) | |
function UpdateTexture(texture, pixels) | |
end | |
---Update GPU texture rectangle with new data | |
---@type fun(texture:Texture2D, rec:Rectangle, pixels:userdata) | |
function UpdateTextureRec(texture, rec, pixels) | |
end | |
---Generate GPU mipmaps for a texture | |
---@type fun(texture:Texture2D) | |
function GenTextureMipmaps(texture) | |
end | |
---Set texture scaling filter mode | |
---@type fun(texture:Texture2D, filter:TextureFilter) | |
function SetTextureFilter(texture, filter) | |
end | |
---Set texture wrapping mode | |
---@type fun(texture:Texture2D, wrap:TextureWrap) | |
function SetTextureWrap(texture, wrap) | |
end | |
---Draw a Texture2D | |
---@type fun(texture:Texture2D, posX:number, posY:number, tint:Color) | |
function DrawTexture(texture, posX, posY, tint) | |
end | |
---Draw a Texture2D with position defined as Vector2 | |
---@type fun(texture:Texture2D, position:Vector2, tint:Color) | |
function DrawTextureV(texture, position, tint) | |
end | |
---Draw a Texture2D with extended parameters | |
---@type fun(texture:Texture2D, position:Vector2, rotation:number, scale:number, tint:Color) | |
function DrawTextureEx(texture, position, rotation, scale, tint) | |
end | |
---Draw a part of a texture defined by a rectangle | |
---@type fun(texture:Texture2D, source:Rectangle, position:Vector2, tint:Color) | |
function DrawTextureRec(texture, source, position, tint) | |
end | |
---Draw a part of a texture defined by a rectangle with 'pro' parameters | |
---@type fun(texture:Texture2D, source:Rectangle, dest:Rectangle, origin:Vector2, rotation:number, tint:Color) | |
function DrawTexturePro(texture, source, dest, origin, rotation, tint) | |
end | |
---Draws a texture (or part of it) that stretches or shrinks nicely | |
---@type fun(texture:Texture2D, nPatchInfo:NPatchInfo, dest:Rectangle, origin:Vector2, rotation:number, tint:Color) | |
function DrawTextureNPatch(texture, nPatchInfo, dest, origin, rotation, tint) | |
end | |
---Get color with alpha applied, alpha goes from 0.0f to 1.0f | |
---@type fun(color:Color, alpha:number):Color | |
function Fade(color, alpha) | |
end | |
---Get hexadecimal value for a Color | |
---@type fun(color:Color):number | |
function ColorToInt(color) | |
end | |
---Get Color normalized as number [0..1] | |
---@type fun(color:Color):Vector4 | |
function ColorNormalize(color) | |
end | |
---Get Color from normalized values [0..1] | |
---@type fun(normalized:Vector4):Color | |
function ColorFromNormalized(normalized) | |
end | |
---Get HSV values for a Color, hue [0..360], saturation/value [0..1] | |
---@type fun(color:Color):Vector3 | |
function ColorToHSV(color) | |
end | |
---Get a Color from HSV values, hue [0..360], saturation/value [0..1] | |
---@type fun(hue:number, saturation:number, value:number):Color | |
function ColorFromHSV(hue, saturation, value) | |
end | |
---Get color multiplied with another color | |
---@type fun(color:Color, tint:Color):Color | |
function ColorTint(color, tint) | |
end | |
---Get color with brightness correction, brightness factor goes from -1.0f to 1.0f | |
---@type fun(color:Color, factor:number):Color | |
function ColorBrightness(color, factor) | |
end | |
---Get color with contrast correction, contrast values between -1.0f and 1.0f | |
---@type fun(color:Color, contrast:number):Color | |
function ColorContrast(color, contrast) | |
end | |
---Get color with alpha applied, alpha goes from 0.0f to 1.0f | |
---@type fun(color:Color, alpha:number):Color | |
function ColorAlpha(color, alpha) | |
end | |
---Get src alpha-blended into dst color with tint | |
---@type fun(dst:Color, src:Color, tint:Color):Color | |
function ColorAlphaBlend(dst, src, tint) | |
end | |
---Get Color structure from hexadecimal value | |
---@type fun(hexValue:number):Color | |
function GetColor(hexValue) | |
end | |
---Get Color from a source pixel pointer of certain format | |
---@type fun(srcPtr:userdata, format:PixelFormat):Color | |
function GetPixelColor(srcPtr, format) | |
end | |
---Set color formatted into destination pixel pointer | |
---@type fun(dstPtr:userdata, color:Color, format:PixelFormat) | |
function SetPixelColor(dstPtr, color, format) | |
end | |
---Get pixel data size in bytes for certain format | |
---@type fun(width:number, height:number, format:PixelFormat):number | |
function GetPixelDataSize(width, height, format) | |
end | |
---Get the default Font | |
---@type fun():Font | |
function GetFontDefault() | |
end | |
---Load font from file into GPU memory (VRAM) | |
---@type fun(fileName:string):Font | |
function LoadFont(fileName) | |
end | |
---Load font from file with extended parameters, use NULL for codepoints and 0 for codepointCount to load the default stringacter set | |
---@type fun(fileName:string, fontSize:number, codepoints:number, codepointCount:number):Font | |
function LoadFontEx(fileName, fontSize, codepoints, codepointCount) | |
end | |
---Load font from Image (XNA style) | |
---@type fun(image:Image, key:Color, firstChar:number):Font | |
function LoadFontFromImage(image, key, firstChar) | |
end | |
---Load font from memory buffer, fileType refers to extension: i.e. '.ttf' | |
---@type fun(fileType:string, fileData:string, dataSize:number, fontSize:number, codepoints:number, codepointCount:number):Font | |
function LoadFontFromMemory(fileType, fileData, dataSize, fontSize, codepoints, codepointCount) | |
end | |
---Check if a font is ready | |
---@type fun(font:Font):boolean | |
function IsFontReady(font) | |
end | |
---Load font data for further use | |
---@type fun(fileData:string, dataSize:number, fontSize:number, codepoints:number, codepointCount:number, type:FontType):GlyphInfo | |
function LoadFontData(fileData, dataSize, fontSize, codepoints, codepointCount, type) | |
end | |
---Generate image font atlas using strings info | |
---@type fun(glyphs:GlyphInfo, glyphRecs:Rectangle, glyphCount:number, fontSize:number, padding:number, packMethod:number):Image | |
function GenImageFontAtlas(glyphs, glyphRecs, glyphCount, fontSize, padding, packMethod) | |
end | |
---Unload font strings info data (RAM) | |
---@type fun(glyphs:GlyphInfo, glyphCount:number) | |
function UnloadFontData(glyphs, glyphCount) | |
end | |
---Unload font from GPU memory (VRAM) | |
---@type fun(font:Font) | |
function UnloadFont(font) | |
end | |
---Export font as code file, returns true on success | |
---@type fun(font:Font, fileName:string):boolean | |
function ExportFontAsCode(font, fileName) | |
end | |
---Draw current FPS | |
---@type fun(posX:number, posY:number) | |
function DrawFPS(posX, posY) | |
end | |
---Draw text (using default font) | |
---@type fun(text:string, posX:number, posY:number, fontSize:number, color:Color) | |
function DrawText(text, posX, posY, fontSize, color) | |
end | |
---Draw text using font and additional parameters | |
---@type fun(font:Font, text:string, position:Vector2, fontSize:number, spacing:number, tint:Color) | |
function DrawTextEx(font, text, position, fontSize, spacing, tint) | |
end | |
---Draw text using Font and pro parameters (rotation) | |
---@type fun(font:Font, text:string, position:Vector2, origin:Vector2, rotation:number, fontSize:number, spacing:number, tint:Color) | |
function DrawTextPro(font, text, position, origin, rotation, fontSize, spacing, tint) | |
end | |
---Draw one stringacter (codepoint) | |
---@type fun(font:Font, codepoint:number, position:Vector2, fontSize:number, tint:Color) | |
function DrawTextCodepoint(font, codepoint, position, fontSize, tint) | |
end | |
---Draw multiple stringacter (codepoint) | |
---@type fun(font:Font, codepoints:number, codepointCount:number, position:Vector2, fontSize:number, spacing:number, tint:Color) | |
function DrawTextCodepoints(font, codepoints, codepointCount, position, fontSize, spacing, tint) | |
end | |
---Set vertical line spacing when drawing with line-breaks | |
---@type fun(spacing:number) | |
function SetTextLineSpacing(spacing) | |
end | |
---Measure string width for default font | |
---@type fun(text:string, fontSize:number):number | |
function MeasureText(text, fontSize) | |
end | |
---Measure string size for Font | |
---@type fun(font:Font, text:string, fontSize:number, spacing:number):Vector2 | |
function MeasureTextEx(font, text, fontSize, spacing) | |
end | |
---Get glyph index position in font for a codeponumber (unicode stringacter), fallback to '?' if not found | |
---@type fun(font:Font, codepoint:number):number | |
function GetGlyphIndex(font, codepoint) | |
end | |
---Get glyph font info data for a codeponumber (unicode stringacter), fallback to '?' if not found | |
---@type fun(font:Font, codepoint:number):GlyphInfo | |
function GetGlyphInfo(font, codepoint) | |
end | |
---Get glyph rectangle in font atlas for a codeponumber (unicode stringacter), fallback to '?' if not found | |
---@type fun(font:Font, codepoint:number):Rectangle | |
function GetGlyphAtlasRec(font, codepoint) | |
end | |
---Load UTF-8 text encoded from codepoints array | |
---@type fun(codepoints:number, length:number):string | |
function LoadUTF8(codepoints, length) | |
end | |
---Unload UTF-8 text encoded from codepoints array | |
---@type fun(text:string) | |
function UnloadUTF8(text) | |
end | |
---Load all codepoints from a UTF-8 text string, codepoints count returned by parameter | |
---@type fun(text:string, count:number):number | |
function LoadCodepoints(text, count) | |
end | |
---Unload codepoints data from memory | |
---@type fun(codepoints:number) | |
function UnloadCodepoints(codepoints) | |
end | |
---Get total number of codepoints in a UTF-8 encoded string | |
---@type fun(text:string):number | |
function GetCodepointCount(text) | |
end | |
---Get next codeponumber in a UTF-8 encoded string, 0x3f('?') is returned on failure | |
---@type fun(text:string, codepointSize:number):number | |
function GetCodepoint(text, codepointSize) | |
end | |
---Get next codeponumber in a UTF-8 encoded string, 0x3f('?') is returned on failure | |
---@type fun(text:string, codepointSize:number):number | |
function GetCodepointNext(text, codepointSize) | |
end | |
---Get previous codeponumber in a UTF-8 encoded string, 0x3f('?') is returned on failure | |
---@type fun(text:string, codepointSize:number):number | |
function GetCodepointPrevious(text, codepointSize) | |
end | |
---Encode one codeponumber into UTF-8 byte array (array length returned as parameter) | |
---@type fun(codepoint:number, utf8Size:number):string | |
function CodepointToUTF8(codepoint, utf8Size) | |
end | |
---Copy one string to another, returns bytes copied | |
---@type fun(dst:string, src:string):number | |
function TextCopy(dst, src) | |
end | |
---Check if two text string are equal | |
---@type fun(text1:string, text2:string):boolean | |
function TextIsEqual(text1, text2) | |
end | |
---Get text length, checks for '\0' ending | |
---@type fun(text:string):number | |
function TextLength(text) | |
end | |
---Text formatting with variables (sprintf() style) | |
---@type fun(text:string, ...):string | |
function TextFormat(text) | |
end | |
---Get a piece of a text string | |
---@type fun(text:string, position:number, length:number):string | |
function TextSubtext(text, position, length) | |
end | |
---Replace text string (WARNING: memory must be freed!) | |
---@type fun(text:string, replace:string, by:string):string | |
function TextReplace(text, replace, by) | |
end | |
---Insert text in a position (WARNING: memory must be freed!) | |
---@type fun(text:string, insert:string, position:number):string | |
function TextInsert(text, insert, position) | |
end | |
---Join text strings with delimiter | |
---@type fun(textList:string, count:number, delimiter:string):string | |
function TextJoin(textList, count, delimiter) | |
end | |
---Split text into multiple strings | |
---@type fun(text:string, delimiter:string, count:number):string | |
function TextSplit(text, delimiter, count) | |
end | |
---Append text at specific position and move cursor! | |
---@type fun(text:string, append:string, position:number) | |
function TextAppend(text, append, position) | |
end | |
---Find first text occurrence within a string | |
---@type fun(text:string, find:string):number | |
function TextFindIndex(text, find) | |
end | |
---Get upper case version of provided string | |
---@type fun(text:string):string | |
function TextToUpper(text) | |
end | |
---Get lower case version of provided string | |
---@type fun(text:string):string | |
function TextToLower(text) | |
end | |
---Get Pascal case notation version of provided string | |
---@type fun(text:string):string | |
function TextToPascal(text) | |
end | |
---Get number value from text (negative values not supported) | |
---@type fun(text:string):number | |
function TextToInteger(text) | |
end | |
---Draw a line in 3D world space | |
---@type fun(startPos:Vector3, endPos:Vector3, color:Color) | |
function DrawLine3D(startPos, endPos, color) | |
end | |
---Draw a ponumber in 3D space, actually a small line | |
---@type fun(position:Vector3, color:Color) | |
function DrawPoint3D(position, color) | |
end | |
---Draw a circle in 3D world space | |
---@type fun(center:Vector3, radius:number, rotationAxis:Vector3, rotationAngle:number, color:Color) | |
function DrawCircle3D(center, radius, rotationAxis, rotationAngle, color) | |
end | |
---Draw a color-filled triangle (vertex in counter-clockwise order!) | |
---@type fun(v1:Vector3, v2:Vector3, v3:Vector3, color:Color) | |
function DrawTriangle3D(v1, v2, v3, color) | |
end | |
---Draw a triangle strip defined by points | |
---@type fun(points:Vector3, pointCount:number, color:Color) | |
function DrawTriangleStrip3D(points, pointCount, color) | |
end | |
---Draw cube | |
---@type fun(position:Vector3, width:number, height:number, length:number, color:Color) | |
function DrawCube(position, width, height, length, color) | |
end | |
---Draw cube (Vector version) | |
---@type fun(position:Vector3, size:Vector3, color:Color) | |
function DrawCubeV(position, size, color) | |
end | |
---Draw cube wires | |
---@type fun(position:Vector3, width:number, height:number, length:number, color:Color) | |
function DrawCubeWires(position, width, height, length, color) | |
end | |
---Draw cube wires (Vector version) | |
---@type fun(position:Vector3, size:Vector3, color:Color) | |
function DrawCubeWiresV(position, size, color) | |
end | |
---Draw sphere | |
---@type fun(centerPos:Vector3, radius:number, color:Color) | |
function DrawSphere(centerPos, radius, color) | |
end | |
---Draw sphere with extended parameters | |
---@type fun(centerPos:Vector3, radius:number, rings:number, slices:number, color:Color) | |
function DrawSphereEx(centerPos, radius, rings, slices, color) | |
end | |
---Draw sphere wires | |
---@type fun(centerPos:Vector3, radius:number, rings:number, slices:number, color:Color) | |
function DrawSphereWires(centerPos, radius, rings, slices, color) | |
end | |
---Draw a cylinder/cone | |
---@type fun(position:Vector3, radiusTop:number, radiusBottom:number, height:number, slices:number, color:Color) | |
function DrawCylinder(position, radiusTop, radiusBottom, height, slices, color) | |
end | |
---Draw a cylinder with base at startPos and top at endPos | |
---@type fun(startPos:Vector3, endPos:Vector3, startRadius:number, endRadius:number, sides:number, color:Color) | |
function DrawCylinderEx(startPos, endPos, startRadius, endRadius, sides, color) | |
end | |
---Draw a cylinder/cone wires | |
---@type fun(position:Vector3, radiusTop:number, radiusBottom:number, height:number, slices:number, color:Color) | |
function DrawCylinderWires(position, radiusTop, radiusBottom, height, slices, color) | |
end | |
---Draw a cylinder wires with base at startPos and top at endPos | |
---@type fun(startPos:Vector3, endPos:Vector3, startRadius:number, endRadius:number, sides:number, color:Color) | |
function DrawCylinderWiresEx(startPos, endPos, startRadius, endRadius, sides, color) | |
end | |
---Draw a capsule with the center of its sphere caps at startPos and endPos | |
---@type fun(startPos:Vector3, endPos:Vector3, radius:number, slices:number, rings:number, color:Color) | |
function DrawCapsule(startPos, endPos, radius, slices, rings, color) | |
end | |
---Draw capsule wireframe with the center of its sphere caps at startPos and endPos | |
---@type fun(startPos:Vector3, endPos:Vector3, radius:number, slices:number, rings:number, color:Color) | |
function DrawCapsuleWires(startPos, endPos, radius, slices, rings, color) | |
end | |
---Draw a plane XZ | |
---@type fun(centerPos:Vector3, size:Vector2, color:Color) | |
function DrawPlane(centerPos, size, color) | |
end | |
---Draw a ray line | |
---@type fun(ray:Ray, color:Color) | |
function DrawRay(ray, color) | |
end | |
---Draw a grid (centered at (0, 0, 0)) | |
---@type fun(slices:number, spacing:number) | |
function DrawGrid(slices, spacing) | |
end | |
---Load model from files (meshes and materials) | |
---@type fun(fileName:string):Model | |
function LoadModel(fileName) | |
end | |
---Load model from generated mesh (default material) | |
---@type fun(mesh:Mesh):Model | |
function LoadModelFromMesh(mesh) | |
end | |
---Check if a model is ready | |
---@type fun(model:Model):boolean | |
function IsModelReady(model) | |
end | |
---Unload model (including meshes) from memory (RAM and/or VRAM) | |
---@type fun(model:Model) | |
function UnloadModel(model) | |
end | |
---Compute model bounding box limits (considers all meshes) | |
---@type fun(model:Model):BoundingBox | |
function GetModelBoundingBox(model) | |
end | |
---Draw a model (with texture if set) | |
---@type fun(model:Model, position:Vector3, scale:number, tint:Color) | |
function DrawModel(model, position, scale, tint) | |
end | |
---Draw a model with extended parameters | |
---@type fun(model:Model, position:Vector3, rotationAxis:Vector3, rotationAngle:number, scale:Vector3, tint:Color) | |
function DrawModelEx(model, position, rotationAxis, rotationAngle, scale, tint) | |
end | |
---Draw a model wires (with texture if set) | |
---@type fun(model:Model, position:Vector3, scale:number, tint:Color) | |
function DrawModelWires(model, position, scale, tint) | |
end | |
---Draw a model wires (with texture if set) with extended parameters | |
---@type fun(model:Model, position:Vector3, rotationAxis:Vector3, rotationAngle:number, scale:Vector3, tint:Color) | |
function DrawModelWiresEx(model, position, rotationAxis, rotationAngle, scale, tint) | |
end | |
---Draw bounding box (wires) | |
---@type fun(box:BoundingBox, color:Color) | |
function DrawBoundingBox(box, color) | |
end | |
---Draw a billboard texture | |
---@type fun(camera:Camera, texture:Texture2D, position:Vector3, size:number, tint:Color) | |
function DrawBillboard(camera, texture, position, size, tint) | |
end | |
---Draw a billboard texture defined by source | |
---@type fun(camera:Camera, texture:Texture2D, source:Rectangle, position:Vector3, size:Vector2, tint:Color) | |
function DrawBillboardRec(camera, texture, source, position, size, tint) | |
end | |
---Draw a billboard texture defined by source and rotation | |
---@type fun(camera:Camera, texture:Texture2D, source:Rectangle, position:Vector3, up:Vector3, size:Vector2, origin:Vector2, rotation:number, tint:Color) | |
function DrawBillboardPro(camera, texture, source, position, up, size, origin, rotation, tint) | |
end | |
---Upload mesh vertex data in GPU and provide VAO/VBO ids | |
---@type fun(mesh:Mesh, dynamic:boolean) | |
function UploadMesh(mesh, dynamic) | |
end | |
---Update mesh vertex data in GPU for a specific buffer index | |
---@type fun(mesh:Mesh, index:number, data:userdata, dataSize:number, offset:number) | |
function UpdateMeshBuffer(mesh, index, data, dataSize, offset) | |
end | |
---Unload mesh data from CPU and GPU | |
---@type fun(mesh:Mesh) | |
function UnloadMesh(mesh) | |
end | |
---Draw a 3d mesh with material and transform | |
---@type fun(mesh:Mesh, material:Material, transform:Matrix) | |
function DrawMesh(mesh, material, transform) | |
end | |
---Draw multiple mesh instances with material and different transforms | |
---@type fun(mesh:Mesh, material:Material, transforms:Matrix, instances:number) | |
function DrawMeshInstanced(mesh, material, transforms, instances) | |
end | |
---Export mesh data to file, returns true on success | |
---@type fun(mesh:Mesh, fileName:string):boolean | |
function ExportMesh(mesh, fileName) | |
end | |
---Compute mesh bounding box limits | |
---@type fun(mesh:Mesh):BoundingBox | |
function GetMeshBoundingBox(mesh) | |
end | |
---Compute mesh tangents | |
---@type fun(mesh:Mesh) | |
function GenMeshTangents(mesh) | |
end | |
---Generate polygonal mesh | |
---@type fun(sides:number, radius:number):Mesh | |
function GenMeshPoly(sides, radius) | |
end | |
---Generate plane mesh (with subdivisions) | |
---@type fun(width:number, length:number, resX:number, resZ:number):Mesh | |
function GenMeshPlane(width, length, resX, resZ) | |
end | |
---Generate cuboid mesh | |
---@type fun(width:number, height:number, length:number):Mesh | |
function GenMeshCube(width, height, length) | |
end | |
---Generate sphere mesh (standard sphere) | |
---@type fun(radius:number, rings:number, slices:number):Mesh | |
function GenMeshSphere(radius, rings, slices) | |
end | |
---Generate half-sphere mesh (no bottom cap) | |
---@type fun(radius:number, rings:number, slices:number):Mesh | |
function GenMeshHemiSphere(radius, rings, slices) | |
end | |
---Generate cylinder mesh | |
---@type fun(radius:number, height:number, slices:number):Mesh | |
function GenMeshCylinder(radius, height, slices) | |
end | |
---Generate cone/pyramid mesh | |
---@type fun(radius:number, height:number, slices:number):Mesh | |
function GenMeshCone(radius, height, slices) | |
end | |
---Generate torus mesh | |
---@type fun(radius:number, size:number, radSeg:number, sides:number):Mesh | |
function GenMeshTorus(radius, size, radSeg, sides) | |
end | |
---Generate trefoil knot mesh | |
---@type fun(radius:number, size:number, radSeg:number, sides:number):Mesh | |
function GenMeshKnot(radius, size, radSeg, sides) | |
end | |
---Generate heightmap mesh from image data | |
---@type fun(heightmap:Image, size:Vector3):Mesh | |
function GenMeshHeightmap(heightmap, size) | |
end | |
---Generate cubes-based map mesh from image data | |
---@type fun(cubicmap:Image, cubeSize:Vector3):Mesh | |
function GenMeshCubicmap(cubicmap, cubeSize) | |
end | |
---Load materials from model file | |
---@type fun(fileName:string, materialCount:number):Material | |
function LoadMaterials(fileName, materialCount) | |
end | |
---Load default material (Supports: DIFFUSE, SPECULAR, NORMAL maps) | |
---@type fun():Material | |
function LoadMaterialDefault() | |
end | |
---Check if a material is ready | |
---@type fun(material:Material):boolean | |
function IsMaterialReady(material) | |
end | |
---Unload material from GPU memory (VRAM) | |
---@type fun(material:Material) | |
function UnloadMaterial(material) | |
end | |
---Set texture for a material map type (MATERIAL_MAP_DIFFUSE, MATERIAL_MAP_SPECULAR...) | |
---@type fun(material:Material, mapType:MaterialMapIndex, texture:Texture2D) | |
function SetMaterialTexture(material, mapType, texture) | |
end | |
---Set material for a mesh | |
---@type fun(model:Model, meshId:number, materialId:number) | |
function SetModelMeshMaterial(model, meshId, materialId) | |
end | |
---Load model animations from file | |
---@type fun(fileName:string, animCount:number):ModelAnimation | |
function LoadModelAnimations(fileName, animCount) | |
end | |
---Update model animation pose | |
---@type fun(model:Model, anim:ModelAnimation, frame:number) | |
function UpdateModelAnimation(model, anim, frame) | |
end | |
---Unload animation data | |
---@type fun(anim:ModelAnimation) | |
function UnloadModelAnimation(anim) | |
end | |
---Unload animation array data | |
---@type fun(animations:ModelAnimation, animCount:number) | |
function UnloadModelAnimations(animations, animCount) | |
end | |
---Check model animation skeleton match | |
---@type fun(model:Model, anim:ModelAnimation):boolean | |
function IsModelAnimationValid(model, anim) | |
end | |
---Check collision between two spheres | |
---@type fun(center1:Vector3, radius1:number, center2:Vector3, radius2:number):boolean | |
function CheckCollisionSpheres(center1, radius1, center2, radius2) | |
end | |
---Check collision between two bounding boxes | |
---@type fun(box1:BoundingBox, box2:BoundingBox):boolean | |
function CheckCollisionBoxes(box1, box2) | |
end | |
---Check collision between box and sphere | |
---@type fun(box:BoundingBox, center:Vector3, radius:number):boolean | |
function CheckCollisionBoxSphere(box, center, radius) | |
end | |
---Get collision info between ray and sphere | |
---@type fun(ray:Ray, center:Vector3, radius:number):RayCollision | |
function GetRayCollisionSphere(ray, center, radius) | |
end | |
---Get collision info between ray and box | |
---@type fun(ray:Ray, box:BoundingBox):RayCollision | |
function GetRayCollisionBox(ray, box) | |
end | |
---Get collision info between ray and mesh | |
---@type fun(ray:Ray, mesh:Mesh, transform:Matrix):RayCollision | |
function GetRayCollisionMesh(ray, mesh, transform) | |
end | |
---Get collision info between ray and triangle | |
---@type fun(ray:Ray, p1:Vector3, p2:Vector3, p3:Vector3):RayCollision | |
function GetRayCollisionTriangle(ray, p1, p2, p3) | |
end | |
---Get collision info between ray and quad | |
---@type fun(ray:Ray, p1:Vector3, p2:Vector3, p3:Vector3, p4:Vector3):RayCollision | |
function GetRayCollisionQuad(ray, p1, p2, p3, p4) | |
end | |
---Initialize audio device and context | |
---@type fun() | |
function InitAudioDevice() | |
end | |
---Close the audio device and context | |
---@type fun() | |
function CloseAudioDevice() | |
end | |
---Check if audio device has been initialized successfully | |
---@type fun():boolean | |
function IsAudioDeviceReady() | |
end | |
---Set master volume (listener) | |
---@type fun(volume:number) | |
function SetMasterVolume(volume) | |
end | |
---Get master volume (listener) | |
---@type fun():number | |
function GetMasterVolume() | |
end | |
---Load wave data from file | |
---@type fun(fileName:string):Wave | |
function LoadWave(fileName) | |
end | |
---Load wave from memory buffer, fileType refers to extension: i.e. '.wav' | |
---@type fun(fileType:string, fileData:string, dataSize:number):Wave | |
function LoadWaveFromMemory(fileType, fileData, dataSize) | |
end | |
---Checks if wave data is ready | |
---@type fun(wave:Wave):boolean | |
function IsWaveReady(wave) | |
end | |
---Load sound from file | |
---@type fun(fileName:string):Sound | |
function LoadSound(fileName) | |
end | |
---Load sound from wave data | |
---@type fun(wave:Wave):Sound | |
function LoadSoundFromWave(wave) | |
end | |
---Create a new sound that shares the same sample data as the source sound, does not own the sound data | |
---@type fun(source:Sound):Sound | |
function LoadSoundAlias(source) | |
end | |
---Checks if a sound is ready | |
---@type fun(sound:Sound):boolean | |
function IsSoundReady(sound) | |
end | |
---Update sound buffer with new data | |
---@type fun(sound:Sound, data:userdata, sampleCount:number) | |
function UpdateSound(sound, data, sampleCount) | |
end | |
---Unload wave data | |
---@type fun(wave:Wave) | |
function UnloadWave(wave) | |
end | |
---Unload sound | |
---@type fun(sound:Sound) | |
function UnloadSound(sound) | |
end | |
---Unload a sound alias (does not deallocate sample data) | |
---@type fun(alias:Sound) | |
function UnloadSoundAlias(alias) | |
end | |
---Export wave data to file, returns true on success | |
---@type fun(wave:Wave, fileName:string):boolean | |
function ExportWave(wave, fileName) | |
end | |
---Export wave sample data to code (.h), returns true on success | |
---@type fun(wave:Wave, fileName:string):boolean | |
function ExportWaveAsCode(wave, fileName) | |
end | |
---Play a sound | |
---@type fun(sound:Sound) | |
function PlaySound(sound) | |
end | |
---Stop playing a sound | |
---@type fun(sound:Sound) | |
function StopSound(sound) | |
end | |
---Pause a sound | |
---@type fun(sound:Sound) | |
function PauseSound(sound) | |
end | |
---Resume a paused sound | |
---@type fun(sound:Sound) | |
function ResumeSound(sound) | |
end | |
---Check if a sound is currently playing | |
---@type fun(sound:Sound):boolean | |
function IsSoundPlaying(sound) | |
end | |
---Set volume for a sound (1.0 is max level) | |
---@type fun(sound:Sound, volume:number) | |
function SetSoundVolume(sound, volume) | |
end | |
---Set pitch for a sound (1.0 is base level) | |
---@type fun(sound:Sound, pitch:number) | |
function SetSoundPitch(sound, pitch) | |
end | |
---Set pan for a sound (0.5 is center) | |
---@type fun(sound:Sound, pan:number) | |
function SetSoundPan(sound, pan) | |
end | |
---Copy a wave to a new wave | |
---@type fun(wave:Wave):Wave | |
function WaveCopy(wave) | |
end | |
---Crop a wave to defined samples range | |
---@type fun(wave:Wave, initSample:number, finalSample:number) | |
function WaveCrop(wave, initSample, finalSample) | |
end | |
---Convert wave data to desired format | |
---@type fun(wave:Wave, sampleRate:number, sampleSize:number, channels:number) | |
function WaveFormat(wave, sampleRate, sampleSize, channels) | |
end | |
---Load samples data from wave as a 32bit number data array | |
---@type fun(wave:Wave):number | |
function LoadWaveSamples(wave) | |
end | |
---Unload samples data loaded with LoadWaveSamples() | |
---@type fun(samples:number) | |
function UnloadWaveSamples(samples) | |
end | |
---Load music stream from file | |
---@type fun(fileName:string):Music | |
function LoadMusicStream(fileName) | |
end | |
---Load music stream from data | |
---@type fun(fileType:string, data:string, dataSize:number):Music | |
function LoadMusicStreamFromMemory(fileType, data, dataSize) | |
end | |
---Checks if a music stream is ready | |
---@type fun(music:Music):boolean | |
function IsMusicReady(music) | |
end | |
---Unload music stream | |
---@type fun(music:Music) | |
function UnloadMusicStream(music) | |
end | |
---Start music playing | |
---@type fun(music:Music) | |
function PlayMusicStream(music) | |
end | |
---Check if music is playing | |
---@type fun(music:Music):boolean | |
function IsMusicStreamPlaying(music) | |
end | |
---Updates buffers for music streaming | |
---@type fun(music:Music) | |
function UpdateMusicStream(music) | |
end | |
---Stop music playing | |
---@type fun(music:Music) | |
function StopMusicStream(music) | |
end | |
---Pause music playing | |
---@type fun(music:Music) | |
function PauseMusicStream(music) | |
end | |
---Resume playing paused music | |
---@type fun(music:Music) | |
function ResumeMusicStream(music) | |
end | |
---Seek music to a position (in seconds) | |
---@type fun(music:Music, position:number) | |
function SeekMusicStream(music, position) | |
end | |
---Set volume for music (1.0 is max level) | |
---@type fun(music:Music, volume:number) | |
function SetMusicVolume(music, volume) | |
end | |
---Set pitch for a music (1.0 is base level) | |
---@type fun(music:Music, pitch:number) | |
function SetMusicPitch(music, pitch) | |
end | |
---Set pan for a music (0.5 is center) | |
---@type fun(music:Music, pan:number) | |
function SetMusicPan(music, pan) | |
end | |
---Get music time length (in seconds) | |
---@type fun(music:Music):number | |
function GetMusicTimeLength(music) | |
end | |
---Get current music time played (in seconds) | |
---@type fun(music:Music):number | |
function GetMusicTimePlayed(music) | |
end | |
---Load audio stream (to stream raw audio pcm data) | |
---@type fun(sampleRate:number, sampleSize:number, channels:number):AudioStream | |
function LoadAudioStream(sampleRate, sampleSize, channels) | |
end | |
---Checks if an audio stream is ready | |
---@type fun(stream:AudioStream):boolean | |
function IsAudioStreamReady(stream) | |
end | |
---Unload audio stream and free memory | |
---@type fun(stream:AudioStream) | |
function UnloadAudioStream(stream) | |
end | |
---Update audio stream buffers with data | |
---@type fun(stream:AudioStream, data:userdata, frameCount:number) | |
function UpdateAudioStream(stream, data, frameCount) | |
end | |
---Check if any audio stream buffers requires refill | |
---@type fun(stream:AudioStream):boolean | |
function IsAudioStreamProcessed(stream) | |
end | |
---Play audio stream | |
---@type fun(stream:AudioStream) | |
function PlayAudioStream(stream) | |
end | |
---Pause audio stream | |
---@type fun(stream:AudioStream) | |
function PauseAudioStream(stream) | |
end | |
---Resume audio stream | |
---@type fun(stream:AudioStream) | |
function ResumeAudioStream(stream) | |
end | |
---Check if audio stream is playing | |
---@type fun(stream:AudioStream):boolean | |
function IsAudioStreamPlaying(stream) | |
end | |
---Stop audio stream | |
---@type fun(stream:AudioStream) | |
function StopAudioStream(stream) | |
end | |
---Set volume for audio stream (1.0 is max level) | |
---@type fun(stream:AudioStream, volume:number) | |
function SetAudioStreamVolume(stream, volume) | |
end | |
---Set pitch for audio stream (1.0 is base level) | |
---@type fun(stream:AudioStream, pitch:number) | |
function SetAudioStreamPitch(stream, pitch) | |
end | |
---Set pan for audio stream (0.5 is centered) | |
---@type fun(stream:AudioStream, pan:number) | |
function SetAudioStreamPan(stream, pan) | |
end | |
---Default size for new audio streams | |
---@type fun(size:number) | |
function SetAudioStreamBufferSizeDefault(size) | |
end | |
---Clamps a value between a minimum and maximum range. | |
---@type fun(value:number, min:number, max:number):number | |
function Clamp(value, min, max) | |
end | |
---Calculate linear interpolation between two numbers | |
---@type fun(start:number, stop:number, amount:number):number | |
function Lerp(start, stop, amount) | |
end | |
---Normalize input value within input range | |
---@type fun(value:number, start:number, stop:number):number | |
function Normalize(value, start, stop) | |
end | |
---Remap input value within input range to output range | |
---@type fun(value:number, inputStart:number, inputEnd:number, outputStart:number, outputEnd:number):number | |
function Remap(value, inputStart, inputEnd, outputStart, outputEnd) | |
end | |
---Wrap input value from min to max | |
---@type fun(value:number, min:number, max:number):number | |
function Wrap(value, min, max) | |
end | |
---Check whether two given numbers are almost equal | |
---@type fun(x:number, y:number):number | |
function FloatEquals(x, y) | |
end | |
---Vector with components value 0.0f | |
---@type fun():Vector2 | |
function Vector2Zero() | |
end | |
---Vector with components value 1.0f | |
---@type fun():Vector2 | |
function Vector2One() | |
end | |
---Add two vectors (v1 + v2) | |
---@type fun(v1:Vector2, v2:Vector2):Vector2 | |
function Vector2Add(v1, v2) | |
end | |
---Add vector and number value | |
---@type fun(v:Vector2, add:number):Vector2 | |
function Vector2AddValue(v, add) | |
end | |
---Subtract two vectors (v1 - v2) | |
---@type fun(v1:Vector2, v2:Vector2):Vector2 | |
function Vector2Subtract(v1, v2) | |
end | |
---Subtract vector by number value | |
---@type fun(v:Vector2, sub:number):Vector2 | |
function Vector2SubtractValue(v, sub) | |
end | |
---Calculate vector length | |
---@type fun(v:Vector2):number | |
function Vector2Length(v) | |
end | |
---Calculate vector square length | |
---@type fun(v:Vector2):number | |
function Vector2LengthSqr(v) | |
end | |
---Calculate two vectors dot product | |
---@type fun(v1:Vector2, v2:Vector2):number | |
function Vector2DotProduct(v1, v2) | |
end | |
---Calculate distance between two vectors | |
---@type fun(v1:Vector2, v2:Vector2):number | |
function Vector2Distance(v1, v2) | |
end | |
---Calculate square distance between two vectors | |
---@type fun(v1:Vector2, v2:Vector2):number | |
function Vector2DistanceSqr(v1, v2) | |
end | |
---Calculate angle from two vectors | |
---@type fun(v1:Vector2, v2:Vector2):number | |
function Vector2Angle(v1, v2) | |
end | |
---Scale vector (multiply by value) | |
---@type fun(v:Vector2, scale:number):Vector2 | |
function Vector2Scale(v, scale) | |
end | |
---Multiply vector by vector | |
---@type fun(v1:Vector2, v2:Vector2):Vector2 | |
function Vector2Multiply(v1, v2) | |
end | |
---Negate vector | |
---@type fun(v:Vector2):Vector2 | |
function Vector2Negate(v) | |
end | |
---Divide vector by vector | |
---@type fun(v1:Vector2, v2:Vector2):Vector2 | |
function Vector2Divide(v1, v2) | |
end | |
---Normalize provided vector | |
---@type fun(v:Vector2):Vector2 | |
function Vector2Normalize(v) | |
end | |
---Transforms a Vector2 by a given Matrix | |
---@type fun(v:Vector2, mat:Matrix):Vector2 | |
function Vector2Transform(v, mat) | |
end | |
---Calculate linear interpolation between two vectors | |
---@type fun(v1:Vector2, v2:Vector2, amount:number):Vector2 | |
function Vector2Lerp(v1, v2, amount) | |
end | |
---Calculate reflected vector to normal | |
---@type fun(v:Vector2, normal:Vector2):Vector2 | |
function Vector2Reflect(v, normal) | |
end | |
---Rotate vector by angle | |
---@type fun(v:Vector2, angle:number):Vector2 | |
function Vector2Rotate(v, angle) | |
end | |
---Move Vector towards target | |
---@type fun(v:Vector2, target:Vector2, maxDistance:number):Vector2 | |
function Vector2MoveTowards(v, target, maxDistance) | |
end | |
---Invert the given vector | |
---@type fun(v:Vector2):Vector2 | |
function Vector2Invert(v) | |
end | |
---Clamp the components of the vector between min and max values specified by the given vectors | |
---@type fun(v:Vector2, min:Vector2, max:Vector2):Vector2 | |
function Vector2Clamp(v, min, max) | |
end | |
---Clamp the magnitude of the vector between two min and max values | |
---@type fun(v:Vector2, min:number, max:number):Vector2 | |
function Vector2ClampValue(v, min, max) | |
end | |
---Check whether two given vectors are almost equal | |
---@type fun(p:Vector2, q:Vector2):number | |
function Vector2Equals(p, q) | |
end | |
---Vector with components value 0.0f | |
---@type fun():Vector3 | |
function Vector3Zero() | |
end | |
---Vector with components value 1.0f | |
---@type fun():Vector3 | |
function Vector3One() | |
end | |
---Add two vectors | |
---@type fun(v1:Vector3, v2:Vector3):Vector3 | |
function Vector3Add(v1, v2) | |
end | |
---Add vector and number value | |
---@type fun(v:Vector3, add:number):Vector3 | |
function Vector3AddValue(v, add) | |
end | |
---Subtract two vectors | |
---@type fun(v1:Vector3, v2:Vector3):Vector3 | |
function Vector3Subtract(v1, v2) | |
end | |
---Subtract vector by number value | |
---@type fun(v:Vector3, sub:number):Vector3 | |
function Vector3SubtractValue(v, sub) | |
end | |
---Multiply vector by scalar | |
---@type fun(v:Vector3, scalar:number):Vector3 | |
function Vector3Scale(v, scalar) | |
end | |
---Multiply vector by vector | |
---@type fun(v1:Vector3, v2:Vector3):Vector3 | |
function Vector3Multiply(v1, v2) | |
end | |
---Calculate two vectors cross product | |
---@type fun(v1:Vector3, v2:Vector3):Vector3 | |
function Vector3CrossProduct(v1, v2) | |
end | |
---Calculate one vector perpendicular vector | |
---@type fun(v:Vector3):Vector3 | |
function Vector3Perpendicular(v) | |
end | |
---Calculate vector length | |
---@type fun(vector:Vector3):number | |
function Vector3Length(Vector3) | |
end | |
---Calculate vector square length | |
---@type fun(vector:Vector3):number | |
function Vector3LengthSqr(vector) | |
end | |
---Calculate two vectors dot product | |
---@type fun(v1:Vector3, v2:Vector3):number | |
function Vector3DotProduct(v1, v2) | |
end | |
---Calculate distance between two vectors | |
---@type fun(v1:Vector3, v2:Vector3):number | |
function Vector3Distance(v1, v2) | |
end | |
---Calculate square distance between two vectors | |
---@type fun(v1:Vector3, v2:Vector3):number | |
function Vector3DistanceSqr(v1, v2) | |
end | |
---Calculate angle between two vectors | |
---@type fun(v1:Vector3, v2:Vector3):number | |
function Vector3Angle(v1, v2) | |
end | |
---Negate provided vector (invert direction) | |
---@type fun(v:Vector3):Vector3 | |
function Vector3Negate(v) | |
end | |
---Divide vector by vector | |
---@type fun(v1:Vector3, v2:Vector3):Vector3 | |
function Vector3Divide(v1, v2) | |
end | |
---Normalize provided vector | |
---@type fun(v:Vector3):Vector3 | |
function Vector3Normalize(v) | |
end | |
---Orthonormalize provided vectors Makes vectors normalized and orthogonal to each other Gram-Schmidt function implementation | |
---@type fun(v1:Vector3, v2:Vector3) | |
function Vector3OrthoNormalize(v1, v2) | |
end | |
---Transforms a Vector3 by a given Matrix | |
---@type fun(v:Vector3, mat:Matrix):Vector3 | |
function Vector3Transform(v, mat) | |
end | |
---Transform a vector by quaternion rotation | |
---@type fun(v:Vector3, q:Quaternion):Vector3 | |
function Vector3RotateByQuaternion(v, q) | |
end | |
---Rotates a vector around an axis | |
---@type fun(v:Vector3, axis:Vector3, angle:number):Vector3 | |
function Vector3RotateByAxisAngle(v, axis, angle) | |
end | |
---Calculate linear interpolation between two vectors | |
---@type fun(v1:Vector3, v2:Vector3, amount:number):Vector3 | |
function Vector3Lerp(v1, v2, amount) | |
end | |
---Calculate reflected vector to normal | |
---@type fun(v:Vector3, normal:Vector3):Vector3 | |
function Vector3Reflect(v, normal) | |
end | |
---Get min value for each pair of components | |
---@type fun(v1:Vector3, v2:Vector3):Vector3 | |
function Vector3Min(v1, v2) | |
end | |
---Get max value for each pair of components | |
---@type fun(v1:Vector3, v2:Vector3):Vector3 | |
function Vector3Max(v1, v2) | |
end | |
---Compute barycenter coordinates (u, v, w) for point p with respect to triangle (a, b, c) NOTE: Assumes P is on the plane of the triangle | |
---@type fun(p:Vector3, a:Vector3, b:Vector3, c:Vector3):Vector3 | |
function Vector3Barycenter(p, a, b, c) | |
end | |
---Projects a Vector3 from screen space into object space NOTE: We are auserdataing calling other raymath functions despite available | |
---@type fun(source:Vector3, projection:Matrix, view:Matrix):Vector3 | |
function Vector3Unproject(source, projection, view) | |
end | |
---Get Vector3 as number array | |
---@type fun(v:Vector3):number | |
function Vector3ToFloatV(v) | |
end | |
---Invert the given vector | |
---@type fun(v:Vector3):Vector3 | |
function Vector3Invert(v) | |
end | |
---Clamp the components of the vector between min and max values specified by the given vectors | |
---@type fun(v:Vector3, min:Vector3, max:Vector3):Vector3 | |
function Vector3Clamp(v, min, max) | |
end | |
---Clamp the magnitude of the vector between two values | |
---@type fun(v:Vector3, min:number, max:number):Vector3 | |
function Vector3ClampValue(v, min, max) | |
end | |
---Check whether two given vectors are almost equal | |
---@type fun(p:Vector3, q:Vector3):number | |
function Vector3Equals(p, q) | |
end | |
---Compute the direction of a refracted ray where v specifies the normalized direction of the incoming ray, n specifies the normalized normal vector of the interface of two optical media, and r specifies the ratio of the refractive index of the medium from where the ray comes to the refractive index of the medium on the other side of the surface | |
---@type fun(v:Vector3, n:Vector3, r:number):Vector3 | |
function Vector3Refract(v, n, r) | |
end | |
---Compute matrix determinant | |
---@type fun(mat:Matrix):number | |
function MatrixDeterminant(mat) | |
end | |
---Get the trace of the matrix (sum of the values anumber the diagonal) | |
---@type fun(mat:Matrix):number | |
function MatrixTrace(mat) | |
end | |
---Transposes provided matrix | |
---@type fun(mat:Matrix):Matrix | |
function MatrixTranspose(mat) | |
end | |
---Invert provided matrix | |
---@type fun(mat:Matrix):Matrix | |
function MatrixInvert(mat) | |
end | |
---Get identity matrix | |
---@type fun():Matrix | |
function MatrixIdentity() | |
end | |
---Add two matrices | |
---@type fun(left:Matrix, right:Matrix):Matrix | |
function MatrixAdd(left, right) | |
end | |
---Subtract two matrices (left - right) | |
---@type fun(left:Matrix, right:Matrix):Matrix | |
function MatrixSubtract(left, right) | |
end | |
---Get two matrix multiplication NOTE: When multiplying matrices... the order matters! | |
---@type fun(left:Matrix, right:Matrix):Matrix | |
function MatrixMultiply(left, right) | |
end | |
---Get translation matrix | |
---@type fun(x:number, y:number, z:number):Matrix | |
function MatrixTranslate(x, y, z) | |
end | |
---Create rotation matrix from axis and angle NOTE: Angle should be provided in radians | |
---@type fun(axis:Vector3, angle:number):Matrix | |
function MatrixRotate(axis, angle) | |
end | |
---Get x-rotation matrix NOTE: Angle must be provided in radians | |
---@type fun(angle:number):Matrix | |
function MatrixRotateX(angle) | |
end | |
---Get y-rotation matrix NOTE: Angle must be provided in radians | |
---@type fun(angle:number):Matrix | |
function MatrixRotateY(angle) | |
end | |
---Get z-rotation matrix NOTE: Angle must be provided in radians | |
---@type fun(angle:number):Matrix | |
function MatrixRotateZ(angle) | |
end | |
---Get xyz-rotation matrix NOTE: Angle must be provided in radians | |
---@type fun(angle:Vector3):Matrix | |
function MatrixRotateXYZ(angle) | |
end | |
---Get zyx-rotation matrix NOTE: Angle must be provided in radians | |
---@type fun(angle:Vector3):Matrix | |
function MatrixRotateZYX(angle) | |
end | |
---Get scaling matrix | |
---@type fun(x:number, y:number, z:number):Matrix | |
function MatrixScale(x, y, z) | |
end | |
---Get perspective projection matrix | |
---@type fun(left:number, right:number, bottom:number, top:number, near:number, far:number):Matrix | |
function MatrixFrustum(left, right, bottom, top, near, far) | |
end | |
---Get perspective projection matrix NOTE: Fovy angle must be provided in radians | |
---@type fun(fovy:number, aspect:number, near:number, far:number):Matrix | |
function MatrixPerspective(fovy, aspect, near, far) | |
end | |
---Get orthographic projection matrix | |
---@type fun(left:number, right:number, bottom:number, top:number, near:number, far:number):Matrix | |
function MatrixOrtho(left, right, bottom, top, near, far) | |
end | |
---Get camera look-at matrix (view matrix) | |
---@type fun(eye:Vector3, target:Vector3, up:Vector3):Matrix | |
function MatrixLookAt(eye, target, up) | |
end | |
---Get number array of matrix data | |
---@type fun(mat:Matrix):number[] | |
function MatrixToFloatV(mat) | |
end | |
---Add two quaternions | |
---@type fun(q1:Quaternion, q2:Quaternion):Quaternion | |
function QuaternionAdd(q1, q2) | |
end | |
---Add quaternion and number value | |
---@type fun(q:Quaternion, add:number):Quaternion | |
function QuaternionAddValue(q, add) | |
end | |
---Subtract two quaternions | |
---@type fun(q1:Quaternion, q2:Quaternion):Quaternion | |
function QuaternionSubtract(q1, q2) | |
end | |
---Subtract quaternion and number value | |
---@type fun(q:Quaternion, sub:number):Quaternion | |
function QuaternionSubtractValue(q, sub) | |
end | |
---Get identity quaternion | |
---@type fun():Quaternion | |
function QuaternionIdentity() | |
end | |
---Computes the length of a quaternion | |
---@type fun(q:Quaternion):number | |
function QuaternionLength(q) | |
end | |
---Normalize provided quaternion | |
---@type fun(q:Quaternion):Quaternion | |
function QuaternionNormalize(q) | |
end | |
---Invert provided quaternion | |
---@type fun(q:Quaternion):Quaternion | |
function QuaternionInvert(q) | |
end | |
---Calculate two quaternion multiplication | |
---@type fun(q1:Quaternion, q2:Quaternion):Quaternion | |
function QuaternionMultiply(q1, q2) | |
end | |
---Scale quaternion by number value | |
---@type fun(q:Quaternion, mul:number):Quaternion | |
function QuaternionScale(q, mul) | |
end | |
---Divide two quaternions | |
---@type fun(q1:Quaternion, q2:Quaternion):Quaternion | |
function QuaternionDivide(q1, q2) | |
end | |
---Calculate linear interpolation between two quaternions | |
---@type fun(q1:Quaternion, q2:Quaternion, amount:number):Quaternion | |
function QuaternionLerp(q1, q2, amount) | |
end | |
---Calculate slerp-optimized interpolation between two quaternions | |
---@type fun(q1:Quaternion, q2:Quaternion, amount:number):Quaternion | |
function QuaternionNlerp(q1, q2, amount) | |
end | |
---Calculates spherical linear interpolation between two quaternions | |
---@type fun(q1:Quaternion, q2:Quaternion, amount:number):Quaternion | |
function QuaternionSlerp(q1, q2, amount) | |
end | |
---Calculate quaternion based on the rotation from one vector to another | |
---@type fun(from:Vector3, to:Vector3):Quaternion | |
function QuaternionFromVector3ToVector3(from, to) | |
end | |
---Get a quaternion for a given rotation matrix | |
---@type fun(mat:Matrix):Quaternion | |
function QuaternionFromMatrix(mat) | |
end | |
---Get a matrix for a given quaternion | |
---@type fun(q:Quaternion):Matrix | |
function QuaternionToMatrix(q) | |
end | |
---Get rotation quaternion for an angle and axis NOTE: Angle must be provided in radians | |
---@type fun(axis:Vector3, angle:number):Quaternion | |
function QuaternionFromAxisAngle(axis, angle) | |
end | |
---Get the rotation angle and axis for a given quaternion | |
---@type fun(q:Quaternion, outAxis:Vector3, outAngle:number) | |
function QuaternionToAxisAngle(q) | |
end | |
---Get the quaternion equivalent to Euler angles NOTE: Rotation order is ZYX | |
---@type fun(pitch:number, yaw:number, roll:number):Quaternion | |
function QuaternionFromEuler(pitch, yaw, roll) | |
end | |
---Get the Euler angles equivalent to quaternion (roll, pitch, yaw) NOTE: Angles are returned in a Vector3 struct in radians | |
---@type fun(q:Quaternion):Vector3 | |
function QuaternionToEuler(q) | |
end | |
---Transform a quaternion given a transformation matrix | |
---@type fun(q:Quaternion, mat:Matrix):Quaternion | |
function QuaternionTransform(q, mat) | |
end | |
---Check whether two given quaternions are almost equal | |
---@type fun(p:Quaternion, q:Quaternion):number | |
function QuaternionEquals(p, q) | |
end | |
---Enable gui controls (global state) | |
---@type fun() | |
function GuiEnable() | |
end | |
---Disable gui controls (global state) | |
---@type fun() | |
function GuiDisable() | |
end | |
---Lock gui controls (global state) | |
---@type fun() | |
function GuiLock() | |
end | |
---Unlock gui controls (global state) | |
---@type fun() | |
function GuiUnlock() | |
end | |
---Check if gui is locked (global state) | |
---@type fun():boolean | |
function GuiIsLocked() | |
end | |
---Set gui controls alpha (global state), alpha goes from 0.0f to 1.0f | |
---@type fun(alpha:number) | |
function GuiSetAlpha(alpha) | |
end | |
---Set gui state (global state) | |
---@type fun(state:GuiState) | |
function GuiSetState(state) | |
end | |
---Get gui state (global state) | |
---@type fun():GuiState | |
function GuiGetState() | |
end | |
---Set gui custom font (global state) | |
---@type fun(font:Font) | |
function GuiSetFont(font) | |
end | |
---Get gui custom font (global state) | |
---@type fun():Font | |
function GuiGetFont() | |
end | |
---Set one style property | |
---@type fun(control:GuiControl, property:GuiProperty, value:number) | |
function GuiSetStyle(control, property, value) | |
end | |
---Get one style property | |
---@type fun(control:GuiControl, property:GuiProperty):number | |
function GuiGetStyle(control, property) | |
end | |
---Load style file over global style variable (.rgs) | |
---@type fun(fileName:string) | |
function GuiLoadStyle(fileName) | |
end | |
---Load style default over global style | |
---@type fun() | |
function GuiLoadStyleDefault() | |
end | |
---Enable gui tooltips (global state) | |
---@type fun() | |
function GuiEnableTooltip() | |
end | |
---Disable gui tooltips (global state) | |
---@type fun() | |
function GuiDisableTooltip() | |
end | |
---Set tooltip string | |
---@type fun(tooltip:string) | |
function GuiSetTooltip(tooltip) | |
end | |
---Get text with icon id prepended (if supported) | |
---@type fun(iconId:GuiIconName, text:string|nil):string | |
function GuiIconText(iconId, text) | |
end | |
---Set default icon drawing size | |
---@type fun(scale:number) | |
function GuiSetIconScale(scale) | |
end | |
---Get raygui icons data ponumberer | |
---@type fun():number | |
function GuiGetIcons() | |
end | |
---Load raygui icons file (.rgi) numbero numberernal icons data | |
---@type fun(fileName:string, loadIconsName:boolean):string | |
function GuiLoadIcons(fileName, loadIconsName) | |
end | |
---Draw icon using pixel size at specified position | |
---@type fun(iconId:GuiIconName, posX:number, posY:number, pixelSize:number, color:Color) | |
function GuiDrawIcon(iconId, posX, posY, pixelSize, color) | |
end | |
---Window Box control, shows a window that can be closed | |
---@type fun(bounds:Rectangle, title:string):boolean | |
function GuiWindowBox(bounds, title) | |
end | |
---Group Box control with text name | |
---@type fun(bounds:Rectangle, text:string):number | |
function GuiGroupBox(bounds, text) | |
end | |
---Line separator control, could contain text | |
---@type fun(bounds:Rectangle, text:string):number | |
function GuiLine(bounds, text) | |
end | |
---Panel control, useful to group controls | |
---@type fun(bounds:Rectangle, text:string|nil):number | |
function GuiPanel(bounds, text) | |
end | |
---Tab Bar control, returns TAB to be closed or -1 | |
---@type fun(bounds:Rectangle, text:string, count:number, active:number):number | |
function GuiTabBar(bounds, text, count, active) | |
end | |
---Scroll Panel control | |
---@type fun(bounds:Rectangle, text:string, content:Rectangle, scroll:Vector2, view:Rectangle):number | |
function GuiScrollPanel(bounds, text, content, scroll, view) | |
end | |
---Label control | |
---@type fun(bounds:Rectangle, text:string):number | |
function GuiLabel(bounds, text) | |
end | |
---Button control, returns true when clicked | |
---@type fun(bounds:Rectangle, text:string):boolean | |
function GuiButton(bounds, text) | |
end | |
---Label button control, returns true when clicked | |
---@type fun(bounds:Rectangle, text:string):boolean | |
function GuiLabelButton(bounds, text) | |
end | |
---Toggle Button control | |
---@type fun(bounds:Rectangle, text:string, active:boolean):number | |
function GuiToggle(bounds, text, active) | |
end | |
---Toggle Group control | |
---@type fun(bounds:Rectangle, text:string, active:number):number | |
function GuiToggleGroup(bounds, text, active) | |
end | |
---Toggle Slider control | |
---@type fun(bounds:Rectangle, text:string, active:number):number | |
function GuiToggleSlider(bounds, text, active) | |
end | |
---Check Box control, returns true when active | |
---@type fun(bounds:Rectangle, text:string, checked:boolean):number | |
function GuiCheckBox(bounds, text, checked) | |
end | |
---Combo Box control | |
---@type fun(bounds:Rectangle, text:string, active:number):number | |
function GuiComboBox(bounds, text, active) | |
end | |
---Dropdown Box control | |
---@type fun(bounds:Rectangle, text:string, active:number, editMode:boolean):number | |
function GuiDropdownBox(bounds, text, active, editMode) | |
end | |
---Spinner control | |
---@type fun(bounds:Rectangle, text:string, value:number, minValue:number, maxValue:number, editMode:boolean):number | |
function GuiSpinner(bounds, text, value, minValue, maxValue, editMode) | |
end | |
---Value Box control, updates input text with numbers | |
---@type fun(bounds:Rectangle, text:string, value:number, minValue:number, maxValue:number, editMode:boolean):number | |
function GuiValueBox(bounds, text, value, minValue, maxValue, editMode) | |
end | |
---Value box control for values:number | |
---@type fun(bounds:Rectangle, text:string, textValue:string, value:number, editMode:boolean):number | |
function GuiValueBoxFloat(bounds, text, textValue, value, editMode) | |
end | |
---Text Box control, updates input text | |
---@type fun(bounds:Rectangle, text:string, textSize:number, editMode:boolean):number | |
function GuiTextBox(bounds, text, textSize, editMode) | |
end | |
---Slider control | |
---@type fun(bounds:Rectangle, textLeft:string, textRight:string, value:number, minValue:number, maxValue:number):number | |
function GuiSlider(bounds, textLeft, textRight, value, minValue, maxValue) | |
end | |
---Slider Bar control | |
---@type fun(bounds:Rectangle, textLeft:string, textRight:string, value:number, minValue:number, maxValue:number):number | |
function GuiSliderBar(bounds, textLeft, textRight, value, minValue, maxValue) | |
end | |
---Progress Bar control | |
---@type fun(bounds:Rectangle, textLeft:string, textRight:string, value:number, minValue:number, maxValue:number):number | |
function GuiProgressBar(bounds, textLeft, textRight, value, minValue, maxValue) | |
end | |
---Status Bar control, shows info text | |
---@type fun(bounds:Rectangle, text:string):number | |
function GuiStatusBar(bounds, text) | |
end | |
---Dummy control for placeholders | |
---@type fun(bounds:Rectangle, text:string):number | |
function GuiDummyRec(bounds, text) | |
end | |
---Grid control | |
---@type fun(bounds:Rectangle, text:string, spacing:number, subdivs:number, mouseCell:Vector2):number | |
function GuiGrid(bounds, text, spacing, subdivs, mouseCell) | |
end | |
---List View control | |
---@type fun(bounds:Rectangle, text:string, scrollIndex:number, active:number):number | |
function GuiListView(bounds, text, scrollIndex, active) | |
end | |
---List View with extended parameters | |
---@type fun(bounds:Rectangle, text:string, count:number, scrollIndex:number, active:number, focus:number):number | |
function GuiListViewEx(bounds, text, count, scrollIndex, active, focus) | |
end | |
---Message Box control, displays a message | |
---@type fun(bounds:Rectangle, title:string, message:string, buttons:string):number | |
function GuiMessageBox(bounds, title, message, buttons) | |
end | |
---Text Input Box control, ask for text, supports secret | |
---@type fun(bounds:Rectangle, title:string, message:string, buttons:string, text:string, textMaxSize:number, secretViewActive:boolean):number | |
function GuiTextInputBox(bounds, title, message, buttons, text, textMaxSize, secretViewActive) | |
end | |
---Color Picker control (multiple color controls) | |
---@type fun(bounds:Rectangle, text:string, color:Color):number | |
function GuiColorPicker(bounds, text, color) | |
end | |
---Color Panel control | |
---@type fun(bounds:Rectangle, text:string, color:Color):number | |
function GuiColorPanel(bounds, text, color) | |
end | |
---Color Bar Alpha control | |
---@type fun(bounds:Rectangle, text:string, alpha:number):number | |
function GuiColorBarAlpha(bounds, text, alpha) | |
end | |
---Color Bar Hue control | |
---@type fun(bounds:Rectangle, text:string, value:number):number | |
function GuiColorBarHue(bounds, text, value) | |
end | |
---Color Picker control that as conversion to RGB on each call (multiple color controls) | |
---@type fun(bounds:Rectangle, text:string, colorHsv:Vector3):number | |
function GuiColorPickerHSV(bounds, text, colorHsv) | |
end | |
---Color Panel control that updates Hue-Saturation-Value color value, used by GuiColorPickerHSV() | |
---@type fun(bounds:Rectangle, text:string, colorHsv:Vector3):number | |
function GuiColorPanelHSV(bounds, text, colorHsv) | |
end |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment