83#define RAYLIB_VERSION "4.1-dev"
88 #if defined(BUILD_LIBTYPE_SHARED)
89 #define RLAPI __declspec(dllexport)
90 #elif defined(USE_LIBTYPE_SHARED)
91 #define RLAPI __declspec(dllimport)
103 #define PI 3.14159265358979323846f
106 #define DEG2RAD (PI/180.0f)
109 #define RAD2DEG (180.0f/PI)
114 #define RL_MALLOC(sz) malloc(sz)
117 #define RL_CALLOC(n,sz) calloc(n,sz)
120 #define RL_REALLOC(ptr,sz) realloc(ptr,sz)
123 #define RL_FREE(ptr) free(ptr)
128#if defined(__cplusplus)
129 #define CLITERAL(type) type
131 #define CLITERAL(type) (type)
139#define RL_RECTANGLE_TYPE
140#define RL_VECTOR2_TYPE
141#define RL_VECTOR3_TYPE
142#define RL_VECTOR4_TYPE
143#define RL_QUATERNION_TYPE
144#define RL_MATRIX_TYPE
148#define LIGHTGRAY CLITERAL(Color){ 200, 200, 200, 255 }
149#define GRAY CLITERAL(Color){ 130, 130, 130, 255 }
150#define DARKGRAY CLITERAL(Color){ 80, 80, 80, 255 }
151#define YELLOW CLITERAL(Color){ 253, 249, 0, 255 }
152#define GOLD CLITERAL(Color){ 255, 203, 0, 255 }
153#define ORANGE CLITERAL(Color){ 255, 161, 0, 255 }
154#define PINK CLITERAL(Color){ 255, 109, 194, 255 }
155#define RED CLITERAL(Color){ 230, 41, 55, 255 }
156#define MAROON CLITERAL(Color){ 190, 33, 55, 255 }
157#define GREEN CLITERAL(Color){ 0, 228, 48, 255 }
158#define LIME CLITERAL(Color){ 0, 158, 47, 255 }
159#define DARKGREEN CLITERAL(Color){ 0, 117, 44, 255 }
160#define SKYBLUE CLITERAL(Color){ 102, 191, 255, 255 }
161#define BLUE CLITERAL(Color){ 0, 121, 241, 255 }
162#define DARKBLUE CLITERAL(Color){ 0, 82, 172, 255 }
163#define PURPLE CLITERAL(Color){ 200, 122, 255, 255 }
164#define VIOLET CLITERAL(Color){ 135, 60, 190, 255 }
165#define DARKPURPLE CLITERAL(Color){ 112, 31, 126, 255 }
166#define BEIGE CLITERAL(Color){ 211, 176, 131, 255 }
167#define BROWN CLITERAL(Color){ 127, 106, 79, 255 }
168#define DARKBROWN CLITERAL(Color){ 76, 63, 47, 255 }
170#define WHITE CLITERAL(Color){ 255, 255, 255, 255 }
171#define BLACK CLITERAL(Color){ 0, 0, 0, 255 }
172#define BLANK CLITERAL(Color){ 0, 0, 0, 0 }
173#define MAGENTA CLITERAL(Color){ 255, 0, 255, 255 }
174#define RAYWHITE CLITERAL(Color){ 245, 245, 245, 255 }
180#if defined(__STDC__) && __STDC_VERSION__ >= 199901L
182#elif !defined(__cplusplus) && !defined(bool)
183 typedef enum bool {
false,
true }
bool;
444typedef struct Sound {
450typedef struct Music {
642#define MOUSE_LEFT_BUTTON MOUSE_BUTTON_LEFT
643#define MOUSE_RIGHT_BUTTON MOUSE_BUTTON_RIGHT
644#define MOUSE_MIDDLE_BUTTON MOUSE_BUTTON_MIDDLE
719#define MATERIAL_MAP_DIFFUSE MATERIAL_MAP_ALBEDO
720#define MATERIAL_MAP_SPECULAR MATERIAL_MAP_METALNESS
752#define SHADER_LOC_MAP_DIFFUSE SHADER_LOC_MAP_ALBEDO
753#define SHADER_LOC_MAP_SPECULAR SHADER_LOC_MAP_METALNESS
891typedef unsigned char *(*LoadFileDataCallback)(
const char *fileName,
unsigned int *bytesRead);
893typedef char *(*LoadFileTextCallback)(
const char *fileName);
905#if defined(__cplusplus)
1040RLAPI unsigned char *
LoadFileData(
const char *fileName,
unsigned int *bytesRead);
1042RLAPI bool SaveFileData(
const char *fileName,
void *data,
unsigned int bytesToWrite);
1067RLAPI unsigned char *
CompressData(
const unsigned char *data,
int dataSize,
int *compDataSize);
1068RLAPI unsigned char *
DecompressData(
const unsigned char *compData,
int compDataSize,
int *dataSize);
1159RLAPI void DrawLine(
int startPosX,
int startPosY,
int endPosX,
int endPosY,
Color color);
1174RLAPI void DrawRing(
Vector2 center,
float innerRadius,
float outerRadius,
float startAngle,
float endAngle,
int segments,
Color color);
1332RLAPI Font LoadFontFromMemory(
const char *fileType,
const unsigned char *fileData,
int dataSize,
int fontSize,
int *fontChars,
int glyphCount);
1333RLAPI GlyphInfo *
LoadFontData(
const unsigned char *fileData,
int dataSize,
int fontSize,
int *fontChars,
int glyphCount,
int type);
1370RLAPI char *
TextInsert(
const char *text,
const char *insert,
int position);
1371RLAPI const char *
TextJoin(
const char **textList,
int count,
const char *delimiter);
1372RLAPI const char **
TextSplit(
const char *text,
char delimiter,
int *count);
1552#if defined(__cplusplus)
RLAPI void MemFree(void *ptr)
RLAPI int GetSoundsPlaying(void)
RLAPI void ResumeAudioStream(AudioStream stream)
RLAPI Wave LoadWaveFromMemory(const char *fileType, const unsigned char *fileData, int dataSize)
@ SHADER_LOC_MAP_PREFILTER
@ SHADER_LOC_MATRIX_MODEL
@ SHADER_LOC_COLOR_DIFFUSE
@ SHADER_LOC_MAP_IRRADIANCE
@ SHADER_LOC_MAP_ROUGHNESS
@ SHADER_LOC_VERTEX_COLOR
@ SHADER_LOC_COLOR_SPECULAR
@ SHADER_LOC_COLOR_AMBIENT
@ SHADER_LOC_VERTEX_TANGENT
@ SHADER_LOC_MATRIX_PROJECTION
@ SHADER_LOC_VERTEX_TEXCOORD01
@ SHADER_LOC_VERTEX_POSITION
@ SHADER_LOC_VERTEX_TEXCOORD02
@ SHADER_LOC_MATRIX_NORMAL
@ SHADER_LOC_MAP_METALNESS
@ SHADER_LOC_MAP_OCCLUSION
@ SHADER_LOC_MAP_EMISSION
@ SHADER_LOC_VERTEX_NORMAL
RLAPI void ImageColorReplace(Image *image, Color color, Color replace)
RLAPI const char * TextFormat(const char *text,...)
RLAPI bool IsGamepadButtonReleased(int gamepad, int button)
RLAPI void ImageAlphaCrop(Image *image, float threshold)
RLAPI void UnloadSound(Sound sound)
RLAPI void PauseMusicStream(Music music)
RLAPI void DrawMesh(Mesh mesh, Material material, Matrix transform)
@ SHADER_UNIFORM_SAMPLER2D
RLAPI void SetPixelColor(void *dstPtr, Color color, int format)
RLAPI void UpdateMeshBuffer(Mesh mesh, int index, const void *data, int dataSize, int offset)
RLAPI Vector2 GetWindowPosition(void)
RLAPI void ImageAlphaMask(Image *image, Image alphaMask)
RLAPI Color * LoadImageColors(Image image)
RLAPI void DrawCylinderWires(Vector3 position, float radiusTop, float radiusBottom, float height, int slices, Color color)
RLAPI void SetWindowPosition(int x, int y)
bool(* SaveFileDataCallback)(const char *fileName, void *data, unsigned int bytesToWrite)
RLAPI Music LoadMusicStreamFromMemory(const char *fileType, const unsigned char *data, int dataSize)
RLAPI void ClearDirectoryFiles(void)
RLAPI void ImageColorGrayscale(Image *image)
RLAPI void InitWindow(int width, int height, const char *title)
RLAPI const char * GetWorkingDirectory(void)
RLAPI void BeginMode2D(Camera2D camera)
RLAPI char ** GetDroppedFiles(int *count)
RLAPI Image GenImageCellular(int width, int height, int tileSize)
RLAPI bool IsKeyPressed(int key)
RLAPI int GetGestureDetected(void)
RLAPI void DrawSphereWires(Vector3 centerPos, float radius, int rings, int slices, Color color)
RLAPI const char * GetMonitorName(int monitor)
RLAPI RayCollision GetRayCollisionBox(Ray ray, BoundingBox box)
RLAPI void DrawModelWiresEx(Model model, Vector3 position, Vector3 rotationAxis, float rotationAngle, Vector3 scale, Color tint)
RLAPI bool DirectoryExists(const char *dirPath)
RLAPI void DrawRing(Vector2 center, float innerRadius, float outerRadius, float startAngle, float endAngle, int segments, Color color)
RLAPI float GetGamepadAxisMovement(int gamepad, int axis)
RLAPI int SetGamepadMappings(const char *mappings)
RLAPI void CloseWindow(void)
RLAPI void SetMouseOffset(int offsetX, int offsetY)
RLAPI int GetShaderLocation(Shader shader, const char *uniformName)
RLAPI Rectangle GetImageAlphaBorder(Image image, float threshold)
RLAPI void DrawSphere(Vector3 centerPos, float radius, Color color)
RLAPI int GetMouseY(void)
RLAPI bool WindowShouldClose(void)
RLAPI int GetGamepadAxisCount(int gamepad)
RLAPI GlyphInfo GetGlyphInfo(Font font, int codepoint)
RLAPI void ImageClearBackground(Image *dst, Color color)
RLAPI bool CheckCollisionLines(Vector2 startPos1, Vector2 endPos1, Vector2 startPos2, Vector2 endPos2, Vector2 *collisionPoint)
RLAPI void DrawRectangleRec(Rectangle rec, Color color)
RLAPI void BeginShaderMode(Shader shader)
RLAPI void ImageDrawTextEx(Image *dst, Font font, const char *text, Vector2 position, float fontSize, float spacing, Color tint)
RLAPI bool IsModelAnimationValid(Model model, ModelAnimation anim)
RLAPI void DrawLineBezierCubic(Vector2 startPos, Vector2 endPos, Vector2 startControlPos, Vector2 endControlPos, float thick, Color color)
RLAPI void ImageRotateCW(Image *image)
RLAPI void SetLoadFileTextCallback(LoadFileTextCallback callback)
RLAPI const char * TextToPascal(const char *text)
RLAPI ModelAnimation * LoadModelAnimations(const char *fileName, unsigned int *animCount)
@ MOUSE_CURSOR_RESIZE_NESW
@ MOUSE_CURSOR_POINTING_HAND
@ MOUSE_CURSOR_RESIZE_ALL
@ MOUSE_CURSOR_NOT_ALLOWED
@ MOUSE_CURSOR_RESIZE_NWSE
RLAPI bool IsKeyReleased(int key)
RLAPI bool CheckCollisionPointCircle(Vector2 point, Vector2 center, float radius)
RLAPI void UnloadModel(Model model)
RLAPI void DrawTexturePro(Texture2D texture, Rectangle source, Rectangle dest, Vector2 origin, float rotation, Color tint)
RLAPI void SetMouseScale(float scaleX, float scaleY)
RLAPI void SetTargetFPS(int fps)
unsigned char *(* LoadFileDataCallback)(const char *fileName, unsigned int *bytesRead)
RLAPI Vector2 MeasureTextEx(Font font, const char *text, float fontSize, float spacing)
RLAPI void SetTextureWrap(Texture2D texture, int wrap)
RLAPI Image LoadImageRaw(const char *fileName, int width, int height, int format, int headerSize)
RLAPI int TextFindIndex(const char *text, const char *find)
RLAPI void SetAudioStreamVolume(AudioStream stream, float volume)
RLAPI void StopAudioStream(AudioStream stream)
RLAPI void DrawLineBezierQuad(Vector2 startPos, Vector2 endPos, Vector2 controlPos, float thick, Color color)
RLAPI Mesh GenMeshPoly(int sides, float radius)
RLAPI RayCollision GetRayCollisionSphere(Ray ray, Vector3 center, float radius)
RLAPI void SetAudioStreamBufferSizeDefault(int size)
RLAPI const char * TextToUpper(const char *text)
RLAPI TextureCubemap LoadTextureCubemap(Image image, int layout)
RLAPI void ClearBackground(Color color)
RLAPI void DrawCube(Vector3 position, float width, float height, float length, Color color)
RLAPI unsigned char * CompressData(const unsigned char *data, int dataSize, int *compDataSize)
RLAPI void DrawTextureV(Texture2D texture, Vector2 position, Color tint)
RLAPI void DrawPixel(int posX, int posY, Color color)
RLAPI Font LoadFontEx(const char *fileName, int fontSize, int *fontChars, int glyphCount)
RLAPI void UnloadModelAnimations(ModelAnimation *animations, unsigned int count)
RLAPI Texture2D LoadTexture(const char *fileName)
RLAPI bool SaveFileData(const char *fileName, void *data, unsigned int bytesToWrite)
RLAPI void UnloadFileData(unsigned char *data)
RLAPI unsigned char * DecodeDataBase64(const unsigned char *data, int *outputSize)
@ GAMEPAD_AXIS_RIGHT_TRIGGER
@ GAMEPAD_AXIS_LEFT_TRIGGER
RLAPI Color ColorFromHSV(float hue, float saturation, float value)
RLAPI void ClearDroppedFiles(void)
RLAPI void DrawCircleLines(int centerX, int centerY, float radius, Color color)
RLAPI Image GenImageGradientV(int width, int height, Color top, Color bottom)
RLAPI void ImageColorTint(Image *image, Color color)
RLAPI const char * GetApplicationDirectory(void)
RLAPI bool IsWindowMaximized(void)
RLAPI float GetMusicTimeLength(Music music)
RLAPI void DrawTextureTiled(Texture2D texture, Rectangle source, Rectangle dest, Vector2 origin, float rotation, float scale, Color tint)
RLAPI void ImageRotateCCW(Image *image)
RLAPI void SetShaderValueTexture(Shader shader, int locIndex, Texture2D texture)
RLAPI void SetMouseCursor(int cursor)
RLAPI void DrawTextPro(Font font, const char *text, Vector2 position, Vector2 origin, float rotation, float fontSize, float spacing, Color tint)
RLAPI bool FileExists(const char *fileName)
RLAPI int GetCurrentMonitor(void)
RLAPI void EndTextureMode(void)
RLAPI void CloseAudioDevice(void)
RLAPI void DrawFPS(int posX, int posY)
@ CUBEMAP_LAYOUT_LINE_VERTICAL
@ CUBEMAP_LAYOUT_CROSS_THREE_BY_FOUR
@ CUBEMAP_LAYOUT_AUTO_DETECT
@ CUBEMAP_LAYOUT_CROSS_FOUR_BY_THREE
@ CUBEMAP_LAYOUT_PANORAMA
@ CUBEMAP_LAYOUT_LINE_HORIZONTAL
RLAPI bool IsWindowReady(void)
RLAPI int GetMouseX(void)
RLAPI bool IsAudioStreamPlaying(AudioStream stream)
RLAPI void WaveCrop(Wave *wave, int initSample, int finalSample)
RLAPI int * LoadCodepoints(const char *text, int *count)
RLAPI Color ColorAlphaBlend(Color dst, Color src, Color tint)
RLAPI Color GetPixelColor(void *srcPtr, int format)
RLAPI Mesh GenMeshCube(float width, float height, float length)
RLAPI void BeginScissorMode(int x, int y, int width, int height)
RLAPI void DrawCircleSectorLines(Vector2 center, float radius, float startAngle, float endAngle, int segments, Color color)
RLAPI void DrawCubeV(Vector3 position, Vector3 size, Color color)
RLAPI Vector2 GetWindowScaleDPI(void)
RLAPI bool ExportMesh(Mesh mesh, const char *fileName)
RLAPI void RestoreWindow(void)
RLAPI bool IsWindowResized(void)
@ MATERIAL_MAP_IRRADIANCE
RLAPI void EndBlendMode(void)
RLAPI void UploadMesh(Mesh *mesh, bool dynamic)
RLAPI Material LoadMaterialDefault(void)
RLAPI void ImageDraw(Image *dst, Image src, Rectangle srcRec, Rectangle dstRec, Color tint)
RLAPI void SetTraceLogLevel(int logLevel)
RLAPI void UpdateModelAnimation(Model model, ModelAnimation anim, int frame)
RLAPI void SetConfigFlags(unsigned int flags)
RLAPI void ClearWindowState(unsigned int flags)
RLAPI void PlaySoundMulti(Sound sound)
RLAPI int GetMonitorCount(void)
RLAPI BoundingBox GetModelBoundingBox(Model model)
RLAPI void UnloadModelKeepMeshes(Model model)
RLAPI void SetShapesTexture(Texture2D texture, Rectangle source)
RLAPI Color Fade(Color color, float alpha)
RLAPI void ImageDither(Image *image, int rBpp, int gBpp, int bBpp, int aBpp)
RLAPI int GetCharPressed(void)
RLAPI void UpdateMusicStream(Music music)
RLAPI Mesh GenMeshHeightmap(Image heightmap, Vector3 size)
RLAPI int GetTouchX(void)
RLAPI void UnloadCodepoints(int *codepoints)
RLAPI bool IsAudioDeviceReady(void)
RLAPI void DrawTriangleLines(Vector2 v1, Vector2 v2, Vector2 v3, Color color)
RLAPI Image ImageTextEx(Font font, const char *text, float fontSize, float spacing, Color tint)
RLAPI void GenTextureMipmaps(Texture2D *texture)
RLAPI void UnloadMaterial(Material material)
RLAPI int GetTouchY(void)
RLAPI void ImageAlphaPremultiply(Image *image)
RLAPI void DrawCylinderEx(Vector3 startPos, Vector3 endPos, float startRadius, float endRadius, int sides, Color color)
RLAPI void BeginTextureMode(RenderTexture2D target)
RLAPI bool IsMouseButtonReleased(int button)
RLAPI void DetachAudioStreamProcessor(AudioStream stream, AudioCallback processor)
RLAPI void DrawLineV(Vector2 startPos, Vector2 endPos, Color color)
RLAPI bool ChangeDirectory(const char *dir)
RLAPI void StopSoundMulti(void)
RLAPI void SetWindowMinSize(int width, int height)
RLAPI int GetTouchPointCount(void)
RLAPI void UpdateTexture(Texture2D texture, const void *pixels)
RLAPI void SetSoundPitch(Sound sound, float pitch)
RLAPI void UnloadMusicStream(Music music)
RLAPI void InitAudioDevice(void)
RLAPI RayCollision GetRayCollisionQuad(Ray ray, Vector3 p1, Vector3 p2, Vector3 p3, Vector3 p4)
RLAPI bool CheckCollisionBoxSphere(BoundingBox box, Vector3 center, float radius)
RLAPI void DrawCubeTexture(Texture2D texture, Vector3 position, float width, float height, float length, Color color)
RLAPI bool IsWindowMinimized(void)
RLAPI Vector2 GetWorldToScreen(Vector3 position, Camera camera)
RLAPI RayCollision GetRayCollisionMesh(Ray ray, Mesh mesh, Matrix transform)
RLAPI void SetSoundPan(Sound sound, float pan)
RLAPI Font LoadFontFromImage(Image image, Color key, int firstChar)
RLAPI void * MemAlloc(int size)
RLAPI void DrawTriangle3D(Vector3 v1, Vector3 v2, Vector3 v3, Color color)
RLAPI Matrix GetCameraMatrix(Camera camera)
RLAPI void EndVrStereoMode(void)
RLAPI void TakeScreenshot(const char *fileName)
RLAPI void DrawTextureQuad(Texture2D texture, Vector2 tiling, Vector2 offset, Rectangle quad, Color tint)
RLAPI void PlaySound(Sound sound)
RLAPI void ImageFlipVertical(Image *image)
RLAPI float GetFrameTime(void)
RLAPI void UpdateAudioStream(AudioStream stream, const void *data, int frameCount)
@ PIXELFORMAT_COMPRESSED_ETC1_RGB
@ PIXELFORMAT_COMPRESSED_ASTC_4x4_RGBA
@ PIXELFORMAT_UNCOMPRESSED_R32
@ PIXELFORMAT_COMPRESSED_DXT1_RGB
@ PIXELFORMAT_UNCOMPRESSED_R8G8B8
@ PIXELFORMAT_UNCOMPRESSED_R32G32B32A32
@ PIXELFORMAT_UNCOMPRESSED_R32G32B32
@ PIXELFORMAT_COMPRESSED_DXT3_RGBA
@ PIXELFORMAT_UNCOMPRESSED_GRAYSCALE
@ PIXELFORMAT_COMPRESSED_DXT5_RGBA
@ PIXELFORMAT_COMPRESSED_ETC2_EAC_RGBA
@ PIXELFORMAT_COMPRESSED_ASTC_8x8_RGBA
@ PIXELFORMAT_UNCOMPRESSED_R5G6B5
@ PIXELFORMAT_COMPRESSED_DXT1_RGBA
@ PIXELFORMAT_COMPRESSED_PVRT_RGB
@ PIXELFORMAT_COMPRESSED_ETC2_RGB
@ PIXELFORMAT_UNCOMPRESSED_R8G8B8A8
@ PIXELFORMAT_UNCOMPRESSED_R5G5B5A1
@ PIXELFORMAT_UNCOMPRESSED_R4G4B4A4
@ PIXELFORMAT_COMPRESSED_PVRT_RGBA
@ PIXELFORMAT_UNCOMPRESSED_GRAY_ALPHA
RLAPI void ImageDrawRectangle(Image *dst, int posX, int posY, int width, int height, Color color)
RLAPI void DrawRectangleGradientH(int posX, int posY, int width, int height, Color color1, Color color2)
RLAPI bool CheckCollisionRecs(Rectangle rec1, Rectangle rec2)
RLAPI unsigned char * LoadFileData(const char *fileName, unsigned int *bytesRead)
RLAPI void SetCameraPanControl(int keyPan)
RLAPI void UnloadFontData(GlyphInfo *chars, int glyphCount)
RLAPI Mesh GenMeshHemiSphere(float radius, int rings, int slices)
void(* AudioCallback)(void *bufferData, unsigned int frames)
RLAPI void SetWindowOpacity(float opacity)
RLAPI void DrawSphereEx(Vector3 centerPos, float radius, int rings, int slices, Color color)
RLAPI Model LoadModelFromMesh(Mesh mesh)
RLAPI void SetAudioStreamCallback(AudioStream stream, AudioCallback callback)
RLAPI int GetCodepointCount(const char *text)
RLAPI void DrawRectangleLinesEx(Rectangle rec, float lineThick, Color color)
RLAPI void DrawCubeWiresV(Vector3 position, Vector3 size, Color color)
RLAPI void SetClipboardText(const char *text)
RLAPI int GetMonitorHeight(int monitor)
RLAPI const char * GetPrevDirectoryPath(const char *dirPath)
RLAPI int TextToInteger(const char *text)
RLAPI void BeginDrawing(void)
RLAPI void DrawCircle3D(Vector3 center, float radius, Vector3 rotationAxis, float rotationAngle, Color color)
RLAPI bool TextIsEqual(const char *text1, const char *text2)
RLAPI float GetGestureHoldDuration(void)
RLAPI Color ColorFromNormalized(Vector4 normalized)
RLAPI void UpdateTextureRec(Texture2D texture, Rectangle rec, const void *pixels)
RLAPI void ImageFlipHorizontal(Image *image)
RLAPI Image ImageFromImage(Image image, Rectangle rec)
RLAPI void DrawTextCodepoint(Font font, int codepoint, Vector2 position, float fontSize, Color tint)
RLAPI bool IsCursorHidden(void)
RLAPI bool ExportWaveAsCode(Wave wave, const char *fileName)
RLAPI void UnloadTexture(Texture2D texture)
RLAPI Vector3 ColorToHSV(Color color)
RLAPI Matrix GetCameraMatrix2D(Camera2D camera)
RLAPI Image GenImageGradientH(int width, int height, Color left, Color right)
RLAPI void ImageFormat(Image *image, int newFormat)
RLAPI void BeginVrStereoMode(VrStereoConfig config)
RLAPI void UnloadShader(Shader shader)
RLAPI char ** GetDirectoryFiles(const char *dirPath, int *count)
RLAPI Mesh GenMeshCylinder(float radius, float height, int slices)
RLAPI float GetMouseWheelMove(void)
RLAPI void UpdateSound(Sound sound, const void *data, int sampleCount)
RLAPI bool IsMusicStreamPlaying(Music music)
char *(* LoadFileTextCallback)(const char *fileName)
RLAPI const char * TextJoin(const char **textList, int count, const char *delimiter)
RLAPI void SetSaveFileTextCallback(SaveFileTextCallback callback)
RLAPI void DrawTexturePoly(Texture2D texture, Vector2 center, Vector2 *points, Vector2 *texcoords, int pointCount, Color tint)
RLAPI void EndDrawing(void)
RLAPI Color * LoadImagePalette(Image image, int maxPaletteSize, int *colorCount)
RLAPI void OpenURL(const char *url)
RLAPI RayCollision GetRayCollisionTriangle(Ray ray, Vector3 p1, Vector3 p2, Vector3 p3)
RLAPI const char * TextToLower(const char *text)
RLAPI bool CheckCollisionCircles(Vector2 center1, float radius1, Vector2 center2, float radius2)
RLAPI Wave WaveCopy(Wave wave)
RLAPI void ImageMipmaps(Image *image)
RLAPI void BeginMode3D(Camera3D camera)
@ GAMEPAD_BUTTON_LEFT_FACE_DOWN
@ GAMEPAD_BUTTON_LEFT_FACE_UP
@ GAMEPAD_BUTTON_RIGHT_THUMB
@ GAMEPAD_BUTTON_LEFT_TRIGGER_1
@ GAMEPAD_BUTTON_LEFT_FACE_LEFT
@ GAMEPAD_BUTTON_MIDDLE_LEFT
@ GAMEPAD_BUTTON_LEFT_TRIGGER_2
@ GAMEPAD_BUTTON_RIGHT_FACE_DOWN
@ GAMEPAD_BUTTON_RIGHT_FACE_LEFT
@ GAMEPAD_BUTTON_LEFT_FACE_RIGHT
@ GAMEPAD_BUTTON_RIGHT_FACE_RIGHT
@ GAMEPAD_BUTTON_LEFT_THUMB
@ GAMEPAD_BUTTON_MIDDLE_RIGHT
@ GAMEPAD_BUTTON_RIGHT_FACE_UP
@ GAMEPAD_BUTTON_RIGHT_TRIGGER_2
@ GAMEPAD_BUTTON_RIGHT_TRIGGER_1
RLAPI char * TextReplace(char *text, const char *replace, const char *by)
RLAPI Shader LoadShaderFromMemory(const char *vsCode, const char *fsCode)
RLAPI bool IsMouseButtonUp(int button)
RLAPI void TraceLog(int logLevel, const char *text,...)
RLAPI void DrawGrid(int slices, float spacing)
RLAPI Music LoadMusicStream(const char *fileName)
RLAPI void ImageDrawRectangleRec(Image *dst, Rectangle rec, Color color)
RLAPI void DrawBillboardRec(Camera camera, Texture2D texture, Rectangle source, Vector3 position, Vector2 size, Color tint)
RLAPI Font GetFontDefault(void)
RLAPI void ImageDrawRectangleLines(Image *dst, Rectangle rec, int thick, Color color)
RLAPI Model LoadModel(const char *fileName)
RLAPI void PollInputEvents(void)
RLAPI void DrawText(const char *text, int posX, int posY, int fontSize, Color color)
RLAPI Shader LoadShader(const char *vsFileName, const char *fsFileName)
RLAPI void UnloadImageColors(Color *colors)
RLAPI float GetGesturePinchAngle(void)
RLAPI int ColorToInt(Color color)
RLAPI void DrawCylinderWiresEx(Vector3 startPos, Vector3 endPos, float startRadius, float endRadius, int sides, Color color)
RLAPI void ImageDrawLineV(Image *dst, Vector2 start, Vector2 end, Color color)
RLAPI long GetFileModTime(const char *fileName)
RLAPI void SetLoadFileDataCallback(LoadFileDataCallback callback)
RLAPI Vector2 GetWorldToScreenEx(Vector3 position, Camera camera, int width, int height)
RLAPI void UnloadWave(Wave wave)
RLAPI Image LoadImageFromScreen(void)
RLAPI Vector2 GetGesturePinchVector(void)
RLAPI void ImageDrawPixelV(Image *dst, Vector2 position, Color color)
RLAPI void SetCameraSmoothZoomControl(int keySmoothZoom)
RLAPI void DrawRectangle(int posX, int posY, int width, int height, Color color)
RLAPI Image GenImageFontAtlas(const GlyphInfo *chars, Rectangle **recs, int glyphCount, int fontSize, int padding, int packMethod)
RLAPI bool IsWindowFocused(void)
RLAPI void PauseSound(Sound sound)
RLAPI const char * CodepointToUTF8(int codepoint, int *byteSize)
RLAPI void DrawRectangleV(Vector2 position, Vector2 size, Color color)
RLAPI Vector2 GetGestureDragVector(void)
RLAPI bool IsSoundPlaying(Sound sound)
RLAPI void DrawPolyLines(Vector2 center, int sides, float radius, float rotation, Color color)
RLAPI void StopSound(Sound sound)
RLAPI bool IsMouseButtonDown(int button)
RLAPI bool ExportDataAsCode(const char *data, unsigned int size, const char *fileName)
RLAPI void SetMusicPan(Music music, float pan)
RLAPI bool IsWindowState(unsigned int flag)
RLAPI void UnloadModelAnimation(ModelAnimation anim)
RLAPI void DrawLine3D(Vector3 startPos, Vector3 endPos, Color color)
RLAPI void UnloadAudioStream(AudioStream stream)
RLAPI void SetTraceLogCallback(TraceLogCallback callback)
RLAPI void SwapScreenBuffer(void)
RLAPI void ToggleFullscreen(void)
RLAPI bool IsFileDropped(void)
RLAPI void SetRandomSeed(unsigned int seed)
RLAPI void SetExitKey(int key)
RLAPI void SetWindowState(unsigned int flags)
RLAPI void ResumeSound(Sound sound)
RLAPI void UnloadImagePalette(Color *colors)
RLAPI Image LoadImage(const char *fileName)
RLAPI Image ImageCopy(Image image)
RLAPI void DrawEllipseLines(int centerX, int centerY, float radiusH, float radiusV, Color color)
RLAPI bool IsKeyUp(int key)
RLAPI void SetModelMeshMaterial(Model *model, int meshId, int materialId)
RLAPI void DrawBoundingBox(BoundingBox box, Color color)
RLAPI int GetScreenWidth(void)
RLAPI bool ExportWave(Wave wave, const char *fileName)
RLAPI VrStereoConfig LoadVrStereoConfig(VrDeviceInfo device)
RLAPI const char * GetFileName(const char *filePath)
RLAPI void EndScissorMode(void)
RLAPI void UpdateCamera(Camera *camera)
RLAPI void UnloadRenderTexture(RenderTexture2D target)
RLAPI Image GenImageChecked(int width, int height, int checksX, int checksY, Color col1, Color col2)
RLAPI float * LoadWaveSamples(Wave wave)
RLAPI int GetMonitorPhysicalWidth(int monitor)
RLAPI bool IsKeyDown(int key)
RLAPI void DrawRectangleGradientEx(Rectangle rec, Color col1, Color col2, Color col3, Color col4)
RLAPI void DrawModel(Model model, Vector3 position, float scale, Color tint)
RLAPI void SetWindowTitle(const char *title)
RLAPI bool SaveStorageValue(unsigned int position, int value)
RLAPI float GetGestureDragAngle(void)
RLAPI const char * TextSubtext(const char *text, int position, int length)
RLAPI void SetShaderValueV(Shader shader, int locIndex, const void *value, int uniformType, int count)
RLAPI void DrawLineEx(Vector2 startPos, Vector2 endPos, float thick, Color color)
RLAPI bool ExportImageAsCode(Image image, const char *fileName)
RLAPI void WaitTime(float ms)
RLAPI Mesh GenMeshPlane(float width, float length, int resX, int resZ)
RLAPI void SetGesturesEnabled(unsigned int flags)
RLAPI void DrawTextureNPatch(Texture2D texture, NPatchInfo nPatchInfo, Rectangle dest, Vector2 origin, float rotation, Color tint)
RLAPI void SetShaderValueMatrix(Shader shader, int locIndex, Matrix mat)
bool(* SaveFileTextCallback)(const char *fileName, char *text)
RLAPI bool ExportImage(Image image, const char *fileName)
RLAPI void DrawTriangle(Vector2 v1, Vector2 v2, Vector2 v3, Color color)
RLAPI void ImageDrawCircleV(Image *dst, Vector2 center, int radius, Color color)
RLAPI void UnloadVrStereoConfig(VrStereoConfig config)
RLAPI void SetCameraAltControl(int keyAlt)
RLAPI void EndMode3D(void)
RLAPI double GetTime(void)
RLAPI Vector2 GetScreenToWorld2D(Vector2 position, Camera2D camera)
RLAPI void * MemRealloc(void *ptr, int size)
RLAPI void DrawRay(Ray ray, Color color)
RLAPI bool SaveFileText(const char *fileName, char *text)
RLAPI void DrawModelWires(Model model, Vector3 position, float scale, Color tint)
RLAPI void SeekMusicStream(Music music, float position)
RLAPI void DrawBillboardPro(Camera camera, Texture2D texture, Rectangle source, Vector3 position, Vector3 up, Vector2 size, Vector2 origin, float rotation, Color tint)
RLAPI void DrawCubeTextureRec(Texture2D texture, Rectangle source, Vector3 position, float width, float height, float length, Color color)
RLAPI void SetMasterVolume(float volume)
RLAPI Color GetImageColor(Image image, int x, int y)
RLAPI void WaveFormat(Wave *wave, int sampleRate, int sampleSize, int channels)
RLAPI int GetMonitorWidth(int monitor)
RLAPI void DrawPoint3D(Vector3 position, Color color)
RLAPI bool CheckCollisionPointRec(Vector2 point, Rectangle rec)
RLAPI void DrawPlane(Vector3 centerPos, Vector2 size, Color color)
RLAPI bool IsWindowFullscreen(void)
RLAPI Wave LoadWave(const char *fileName)
RLAPI void DrawTriangleStrip(Vector2 *points, int pointCount, Color color)
RLAPI int MeasureText(const char *text, int fontSize)
RLAPI void DrawTextureRec(Texture2D texture, Rectangle source, Vector2 position, Color tint)
RLAPI Vector2 GetMousePosition(void)
RLAPI void GenMeshBinormals(Mesh *mesh)
RLAPI void DrawTriangleFan(Vector2 *points, int pointCount, Color color)
RLAPI void SetWindowMonitor(int monitor)
RLAPI Material * LoadMaterials(const char *fileName, int *materialCount)
RLAPI void SetWindowIcon(Image image)
RLAPI Mesh GenMeshKnot(float radius, float size, int radSeg, int sides)
RLAPI const char * GetFileNameWithoutExt(const char *filePath)
RLAPI void ImageResizeCanvas(Image *image, int newWidth, int newHeight, int offsetX, int offsetY, Color fill)
RLAPI void DrawRectangleGradientV(int posX, int posY, int width, int height, Color color1, Color color2)
RLAPI void StopMusicStream(Music music)
@ NPATCH_THREE_PATCH_HORIZONTAL
@ NPATCH_THREE_PATCH_VERTICAL
RLAPI void SetMaterialTexture(Material *material, int mapType, Texture2D texture)
RLAPI int GetRenderHeight(void)
RLAPI Font LoadFont(const char *fileName)
RLAPI void DrawRectangleRounded(Rectangle rec, float roundness, int segments, Color color)
RLAPI void BeginBlendMode(int mode)
RLAPI int TextCopy(char *dst, const char *src)
RLAPI void AttachAudioStreamProcessor(AudioStream stream, AudioCallback processor)
RLAPI void ResumeMusicStream(Music music)
RLAPI void SetSoundVolume(Sound sound, float volume)
@ FLAG_WINDOW_UNDECORATED
@ FLAG_WINDOW_TRANSPARENT
RLAPI void ImageDrawCircle(Image *dst, int centerX, int centerY, int radius, Color color)
@ TEXTURE_FILTER_ANISOTROPIC_8X
@ TEXTURE_FILTER_ANISOTROPIC_4X
@ TEXTURE_FILTER_BILINEAR
@ TEXTURE_FILTER_ANISOTROPIC_16X
@ TEXTURE_FILTER_TRILINEAR
RLAPI AudioStream LoadAudioStream(unsigned int sampleRate, unsigned int sampleSize, unsigned int channels)
RLAPI void UnloadImage(Image image)
RLAPI int GetScreenHeight(void)
RLAPI const char * GetDirectoryPath(const char *filePath)
RLAPI char * TextInsert(const char *text, const char *insert, int position)
RLAPI Vector2 GetWorldToScreen2D(Vector2 position, Camera2D camera)
void(* TraceLogCallback)(int logLevel, const char *text, va_list args)
RLAPI bool IsGestureDetected(int gesture)
RLAPI Ray GetMouseRay(Vector2 mousePosition, Camera camera)
RLAPI void ImageToPOT(Image *image, Color fill)
RLAPI int GetPixelDataSize(int width, int height, int format)
RLAPI void DrawMeshInstanced(Mesh mesh, Material material, const Matrix *transforms, int instances)
RLAPI void SetMusicPitch(Music music, float pitch)
RLAPI void DisableCursor(void)
RLAPI bool IsGamepadButtonDown(int gamepad, int button)
RLAPI void ImageResize(Image *image, int newWidth, int newHeight)
RLAPI int LoadStorageValue(unsigned int position)
RLAPI Image GenImageGradientRadial(int width, int height, float density, Color inner, Color outer)
RLAPI void DrawCircle(int centerX, int centerY, float radius, Color color)
RLAPI int GetRenderWidth(void)
RLAPI void UnloadFileText(char *text)
RLAPI void * GetWindowHandle(void)
RLAPI char * TextCodepointsToUTF8(const int *codepoints, int length)
RLAPI void ImageDrawPixel(Image *dst, int posX, int posY, Color color)
RLAPI int GetCodepoint(const char *text, int *bytesProcessed)
RLAPI void DrawRectangleLines(int posX, int posY, int width, int height, Color color)
RLAPI void UnloadFont(Font font)
RLAPI void UnloadMesh(Mesh mesh)
RLAPI void SetWindowSize(int width, int height)
RLAPI void DrawModelEx(Model model, Vector3 position, Vector3 rotationAxis, float rotationAngle, Vector3 scale, Color tint)
RLAPI void SetMusicVolume(Music music, float volume)
RLAPI void DrawPolyLinesEx(Vector2 center, int sides, float radius, float rotation, float lineThick, Color color)
RLAPI void ShowCursor(void)
RLAPI void DrawTriangleStrip3D(Vector3 *points, int pointCount, Color color)
RLAPI Mesh GenMeshCone(float radius, float height, int slices)
RLAPI const char * GetClipboardText(void)
RLAPI void ImageColorInvert(Image *image)
RLAPI bool IsMouseButtonPressed(int button)
RLAPI int GetShaderLocationAttrib(Shader shader, const char *attribName)
RLAPI void DrawTextCodepoints(Font font, const int *codepoints, int count, Vector2 position, float fontSize, float spacing, Color tint)
RLAPI void DrawEllipse(int centerX, int centerY, float radiusH, float radiusV, Color color)
RLAPI bool CheckCollisionSpheres(Vector3 center1, float radius1, Vector3 center2, float radius2)
RLAPI Color ColorAlpha(Color color, float alpha)
RLAPI int GetFileLength(const char *fileName)
RLAPI int GetMonitorRefreshRate(int monitor)
RLAPI Image GenImageColor(int width, int height, Color color)
RLAPI void SetTextureFilter(Texture2D texture, int filter)
RLAPI bool CheckCollisionPointTriangle(Vector2 point, Vector2 p1, Vector2 p2, Vector2 p3)
RLAPI bool IsWindowHidden(void)
RLAPI int GetRandomValue(int min, int max)
RLAPI const char * GetGamepadName(int gamepad)
RLAPI void SetAudioStreamPan(AudioStream stream, float pan)
RLAPI Image LoadImageFromMemory(const char *fileType, const unsigned char *fileData, int dataSize)
RLAPI void DrawRectangleRoundedLines(Rectangle rec, float roundness, int segments, float lineThick, Color color)
RLAPI bool CheckCollisionPointLine(Vector2 point, Vector2 p1, Vector2 p2, int threshold)
RLAPI void DrawPixelV(Vector2 position, Color color)
RLAPI int GetGlyphIndex(Font font, int codepoint)
RLAPI bool IsGamepadAvailable(int gamepad)
RLAPI Vector2 GetMonitorPosition(int monitor)
RLAPI bool IsAudioStreamProcessed(AudioStream stream)
RLAPI const char ** TextSplit(const char *text, char delimiter, int *count)
RLAPI BoundingBox GetMeshBoundingBox(Mesh mesh)
RLAPI void DrawLine(int startPosX, int startPosY, int endPosX, int endPosY, Color color)
RLAPI void HideCursor(void)
RLAPI void EndShaderMode(void)
RLAPI void MinimizeWindow(void)
RLAPI void EndMode2D(void)
RLAPI void DrawTextEx(Font font, const char *text, Vector2 position, float fontSize, float spacing, Color tint)
RLAPI void UnloadWaveSamples(float *samples)
RLAPI Sound LoadSoundFromWave(Wave wave)
RLAPI Sound LoadSound(const char *fileName)
RLAPI void DrawCubeWires(Vector3 position, float width, float height, float length, Color color)
RLAPI RenderTexture2D LoadRenderTexture(int width, int height)
RLAPI unsigned char * DecompressData(const unsigned char *compData, int compDataSize, int *dataSize)
RLAPI void DrawCircleGradient(int centerX, int centerY, float radius, Color color1, Color color2)
RLAPI void GenMeshTangents(Mesh *mesh)
RLAPI void DrawTexture(Texture2D texture, int posX, int posY, Color tint)
RLAPI Image LoadImageAnim(const char *fileName, int *frames)
RLAPI Mesh GenMeshSphere(float radius, int rings, int slices)
RLAPI Vector2 GetMouseDelta(void)
RLAPI void SetCameraMoveControls(int keyFront, int keyBack, int keyRight, int keyLeft, int keyUp, int keyDown)
RLAPI const char * GetFileExtension(const char *fileName)
RLAPI char * EncodeDataBase64(const unsigned char *data, int dataSize, int *outputSize)
RLAPI Image ImageText(const char *text, int fontSize, Color color)
RLAPI Texture2D LoadTextureFromImage(Image image)
RLAPI Font LoadFontFromMemory(const char *fileType, const unsigned char *fileData, int dataSize, int fontSize, int *fontChars, int glyphCount)
RLAPI void ImageDrawRectangleV(Image *dst, Vector2 position, Vector2 size, Color color)
RLAPI Rectangle GetCollisionRec(Rectangle rec1, Rectangle rec2)
RLAPI void DrawCircleSector(Vector2 center, float radius, float startAngle, float endAngle, int segments, Color color)
RLAPI void PlayMusicStream(Music music)
RLAPI int GetGamepadButtonPressed(void)
@ TEXTURE_WRAP_MIRROR_REPEAT
@ TEXTURE_WRAP_MIRROR_CLAMP
RLAPI void PauseAudioStream(AudioStream stream)
RLAPI void PlayAudioStream(AudioStream stream)
RLAPI GlyphInfo * LoadFontData(const unsigned char *fileData, int dataSize, int fontSize, int *fontChars, int glyphCount, int type)
RLAPI void ImageDrawText(Image *dst, const char *text, int posX, int posY, int fontSize, Color color)
RLAPI void DrawCylinder(Vector3 position, float radiusTop, float radiusBottom, float height, int slices, Color color)
RLAPI int GetTouchPointId(int index)
RLAPI void ImageCrop(Image *image, Rectangle crop)
RLAPI void DrawCircleV(Vector2 center, float radius, Color color)
RLAPI void ImageDrawLine(Image *dst, int startPosX, int startPosY, int endPosX, int endPosY, Color color)
RLAPI void DrawLineStrip(Vector2 *points, int pointCount, Color color)
RLAPI bool IsGamepadButtonPressed(int gamepad, int button)
RLAPI bool IsGamepadButtonUp(int gamepad, int button)
RLAPI void ImageColorBrightness(Image *image, int brightness)
RLAPI void DrawBillboard(Camera camera, Texture2D texture, Vector3 position, float size, Color tint)
RLAPI void MaximizeWindow(void)
RLAPI bool IsFileExtension(const char *fileName, const char *ext)
RLAPI char * LoadFileText(const char *fileName)
RLAPI float GetMusicTimePlayed(Music music)
RLAPI void DrawTextureEx(Texture2D texture, Vector2 position, float rotation, float scale, Color tint)
RLAPI Image LoadImageFromTexture(Texture2D texture)
RLAPI void DrawPoly(Vector2 center, int sides, float radius, float rotation, Color color)
RLAPI int GetMonitorPhysicalHeight(int monitor)
RLAPI Mesh GenMeshTorus(float radius, float size, int radSeg, int sides)
RLAPI Mesh GenMeshCubicmap(Image cubicmap, Vector3 cubeSize)
RLAPI void DrawRingLines(Vector2 center, float innerRadius, float outerRadius, float startAngle, float endAngle, int segments, Color color)
RLAPI void SetSaveFileDataCallback(SaveFileDataCallback callback)
RLAPI void TextAppend(char *text, const char *append, int *position)
RLAPI bool IsCursorOnScreen(void)
RLAPI bool CheckCollisionCircleRec(Vector2 center, float radius, Rectangle rec)
RLAPI bool ExportFontAsCode(Font font, const char *fileName)
RLAPI Vector4 ColorNormalize(Color color)
RLAPI void SetAudioStreamPitch(AudioStream stream, float pitch)
RLAPI void ImageColorContrast(Image *image, float contrast)
RLAPI Color GetColor(unsigned int hexValue)
RLAPI void SetCameraMode(Camera camera, int mode)
RenderTexture RenderTexture2D
RLAPI void ImageResizeNN(Image *image, int newWidth, int newHeight)
RLAPI void EnableCursor(void)
RLAPI void DrawRectanglePro(Rectangle rec, Vector2 origin, float rotation, Color color)
RLAPI void DrawLineBezier(Vector2 startPos, Vector2 endPos, float thick, Color color)
RLAPI Vector2 GetTouchPosition(int index)
RLAPI Image GenImageWhiteNoise(int width, int height, float factor)
RLAPI unsigned int TextLength(const char *text)
RLAPI void SetMousePosition(int x, int y)
RLAPI Rectangle GetGlyphAtlasRec(Font font, int codepoint)
RLAPI int GetKeyPressed(void)
RLAPI bool CheckCollisionBoxes(BoundingBox box1, BoundingBox box2)
RLAPI void SetShaderValue(Shader shader, int locIndex, const void *value, int uniformType)
RLAPI void ImageAlphaClear(Image *image, Color color, float threshold)
rAudioProcessor * processor
float lensDistortionValues[4]
float lensSeparationDistance
float interpupillaryDistance
float chromaAbCorrection[4]
float eyeToScreenDistance
float leftScreenCenter[2]
float rightScreenCenter[2]