@ -4,8 +4,8 @@
/ / Window - related functions
RLAPI void InitWindow ( int width , int height , const char * title ) ; / / Initialize window and OpenGL context
RLAPI bool WindowShouldClose ( void ) ; / / Check if KEY_ESCAPE pressed or Close icon pressed
RLAPI void CloseWindow ( void ) ; / / Close window and unload OpenGL context
RLAPI bool WindowShouldClose ( void ) ; / / Check if application should close ( KEY_ESCAPE pressed or windows close icon clicked )
RLAPI bool IsWindowReady ( void ) ; / / Check if window has been initialized successfully
RLAPI bool IsWindowFullscreen ( void ) ; / / Check if window is currently fullscreen
RLAPI bool IsWindowHidden ( void ) ; / / Check if window is currently hidden ( only PLATFORM_DESKTOP )
@ -17,17 +17,20 @@ RLAPI bool IsWindowState(unsigned int flag); // Check if on
RLAPI void SetWindowState ( unsigned int flags ) ; / / Set window configuration state using flags ( only PLATFORM_DESKTOP )
RLAPI void ClearWindowState ( unsigned int flags ) ; / / Clear window configuration state flags
RLAPI void ToggleFullscreen ( void ) ; / / Toggle window state : fullscreen / windowed ( only PLATFORM_DESKTOP )
RLAPI void ToggleBorderlessWindowed ( void ) ; / / Toggle window state : borderless windowed ( only PLATFORM_DESKTOP )
RLAPI void MaximizeWindow ( void ) ; / / Set window state : maximized , if resizable ( only PLATFORM_DESKTOP )
RLAPI void MinimizeWindow ( void ) ; / / Set window state : minimized , if resizable ( only PLATFORM_DESKTOP )
RLAPI void RestoreWindow ( void ) ; / / Set window state : not minimized / maximized ( only PLATFORM_DESKTOP )
RLAPI void SetWindowIcon ( Image image ) ; / / Set icon for window ( single image , RGBA 32 bit , only PLATFORM_DESKTOP )
RLAPI void SetWindowIcons ( Image * images , int count ) ; / / Set icon for window ( multiple images , RGBA 32 bit , only PLATFORM_DESKTOP )
RLAPI void SetWindowTitle ( const char * title ) ; / / Set title for window ( only PLATFORM_DESKTOP )
RLAPI void SetWindowTitle ( const char * title ) ; / / Set title for window ( only PLATFORM_DESKTOP and PLATFORM_WEB )
RLAPI void SetWindowPosition ( int x , int y ) ; / / Set window position on screen ( only PLATFORM_DESKTOP )
RLAPI void SetWindowMonitor ( int monitor ) ; / / Set monitor for the current window ( fullscreen mode )
RLAPI void SetWindowMonitor ( int monitor ) ; / / Set monitor for the current window
RLAPI void SetWindowMinSize ( int width , int height ) ; / / Set window minimum dimensions ( for FLAG_WINDOW_RESIZABLE )
RLAPI void SetWindowMaxSize ( int width , int height ) ; / / Set window maximum dimensions ( for FLAG_WINDOW_RESIZABLE )
RLAPI void SetWindowSize ( int width , int height ) ; / / Set window dimensions
RLAPI void SetWindowOpacity ( float opacity ) ; / / Set window opacity [ 0.0f . .1 .0f ] ( only PLATFORM_DESKTOP )
RLAPI void SetWindowFocused ( void ) ; / / Set window focused ( only PLATFORM_DESKTOP )
RLAPI void * GetWindowHandle ( void ) ; / / Get native window handle
RLAPI int GetScreenWidth ( void ) ; / / Get current screen width
RLAPI int GetScreenHeight ( void ) ; / / Get current screen height
@ -43,20 +46,12 @@ RLAPI int GetMonitorPhysicalHeight(int monitor); // Get specifi
RLAPI int GetMonitorRefreshRate ( int monitor ) ; / / Get specified monitor refresh rate
RLAPI Vector2 GetWindowPosition ( void ) ; / / Get window position XY on monitor
RLAPI Vector2 GetWindowScaleDPI ( void ) ; / / Get window scale DPI factor
RLAPI const char * GetMonitorName ( int monitor ) ; / / Get the human - readable , UTF - 8 encoded name of the primary monitor
RLAPI const char * GetMonitorName ( int monitor ) ; / / Get the human - readable , UTF - 8 encoded name of the specified monitor
RLAPI void SetClipboardText ( const char * text ) ; / / Set clipboard text content
RLAPI const char * GetClipboardText ( void ) ; / / Get clipboard text content
RLAPI void EnableEventWaiting ( void ) ; / / Enable waiting for events on EndDrawing ( ) , no automatic event polling
RLAPI void DisableEventWaiting ( void ) ; / / Disable waiting for events on EndDrawing ( ) , automatic events polling
/ / Custom frame control functions
/ / NOTE : Those functions are intended for advance users that want full control over the frame processing
/ / By default EndDrawing ( ) does this job : draws everything + SwapScreenBuffer ( ) + manage frame timing + PollInputEvents ( )
/ / To avoid that behaviour and control frame processes manually , enable in config . h : SUPPORT_CUSTOM_FRAME_CONTROL
RLAPI void SwapScreenBuffer ( void ) ; / / Swap back buffer with front buffer ( screen drawing )
RLAPI void PollInputEvents ( void ) ; / / Register all input events
RLAPI void WaitTime ( double seconds ) ; / / Wait for some time ( halt program execution )
/ / Cursor - related functions
RLAPI void ShowCursor ( void ) ; / / Shows cursor
RLAPI void HideCursor ( void ) ; / / Hides cursor
@ -112,15 +107,25 @@ RLAPI Vector2 GetWorldToScreen2D(Vector2 position, Camera2D camera); // Get the
/ / Timing - related functions
RLAPI void SetTargetFPS ( int fps ) ; / / Set target FPS ( maximum )
RLAPI int GetFPS ( void ) ; / / Get current FPS
RLAPI float GetFrameTime ( void ) ; / / Get time in seconds for last frame drawn ( delta time )
RLAPI double GetTime ( void ) ; / / Get elapsed time in seconds since InitWindow ( )
RLAPI int GetFPS ( void ) ; / / Get current FPS
/ / Misc . functions
RLAPI int GetRandomValue ( int min , int max ) ; / / Get a random value between min and max ( both included )
/ / Custom frame control functions
RLAPI void SwapScreenBuffer ( void ) ; / / Swap back buffer with front buffer ( screen drawing )
RLAPI void PollInputEvents ( void ) ; / / Register all input events
RLAPI void WaitTime ( double seconds ) ; / / Wait for some time ( halt program execution )
/ / Random values generation functions
RLAPI void SetRandomSeed ( unsigned int seed ) ; / / Set the seed for the random number generator
RLAPI int GetRandomValue ( int min , int max ) ; / / Get a random value between min and max ( both included )
RLAPI int * LoadRandomSequence ( unsigned int count , int min , int max ) ; / / Load random values sequence , no values repeated
RLAPI void UnloadRandomSequence ( int * sequence ) ; / / Unload random values sequence
/ / Misc . functions
RLAPI void TakeScreenshot ( const char * fileName ) ; / / Takes a screenshot of current screen ( filename extension defines format )
RLAPI void SetConfigFlags ( unsigned int flags ) ; / / Setup init configuration flags ( view FLAGS )
RLAPI void OpenURL ( const char * url ) ; / / Open URL with default system browser ( if available )
RLAPI void TraceLog ( int logLevel , const char * text , . . . ) ; / / Show trace log messages ( LOG_DEBUG , LOG_INFO , LOG_WARNING , LOG_ERROR . . . )
RLAPI void SetTraceLogLevel ( int logLevel ) ; / / Set the current threshold ( minimum ) log level
@ -128,8 +133,6 @@ RLAPI void *MemAlloc(unsigned int size); // Internal me
RLAPI void * MemRealloc ( void * ptr , unsigned int size ) ; / / Internal memory reallocator
RLAPI void MemFree ( void * ptr ) ; / / Internal memory free
RLAPI void OpenURL ( const char * url ) ; / / Open URL with default system browser ( if available )
/ / Set custom callbacks
/ / WARNING : Callbacks setup is intended for advance users
RLAPI void SetTraceLogCallback ( TraceLogCallback callback ) ; / / Set custom trace log
@ -139,13 +142,15 @@ RLAPI void SetLoadFileTextCallback(LoadFileTextCallback callback); // Set custom
RLAPI void SetSaveFileTextCallback ( SaveFileTextCallback callback ) ; / / Set custom file text data saver
/ / Files management functions
RLAPI unsigned char * LoadFileData ( const char * fileName , unsigned int * bytesRead ) ; / / Load file data as byte array ( read )
RLAPI unsigned char * LoadFileData ( const char * fileName , int * dataSize ) ; / / Load file data as byte array ( read )
RLAPI void UnloadFileData ( unsigned char * data ) ; / / Unload file data allocated by LoadFileData ( )
RLAPI bool SaveFileData ( const char * fileName , void * data , unsigned int bytesToWrit e) ; / / Save data to file from byte array ( write ) , returns true on success
RLAPI bool ExportDataAsCode ( const unsigned char * data , unsigned int s ize, const char * fileName ) ; / / Export data to code ( . h ) , returns true on success
RLAPI bool SaveFileData ( const char * fileName , void * data , int dataSiz e) ; / / Save data to file from byte array ( write ) , returns true on success
RLAPI bool ExportDataAsCode ( const unsigned char * data , int dataS ize, const char * fileName ) ; / / Export data to code ( . h ) , returns true on success
RLAPI char * LoadFileText ( const char * fileName ) ; / / Load text data from file ( read ) , returns a ' \0 ' terminated string
RLAPI void UnloadFileText ( char * text ) ; / / Unload file text data allocated by LoadFileText ( )
RLAPI bool SaveFileText ( const char * fileName , char * text ) ; / / Save text data to file ( write ) , string must be ' \0 ' terminated , returns true on success
/ / File system functions
RLAPI bool FileExists ( const char * fileName ) ; / / Check if file exists
RLAPI bool DirectoryExists ( const char * dirPath ) ; / / Check if a directory path exists
RLAPI bool IsFileExtension ( const char * fileName , const char * ext ) ; / / Check file extension ( including point : . png , . wav )
@ -156,7 +161,7 @@ RLAPI const char *GetFileNameWithoutExt(const char *filePath); // Get filenam
RLAPI const char * GetDirectoryPath ( const char * filePath ) ; / / Get full path for a given fileName with path ( uses static string )
RLAPI const char * GetPrevDirectoryPath ( const char * dirPath ) ; / / Get previous directory path for a given path ( uses static string )
RLAPI const char * GetWorkingDirectory ( void ) ; / / Get current working directory ( uses static string )
RLAPI const char * GetApplicationDirectory ( void ) ; / / Get the directory k">i f the running application ( uses static string )
RLAPI const char * GetApplicationDirectory ( void ) ; / / Get the directory n">o f the running application ( uses static string )
RLAPI bool ChangeDirectory ( const char * dir ) ; / / Change working directory , return true on success
RLAPI bool IsPathFile ( const char * path ) ; / / Check if a given path is a file or a directory
RLAPI FilePathList LoadDirectoryFiles ( const char * dirPath ) ; / / Load directory filepaths
@ -173,18 +178,29 @@ RLAPI unsigned char *DecompressData(const unsigned char *compData, int compDataS
RLAPI char * EncodeDataBase64 ( const unsigned char * data , int dataSize , int * outputSize ) ; / / Encode data to Base64 string , memory must be MemFree ( )
RLAPI unsigned char * DecodeDataBase64 ( const unsigned char * data , int * outputSize ) ; / / Decode Base64 string data , memory must be MemFree ( )
/ / Automation events functionality
RLAPI AutomationEventList LoadAutomationEventList ( const char * fileName ) ; / / Load automation events list from file , NULL for empty list , capacity = MAX_AUTOMATION_EVENTS
RLAPI void UnloadAutomationEventList ( AutomationEventList * list ) ; / / Unload automation events list from file
RLAPI bool ExportAutomationEventList ( AutomationEventList list , const char * fileName ) ; / / Export automation events list as text file
RLAPI void SetAutomationEventList ( AutomationEventList * list ) ; / / Set automation event list to record to
RLAPI void SetAutomationEventBaseFrame ( int frame ) ; / / Set automation event internal base frame to start recording
RLAPI void StartAutomationEventRecording ( void ) ; / / Start recording automation events ( AutomationEventList must be set )
RLAPI void StopAutomationEventRecording ( void ) ; / / Stop recording automation events
RLAPI void PlayAutomationEvent ( AutomationEvent event ) ; / / Play a recorded automation event
/ / - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
/ / Input Handling Functions ( Module : core )
/ / - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
/ / Input - related functions : keyboard
RLAPI bool IsKeyPressed ( int key ) ; / / Check if a key has been pressed once
RLAPI bool IsKeyPressedRepeat ( int key ) ; / / Check if a key has been pressed again ( Only PLATFORM_DESKTOP )
RLAPI bool IsKeyDown ( int key ) ; / / Check if a key is being pressed
RLAPI bool IsKeyReleased ( int key ) ; / / Check if a key has been released once
RLAPI bool IsKeyUp ( int key ) ; / / Check if a key is NOT being pressed
RLAPI void SetExitKey ( int key ) ; / / Set a custom key to exit program ( default is ESC )
RLAPI int GetKeyPressed ( void ) ; / / Get key pressed ( keycode ) , call it multiple times for keys queued , returns 0 when the queue is empty
RLAPI int GetCharPressed ( void ) ; / / Get char pressed ( unicode ) , call it multiple times for chars queued , returns 0 when the queue is empty
RLAPI void SetExitKey ( int key ) ; / / Set a custom key to exit program ( default is ESC )
/ / Input - related functions : gamepads
RLAPI bool IsGamepadAvailable ( int gamepad ) ; / / Check if a gamepad is available
@ -225,7 +241,7 @@ RLAPI int GetTouchPointCount(void); // Get number of t
/ / Gestures and Touch Handling Functions ( Module : rgestures )
/ / - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
RLAPI void SetGesturesEnabled ( unsigned int flags ) ; / / Enable a set of gestures using flags
RLAPI bool IsGestureDetected ( int gesture ) ; / / Check if a gesture have been detected
RLAPI bool IsGestureDetected ( unsigned int gesture ) ; / / Check if a gesture have been detected
RLAPI int GetGestureDetected ( void ) ; / / Get latest detected gesture
RLAPI float GetGestureHoldDuration ( void ) ; / / Get gesture hold time in milliseconds
RLAPI Vector2 GetGestureDragVector ( void ) ; / / Get gesture drag vector
@ -251,18 +267,17 @@ RLAPI void SetShapesTexture(Texture2D texture, Rectangle source); // Set t
RLAPI void DrawPixel ( int posX , int posY , Color color ) ; / / Draw a pixel
RLAPI void DrawPixelV ( Vector2 position , Color color ) ; / / Draw a pixel ( Vector version )
RLAPI void DrawLine ( int startPosX , int startPosY , int endPosX , int endPosY , Color color ) ; / / Draw a line
RLAPI void DrawLineV ( Vector2 startPos , Vector2 endPos , Color color ) ; / / Draw a line ( Vector version )
RLAPI void DrawLineEx ( Vector2 startPos , Vector2 endPos , float thick , Color color ) ; / / Draw a line defining thickness
RLAPI void DrawLineBezier ( Vector2 startPos , Vector2 endPos , float thick , Color color ) ; / / Draw a line using cubic - bezier curves in - out
RLAPI void DrawLineBezierQuad ( Vector2 startPos , Vector2 endPos , Vector2 controlPos , float thick , Color color ) ; / / Draw line using quadratic bezier curves with a control point
RLAPI void DrawLineBezierCubic ( Vector2 startPos , Vector2 endPos , Vector2 startControlPos , Vector2 endControlPos , float thick , Color color ) ; / / Draw line using cubic bezier curves with 2 control points
RLAPI void DrawLineStrip ( Vector2 * points , int pointCount , Color color ) ; / / Draw lines sequence
RLAPI void DrawLineV ( Vector2 startPos , Vector2 endPos , Color color ) ; / / Draw a line ( using gl lines )
RLAPI void DrawLineEx ( Vector2 startPos , Vector2 endPos , float thick , Color color ) ; / / Draw a line ( using triangles / quads )
RLAPI void DrawLineStrip ( Vector2 * points , int pointCount , Color color ) ; / / Draw lines sequence ( using gl lines )
RLAPI void DrawLineBezier ( Vector2 startPos , Vector2 endPos , float thick , Color color ) ; / / Draw line segment cubic - bezier in - out interpolation
RLAPI void DrawCircle ( int centerX , int centerY , float radius , Color color ) ; / / Draw a color - filled circle
RLAPI void DrawCircleSector ( Vector2 center , float radius , float startAngle , float endAngle , int segments , Color color ) ; / / Draw a piece of a circle
RLAPI void DrawCircleSectorLines ( Vector2 center , float radius , float startAngle , float endAngle , int segments , Color color ) ; / / Draw circle sector outline
RLAPI void DrawCircleGradient ( int centerX , int centerY , float radius , Color color1 , Color color2 ) ; / / Draw a gradient - filled circle
RLAPI void DrawCircleV ( Vector2 center , float radius , Color color ) ; / / Draw a color - filled circle ( Vector version )
RLAPI void DrawCircleLines ( int centerX , int centerY , float radius , Color color ) ; / / Draw circle outline
RLAPI void DrawCircleLinesV ( Vector2 center , float radius , Color color ) ; / / Draw circle outline ( Vector version )
RLAPI void DrawEllipse ( int centerX , int centerY , float radiusH , float radiusV , Color color ) ; / / Draw ellipse
RLAPI void DrawEllipseLines ( int centerX , int centerY , float radiusH , float radiusV , Color color ) ; / / Draw ellipse outline
RLAPI void DrawRing ( Vector2 center , float innerRadius , float outerRadius , float startAngle , float endAngle , int segments , Color color ) ; / / Draw ring
@ -286,6 +301,25 @@ RLAPI void DrawPoly(Vector2 center, int sides, float radius, float rotation, Col
RLAPI void DrawPolyLines ( Vector2 center , int sides , float radius , float rotation , Color color ) ; / / Draw a polygon outline of n sides
RLAPI void DrawPolyLinesEx ( Vector2 center , int sides , float radius , float rotation , float lineThick , Color color ) ; / / Draw a polygon outline of n sides with extended parameters
/ / Splines drawing functions
RLAPI void DrawSplineLinear ( Vector2 * points , int pointCount , float thick , Color color ) ; / / Draw spline : Linear , minimum 2 points
RLAPI void DrawSplineBasis ( Vector2 * points , int pointCount , float thick , Color color ) ; / / Draw spline : B - Spline , minimum 4 points
RLAPI void DrawSplineCatmullRom ( Vector2 * points , int pointCount , float thick , Color color ) ; / / Draw spline : Catmull - Rom , minimum 4 points
RLAPI void DrawSplineBezierQuadratic ( Vector2 * points , int pointCount , float thick , Color color ) ; / / Draw spline : Quadratic Bezier , minimum 3 points ( 1 control point ) : [ p1 , c2 , p3 , c4 . . . ]
RLAPI void DrawSplineBezierCubic ( Vector2 * points , int pointCount , float thick , Color color ) ; / / Draw spline : Cubic Bezier , minimum 4 points ( 2 control points ) : [ p1 , c2 , c3 , p4 , c5 , c6 . . . ]
RLAPI void DrawSplineSegmentLinear ( Vector2 p1 , Vector2 p2 , float thick , Color color ) ; / / Draw spline segment : Linear , 2 points
RLAPI void DrawSplineSegmentBasis ( Vector2 p1 , Vector2 p2 , Vector2 p3 , Vector2 p4 , float thick , Color color ) ; / / Draw spline segment : B - Spline , 4 points
RLAPI void DrawSplineSegmentCatmullRom ( Vector2 p1 , Vector2 p2 , Vector2 p3 , Vector2 p4 , float thick , Color color ) ; / / Draw spline segment : Catmull - Rom , 4 points
RLAPI void DrawSplineSegmentBezierQuadratic ( Vector2 p1 , Vector2 c2 , Vector2 p3 , float thick , Color color ) ; / / Draw spline segment : Quadratic Bezier , 2 points , 1 control point
RLAPI void DrawSplineSegmentBezierCubic ( Vector2 p1 , Vector2 c2 , Vector2 c3 , Vector2 p4 , float thick , Color color ) ; / / Draw spline segment : Cubic Bezier , 2 points , 2 control points
/ / Spline segment point evaluation functions , for a given t [ 0.0f . . 1.0f ]
RLAPI Vector2 GetSplinePointLinear ( Vector2 startPos , Vector2 endPos , float t ) ; / / Get ( evaluate ) spline point : Linear
RLAPI Vector2 GetSplinePointBasis ( Vector2 p1 , Vector2 p2 , Vector2 p3 , Vector2 p4 , float t ) ; / / Get ( evaluate ) spline point : B - Spline
RLAPI Vector2 GetSplinePointCatmullRom ( Vector2 p1 , Vector2 p2 , Vector2 p3 , Vector2 p4 , float t ) ; / / Get ( evaluate ) spline point : Catmull - Rom
RLAPI Vector2 GetSplinePointBezierQuad ( Vector2 p1 , Vector2 c2 , Vector2 p3 , float t ) ; / / Get ( evaluate ) spline point : Quadratic Bezier
RLAPI Vector2 GetSplinePointBezierCubic ( Vector2 p1 , Vector2 c2 , Vector2 c3 , Vector2 p4 , float t ) ; / / Get ( evaluate ) spline point : Cubic Bezier
/ / Basic shapes collision detection functions
RLAPI bool CheckCollisionRecs ( Rectangle rec1 , Rectangle rec2 ) ; / / Check collision between two rectangles
RLAPI bool CheckCollisionCircles ( Vector2 center1 , float radius1 , Vector2 center2 , float radius2 ) ; / / Check collision between two circles
@ -306,6 +340,7 @@ RLAPI Rectangle GetCollisionRec(Rectangle rec1, Rectangle rec2);
/ / NOTE : These functions do not require GPU access
RLAPI Image LoadImage ( const char * fileName ) ; / / Load image from file into CPU memory ( RAM )
RLAPI Image LoadImageRaw ( const char * fileName , int width , int height , int format , int headerSize ) ; / / Load image from RAW file data
RLAPI Image LoadImageSvg ( const char * fileNameOrString , int width , int height ) ; / / Load image from SVG file data or string with specified size
RLAPI Image LoadImageAnim ( const char * fileName , int * frames ) ; / / Load image sequence from file ( frames appended to image . data )
RLAPI Image LoadImageFromMemory ( const char * fileType , const unsigned char * fileData , int dataSize ) ; / / Load image from memory buffer , fileType refers to extension : i . e . ' . png '
RLAPI Image LoadImageFromTexture ( Texture2D texture ) ; / / Load image from GPU texture data
@ -313,11 +348,12 @@ RLAPI Image LoadImageFromScreen(void);
RLAPI bool IsImageReady ( Image image ) ; / / Check if an image is ready
RLAPI void UnloadImage ( Image image ) ; / / Unload image from CPU memory ( RAM )
RLAPI bool ExportImage ( Image image , const char * fileName ) ; / / Export image data to file , returns true on success
RLAPI unsigned char * ExportImageToMemory ( Image image , const char * fileType , int * fileSize ) ; / / Export image to memory buffer
RLAPI bool ExportImageAsCode ( Image image , const char * fileName ) ; / / Export image as code file defining an array of bytes , returns true on success
/ / Image generation functions
RLAPI Image GenImageColor ( int width , int height , Color color ) ; / / Generate image : plain color
RLAPI Image GenImageGradientLinear ( int width , int height , int direction , Color start , Color end ) ; / / Generate image : linear gradient
RLAPI Image GenImageGradientLinear ( int width , int height , int direction , Color start , Color end ) ; / / Generate image : linear gradient , direction in degrees [ 0. .360 ] , 0 = Vertical gradient
RLAPI Image GenImageGradientRadial ( int width , int height , float density , Color inner , Color outer ) ; / / Generate image : radial gradient
RLAPI Image GenImageGradientSquare ( int width , int height , float density , Color inner , Color outer ) ; / / Generate image : square gradient
RLAPI Image GenImageChecked ( int width , int height , int checksX , int checksY , Color col1 , Color col2 ) ; / / Generate image : checked
@ -389,7 +425,7 @@ RLAPI TextureCubemap LoadTextureCubemap(Image image, int layout);
RLAPI RenderTexture2D LoadRenderTexture ( int width , int height ) ; / / Load texture for rendering ( framebuffer )
RLAPI bool IsTextureReady ( Texture2D texture ) ; / / Check if a texture is ready
RLAPI void UnloadTexture ( Texture2D texture ) ; / / Unload texture from GPU memory ( VRAM )
RLAPI bool IsRenderTextureReady ( RenderTexture2D target ) ; / / Check if a render texture is ready
RLAPI bool IsRenderTextureReady ( RenderTexture2D target ) ; / / Check if a render texture is ready
RLAPI void UnloadRenderTexture ( RenderTexture2D target ) ; / / Unload render texture from GPU memory ( VRAM )
RLAPI void UpdateTexture ( Texture2D texture , const void * pixels ) ; / / Update GPU texture with new data
RLAPI void UpdateTextureRec ( Texture2D texture , Rectangle rec , const void * pixels ) ; / / Update GPU texture rectangle with new data
@ -431,13 +467,13 @@ RLAPI int GetPixelDataSize(int width, int height, int format); // G
/ / Font loading / unloading functions
RLAPI Font GetFontDefault ( void ) ; / / Get the default Font
RLAPI Font LoadFont ( const char * fileName ) ; / / Load font from file into GPU memory ( VRAM )
RLAPI Font LoadFontEx ( const char * fileName , int fontSize , int * fontChars , int glyph Count) ; / / Load font from file with extended parameters , use NULL for fontChar s and 0 for glyph Count to load the default character set
RLAPI Font LoadFontEx ( const char * fileName , int fontSize , int * codepoints , int codepoint Count) ; / / Load font from file with extended parameters , use NULL for codepoint s and 0 for codepoint Count to load the default character set
RLAPI Font LoadFontFromImage ( Image image , Color key , int firstChar ) ; / / Load font from Image ( XNA style )
RLAPI Font LoadFontFromMemory ( const char * fileType , const unsigned char * fileData , int dataSize , int fontSize , int * fontChars , int glyph Count) ; / / Load font from memory buffer , fileType refers to extension : i . e . ' . ttf '
RLAPI Font LoadFontFromMemory ( const char * fileType , const unsigned char * fileData , int dataSize , int fontSize , int * codepoints , int codepoint Count) ; / / Load font from memory buffer , fileType refers to extension : i . e . ' . ttf '
RLAPI bool IsFontReady ( Font font ) ; / / Check if a font is ready
RLAPI GlyphInfo * LoadFontData ( const unsigned char * fileData , int dataSize , int fontSize , int * fontChars , int glyph Count, int type ) ; / / Load font data for further use
RLAPI Image GenImageFontAtlas ( const GlyphInfo * char s, Rectangle * * r ecs, int glyphCount , int fontSize , int padding , int packMethod ) ; / / Generate image font atlas using chars info
RLAPI void UnloadFontData ( GlyphInfo * char s, int glyphCount ) ; / / Unload font chars info data ( RAM )
RLAPI GlyphInfo * LoadFontData ( const unsigned char * fileData , int dataSize , int fontSize , int * codepoints , int codepoint Count, int type ) ; / / Load font data for further use
RLAPI Image GenImageFontAtlas ( const GlyphInfo * glyph s, Rectangle * * glyphR ecs, int glyphCount , int fontSize , int padding , int packMethod ) ; / / Generate image font atlas using chars info
RLAPI void UnloadFontData ( GlyphInfo * glyph s, int glyphCount ) ; / / Unload font chars info data ( RAM )
RLAPI void UnloadFont ( Font font ) ; / / Unload font from GPU memory ( VRAM )
RLAPI bool ExportFontAsCode ( Font font , const char * fileName ) ; / / Export font as code file , returns true on success
@ -447,9 +483,10 @@ RLAPI void DrawText(const char *text, int posX, int posY, int fontSize, Color co
RLAPI void DrawTextEx ( Font font , const char * text , Vector2 position , float fontSize , float spacing , Color tint ) ; / / Draw text using font and additional parameters
RLAPI void DrawTextPro ( Font font , const char * text , Vector2 position , Vector2 origin , float rotation , float fontSize , float spacing , Color tint ) ; / / Draw text using Font and pro parameters ( rotation )
RLAPI void DrawTextCodepoint ( Font font , int codepoint , Vector2 position , float fontSize , Color tint ) ; / / Draw one character ( codepoint )
RLAPI void DrawTextCodepoints ( Font font , const int * codepoints , int count , Vector2 position , float fontSize , float spacing , Color tint ) ; / / Draw multiple character ( codepoint )
RLAPI void DrawTextCodepoints ( Font font , const int * codepoints , int codepointCo unt , Vector2 position , float fontSize , float spacing , Color tint ) ; / / Draw multiple character ( codepoint )
/ / Text font info functions
RLAPI void SetTextLineSpacing ( int spacing ) ; / / Set vertical line spacing when drawing with line - breaks
RLAPI int MeasureText ( const char * text , int fontSize ) ; / / Measure string width for default font
RLAPI Vector2 MeasureTextEx ( Font font , const char * text , float fontSize , float spacing ) ; / / Measure string size for Font
RLAPI int GetGlyphIndex ( Font font , int codepoint ) ; / / Get glyph index position in font for a codepoint ( unicode character ) , fallback to ' ? ' if not found
@ -565,10 +602,10 @@ RLAPI void SetMaterialTexture(Material *material, int mapType, Texture2D texture
RLAPI void SetModelMeshMaterial ( Model * model , int meshId , int materialId ) ; / / Set material for a mesh
/ / Model animations loading / unloading functions
RLAPI ModelAnimation * LoadModelAnimations ( const char * fileName , unsigned int * animCount ) ; / / Load model animations from file
RLAPI ModelAnimation * LoadModelAnimations ( const char * fileName , int * animCount ) ; / / Load model animations from file
RLAPI void UpdateModelAnimation ( Model model , ModelAnimation anim , int frame ) ; / / Update model animation pose
RLAPI void UnloadModelAnimation ( ModelAnimation anim ) ; / / Unload animation data
RLAPI void UnloadModelAnimations ( ModelAnimation * animations , unsigned int c ount) ; / / Unload animation array data
RLAPI void UnloadModelAnimations ( ModelAnimation * animations , int animC ount) ; / / Unload animation array data
RLAPI bool IsModelAnimationValid ( Model model , ModelAnimation anim ) ; / / Check model animation skeleton match
/ / Collision detection functions
@ -591,6 +628,7 @@ RLAPI void InitAudioDevice(void); // Initial
RLAPI void CloseAudioDevice ( void ) ; / / Close the audio device and context
RLAPI bool IsAudioDeviceReady ( void ) ; / / Check if audio device has been initialized successfully
RLAPI void SetMasterVolume ( float volume ) ; / / Set master volume ( listener )
RLAPI float GetMasterVolume ( void ) ; / / Get master volume ( listener )
/ / Wave / Sound loading / unloading functions
RLAPI Wave LoadWave ( const char * fileName ) ; / / Load wave data from file
@ -598,10 +636,12 @@ RLAPI Wave LoadWaveFromMemory(const char *fileType, const unsigned char *fileDat
RLAPI bool IsWaveReady ( Wave wave ) ; / / Checks if wave data is ready
RLAPI Sound LoadSound ( const char * fileName ) ; / / Load sound from file
RLAPI Sound LoadSoundFromWave ( Wave wave ) ; / / Load sound from wave data
RLAPI Sound LoadSoundAlias ( Sound source ) ; / / Create a new sound that shares the same sample data as the source sound , does not own the sound data
RLAPI bool IsSoundReady ( Sound sound ) ; / / Checks if a sound is ready
RLAPI void UpdateSound ( Sound sound , const void * data , int sampleCount ) ; / / Update sound buffer with new data
RLAPI void UnloadWave ( Wave wave ) ; / / Unload wave data
RLAPI void UnloadSound ( Sound sound ) ; / / Unload sound
RLAPI void UnloadSoundAlias ( Sound alias ) ; / / Unload a sound alias ( does not deallocate sample data )
RLAPI bool ExportWave ( Wave wave , const char * fileName ) ; / / Export wave data to file , returns true on success
RLAPI bool ExportWaveAsCode ( Wave wave , const char * fileName ) ; / / Export wave sample data to code ( . h ) , returns true on success
@ -653,11 +693,11 @@ RLAPI void SetAudioStreamVolume(AudioStream stream, float volume); // Set vol
RLAPI void SetAudioStreamPitch ( AudioStream stream , float pitch ) ; / / Set pitch for audio stream ( 1.0 is base level )
RLAPI void SetAudioStreamPan ( AudioStream stream , float pan ) ; / / Set pan for audio stream ( 0.5 is centered )
RLAPI void SetAudioStreamBufferSizeDefault ( int size ) ; / / Default size for new audio streams
RLAPI void SetAudioStreamCallback ( AudioStream stream , AudioCallback callback ) ; / / Audio thread callback to request new data
RLAPI void SetAudioStreamCallback ( AudioStream stream , AudioCallback callback ) ; / / Audio thread callback to request new data
RLAPI void AttachAudioStreamProcessor ( AudioStream stream , AudioCallback processor ) ; / / Attach audio stream processor to stream
RLAPI void AttachAudioStreamProcessor ( AudioStream stream , AudioCallback processor ) ; / / Attach audio stream processor to stream , receives the samples as < float > s
RLAPI void DetachAudioStreamProcessor ( AudioStream stream , AudioCallback processor ) ; / / Detach audio stream processor from stream
RLAPI void AttachAudioMixedProcessor ( AudioCallback processor ) ; / / Attach audio stream processor to the entire audio pipeline
RLAPI void AttachAudioMixedProcessor ( AudioCallback processor ) ; / / Attach audio stream processor to the entire audio pipeline , receives the samples as < float > s
RLAPI void DetachAudioMixedProcessor ( AudioCallback processor ) ; / / Detach audio stream processor from the entire audio pipeline