rtext: added functions for camel case and snake case

This commit is contained in:
IoIxD 2024-06-02 20:35:27 -07:00
parent 11202bf299
commit e66ea61507
6 changed files with 2166 additions and 1826 deletions

View File

@ -9479,6 +9479,17 @@
}
]
},
{
"name": "TextToSnake",
"description": "Get Snake case notation version of provided string",
"returnType": "const char *",
"params": [
{
"type": "const char *",
"name": "text"
}
]
},
{
"name": "TextToInteger",
"description": "Get integer value from text (negative values not supported)",

View File

@ -6776,6 +6776,14 @@ return {
{type = "const char *", name = "text"}
}
},
{
name = "TextToSnake",
description = "Get Snake case notation version of provided string",
returnType = "const char *",
params = {
{type = "const char *", name = "text"}
}
},
{
name = "TextToInteger",
description = "Get integer value from text (negative values not supported)",

View File

@ -984,7 +984,7 @@ Callback 006: AudioCallback() (2 input parameters)
Param[1]: bufferData (type: void *)
Param[2]: frames (type: unsigned int)
Functions found: 564
Functions found: 565
Function 001: InitWindow() (3 input parameters)
Name: InitWindow
@ -3641,30 +3641,35 @@ Function 423: TextToPascal() (1 input parameters)
Return type: const char *
Description: Get Pascal case notation version of provided string
Param[1]: text (type: const char *)
Function 424: TextToInteger() (1 input parameters)
Function 424: TextToSnake() (1 input parameters)
Name: TextToSnake
Return type: const char *
Description: Get Snake case notation version of provided string
Param[1]: text (type: const char *)
Function 425: TextToInteger() (1 input parameters)
Name: TextToInteger
Return type: int
Description: Get integer value from text (negative values not supported)
Param[1]: text (type: const char *)
Function 425: TextToFloat() (1 input parameters)
Function 426: TextToFloat() (1 input parameters)
Name: TextToFloat
Return type: float
Description: Get float value from text (negative values not supported)
Param[1]: text (type: const char *)
Function 426: DrawLine3D() (3 input parameters)
Function 427: DrawLine3D() (3 input parameters)
Name: DrawLine3D
Return type: void
Description: Draw a line in 3D world space
Param[1]: startPos (type: Vector3)
Param[2]: endPos (type: Vector3)
Param[3]: color (type: Color)
Function 427: DrawPoint3D() (2 input parameters)
Function 428: DrawPoint3D() (2 input parameters)
Name: DrawPoint3D
Return type: void
Description: Draw a point in 3D space, actually a small line
Param[1]: position (type: Vector3)
Param[2]: color (type: Color)
Function 428: DrawCircle3D() (5 input parameters)
Function 429: DrawCircle3D() (5 input parameters)
Name: DrawCircle3D
Return type: void
Description: Draw a circle in 3D world space
@ -3673,7 +3678,7 @@ Function 428: DrawCircle3D() (5 input parameters)
Param[3]: rotationAxis (type: Vector3)
Param[4]: rotationAngle (type: float)
Param[5]: color (type: Color)
Function 429: DrawTriangle3D() (4 input parameters)
Function 430: DrawTriangle3D() (4 input parameters)
Name: DrawTriangle3D
Return type: void
Description: Draw a color-filled triangle (vertex in counter-clockwise order!)
@ -3681,14 +3686,14 @@ Function 429: DrawTriangle3D() (4 input parameters)
Param[2]: v2 (type: Vector3)
Param[3]: v3 (type: Vector3)
Param[4]: color (type: Color)
Function 430: DrawTriangleStrip3D() (3 input parameters)
Function 431: DrawTriangleStrip3D() (3 input parameters)
Name: DrawTriangleStrip3D
Return type: void
Description: Draw a triangle strip defined by points
Param[1]: points (type: Vector3 *)
Param[2]: pointCount (type: int)
Param[3]: color (type: Color)
Function 431: DrawCube() (5 input parameters)
Function 432: DrawCube() (5 input parameters)
Name: DrawCube
Return type: void
Description: Draw cube
@ -3697,14 +3702,14 @@ Function 431: DrawCube() (5 input parameters)
Param[3]: height (type: float)
Param[4]: length (type: float)
Param[5]: color (type: Color)
Function 432: DrawCubeV() (3 input parameters)
Function 433: DrawCubeV() (3 input parameters)
Name: DrawCubeV
Return type: void
Description: Draw cube (Vector version)
Param[1]: position (type: Vector3)
Param[2]: size (type: Vector3)
Param[3]: color (type: Color)
Function 433: DrawCubeWires() (5 input parameters)
Function 434: DrawCubeWires() (5 input parameters)
Name: DrawCubeWires
Return type: void
Description: Draw cube wires
@ -3713,21 +3718,21 @@ Function 433: DrawCubeWires() (5 input parameters)
Param[3]: height (type: float)
Param[4]: length (type: float)
Param[5]: color (type: Color)
Function 434: DrawCubeWiresV() (3 input parameters)
Function 435: DrawCubeWiresV() (3 input parameters)
Name: DrawCubeWiresV
Return type: void
Description: Draw cube wires (Vector version)
Param[1]: position (type: Vector3)
Param[2]: size (type: Vector3)
Param[3]: color (type: Color)
Function 435: DrawSphere() (3 input parameters)
Function 436: DrawSphere() (3 input parameters)
Name: DrawSphere
Return type: void
Description: Draw sphere
Param[1]: centerPos (type: Vector3)
Param[2]: radius (type: float)
Param[3]: color (type: Color)
Function 436: DrawSphereEx() (5 input parameters)
Function 437: DrawSphereEx() (5 input parameters)
Name: DrawSphereEx
Return type: void
Description: Draw sphere with extended parameters
@ -3736,7 +3741,7 @@ Function 436: DrawSphereEx() (5 input parameters)
Param[3]: rings (type: int)
Param[4]: slices (type: int)
Param[5]: color (type: Color)
Function 437: DrawSphereWires() (5 input parameters)
Function 438: DrawSphereWires() (5 input parameters)
Name: DrawSphereWires
Return type: void
Description: Draw sphere wires
@ -3745,7 +3750,7 @@ Function 437: DrawSphereWires() (5 input parameters)
Param[3]: rings (type: int)
Param[4]: slices (type: int)
Param[5]: color (type: Color)
Function 438: DrawCylinder() (6 input parameters)
Function 439: DrawCylinder() (6 input parameters)
Name: DrawCylinder
Return type: void
Description: Draw a cylinder/cone
@ -3755,7 +3760,7 @@ Function 438: DrawCylinder() (6 input parameters)
Param[4]: height (type: float)
Param[5]: slices (type: int)
Param[6]: color (type: Color)
Function 439: DrawCylinderEx() (6 input parameters)
Function 440: DrawCylinderEx() (6 input parameters)
Name: DrawCylinderEx
Return type: void
Description: Draw a cylinder with base at startPos and top at endPos
@ -3765,7 +3770,7 @@ Function 439: DrawCylinderEx() (6 input parameters)
Param[4]: endRadius (type: float)
Param[5]: sides (type: int)
Param[6]: color (type: Color)
Function 440: DrawCylinderWires() (6 input parameters)
Function 441: DrawCylinderWires() (6 input parameters)
Name: DrawCylinderWires
Return type: void
Description: Draw a cylinder/cone wires
@ -3775,7 +3780,7 @@ Function 440: DrawCylinderWires() (6 input parameters)
Param[4]: height (type: float)
Param[5]: slices (type: int)
Param[6]: color (type: Color)
Function 441: DrawCylinderWiresEx() (6 input parameters)
Function 442: DrawCylinderWiresEx() (6 input parameters)
Name: DrawCylinderWiresEx
Return type: void
Description: Draw a cylinder wires with base at startPos and top at endPos
@ -3785,7 +3790,7 @@ Function 441: DrawCylinderWiresEx() (6 input parameters)
Param[4]: endRadius (type: float)
Param[5]: sides (type: int)
Param[6]: color (type: Color)
Function 442: DrawCapsule() (6 input parameters)
Function 443: DrawCapsule() (6 input parameters)
Name: DrawCapsule
Return type: void
Description: Draw a capsule with the center of its sphere caps at startPos and endPos
@ -3795,7 +3800,7 @@ Function 442: DrawCapsule() (6 input parameters)
Param[4]: slices (type: int)
Param[5]: rings (type: int)
Param[6]: color (type: Color)
Function 443: DrawCapsuleWires() (6 input parameters)
Function 444: DrawCapsuleWires() (6 input parameters)
Name: DrawCapsuleWires
Return type: void
Description: Draw capsule wireframe with the center of its sphere caps at startPos and endPos
@ -3805,51 +3810,51 @@ Function 443: DrawCapsuleWires() (6 input parameters)
Param[4]: slices (type: int)
Param[5]: rings (type: int)
Param[6]: color (type: Color)
Function 444: DrawPlane() (3 input parameters)
Function 445: DrawPlane() (3 input parameters)
Name: DrawPlane
Return type: void
Description: Draw a plane XZ
Param[1]: centerPos (type: Vector3)
Param[2]: size (type: Vector2)
Param[3]: color (type: Color)
Function 445: DrawRay() (2 input parameters)
Function 446: DrawRay() (2 input parameters)
Name: DrawRay
Return type: void
Description: Draw a ray line
Param[1]: ray (type: Ray)
Param[2]: color (type: Color)
Function 446: DrawGrid() (2 input parameters)
Function 447: DrawGrid() (2 input parameters)
Name: DrawGrid
Return type: void
Description: Draw a grid (centered at (0, 0, 0))
Param[1]: slices (type: int)
Param[2]: spacing (type: float)
Function 447: LoadModel() (1 input parameters)
Function 448: LoadModel() (1 input parameters)
Name: LoadModel
Return type: Model
Description: Load model from files (meshes and materials)
Param[1]: fileName (type: const char *)
Function 448: LoadModelFromMesh() (1 input parameters)
Function 449: LoadModelFromMesh() (1 input parameters)
Name: LoadModelFromMesh
Return type: Model
Description: Load model from generated mesh (default material)
Param[1]: mesh (type: Mesh)
Function 449: IsModelReady() (1 input parameters)
Function 450: IsModelReady() (1 input parameters)
Name: IsModelReady
Return type: bool
Description: Check if a model is ready
Param[1]: model (type: Model)
Function 450: UnloadModel() (1 input parameters)
Function 451: UnloadModel() (1 input parameters)
Name: UnloadModel
Return type: void
Description: Unload model (including meshes) from memory (RAM and/or VRAM)
Param[1]: model (type: Model)
Function 451: GetModelBoundingBox() (1 input parameters)
Function 452: GetModelBoundingBox() (1 input parameters)
Name: GetModelBoundingBox
Return type: BoundingBox
Description: Compute model bounding box limits (considers all meshes)
Param[1]: model (type: Model)
Function 452: DrawModel() (4 input parameters)
Function 453: DrawModel() (4 input parameters)
Name: DrawModel
Return type: void
Description: Draw a model (with texture if set)
@ -3857,7 +3862,7 @@ Function 452: DrawModel() (4 input parameters)
Param[2]: position (type: Vector3)
Param[3]: scale (type: float)
Param[4]: tint (type: Color)
Function 453: DrawModelEx() (6 input parameters)
Function 454: DrawModelEx() (6 input parameters)
Name: DrawModelEx
Return type: void
Description: Draw a model with extended parameters
@ -3867,7 +3872,7 @@ Function 453: DrawModelEx() (6 input parameters)
Param[4]: rotationAngle (type: float)
Param[5]: scale (type: Vector3)
Param[6]: tint (type: Color)
Function 454: DrawModelWires() (4 input parameters)
Function 455: DrawModelWires() (4 input parameters)
Name: DrawModelWires
Return type: void
Description: Draw a model wires (with texture if set)
@ -3875,7 +3880,7 @@ Function 454: DrawModelWires() (4 input parameters)
Param[2]: position (type: Vector3)
Param[3]: scale (type: float)
Param[4]: tint (type: Color)
Function 455: DrawModelWiresEx() (6 input parameters)
Function 456: DrawModelWiresEx() (6 input parameters)
Name: DrawModelWiresEx
Return type: void
Description: Draw a model wires (with texture if set) with extended parameters
@ -3885,13 +3890,13 @@ Function 455: DrawModelWiresEx() (6 input parameters)
Param[4]: rotationAngle (type: float)
Param[5]: scale (type: Vector3)
Param[6]: tint (type: Color)
Function 456: DrawBoundingBox() (2 input parameters)
Function 457: DrawBoundingBox() (2 input parameters)
Name: DrawBoundingBox
Return type: void
Description: Draw bounding box (wires)
Param[1]: box (type: BoundingBox)
Param[2]: color (type: Color)
Function 457: DrawBillboard() (5 input parameters)
Function 458: DrawBillboard() (5 input parameters)
Name: DrawBillboard
Return type: void
Description: Draw a billboard texture
@ -3900,7 +3905,7 @@ Function 457: DrawBillboard() (5 input parameters)
Param[3]: position (type: Vector3)
Param[4]: size (type: float)
Param[5]: tint (type: Color)
Function 458: DrawBillboardRec() (6 input parameters)
Function 459: DrawBillboardRec() (6 input parameters)
Name: DrawBillboardRec
Return type: void
Description: Draw a billboard texture defined by source
@ -3910,7 +3915,7 @@ Function 458: DrawBillboardRec() (6 input parameters)
Param[4]: position (type: Vector3)
Param[5]: size (type: Vector2)
Param[6]: tint (type: Color)
Function 459: DrawBillboardPro() (9 input parameters)
Function 460: DrawBillboardPro() (9 input parameters)
Name: DrawBillboardPro
Return type: void
Description: Draw a billboard texture defined by source and rotation
@ -3923,13 +3928,13 @@ Function 459: DrawBillboardPro() (9 input parameters)
Param[7]: origin (type: Vector2)
Param[8]: rotation (type: float)
Param[9]: tint (type: Color)
Function 460: UploadMesh() (2 input parameters)
Function 461: UploadMesh() (2 input parameters)
Name: UploadMesh
Return type: void
Description: Upload mesh vertex data in GPU and provide VAO/VBO ids
Param[1]: mesh (type: Mesh *)
Param[2]: dynamic (type: bool)
Function 461: UpdateMeshBuffer() (5 input parameters)
Function 462: UpdateMeshBuffer() (5 input parameters)
Name: UpdateMeshBuffer
Return type: void
Description: Update mesh vertex data in GPU for a specific buffer index
@ -3938,19 +3943,19 @@ Function 461: UpdateMeshBuffer() (5 input parameters)
Param[3]: data (type: const void *)
Param[4]: dataSize (type: int)
Param[5]: offset (type: int)
Function 462: UnloadMesh() (1 input parameters)
Function 463: UnloadMesh() (1 input parameters)
Name: UnloadMesh
Return type: void
Description: Unload mesh data from CPU and GPU
Param[1]: mesh (type: Mesh)
Function 463: DrawMesh() (3 input parameters)
Function 464: DrawMesh() (3 input parameters)
Name: DrawMesh
Return type: void
Description: Draw a 3d mesh with material and transform
Param[1]: mesh (type: Mesh)
Param[2]: material (type: Material)
Param[3]: transform (type: Matrix)
Function 464: DrawMeshInstanced() (4 input parameters)
Function 465: DrawMeshInstanced() (4 input parameters)
Name: DrawMeshInstanced
Return type: void
Description: Draw multiple mesh instances with material and different transforms
@ -3958,35 +3963,35 @@ Function 464: DrawMeshInstanced() (4 input parameters)
Param[2]: material (type: Material)
Param[3]: transforms (type: const Matrix *)
Param[4]: instances (type: int)
Function 465: GetMeshBoundingBox() (1 input parameters)
Function 466: GetMeshBoundingBox() (1 input parameters)
Name: GetMeshBoundingBox
Return type: BoundingBox
Description: Compute mesh bounding box limits
Param[1]: mesh (type: Mesh)
Function 466: GenMeshTangents() (1 input parameters)
Function 467: GenMeshTangents() (1 input parameters)
Name: GenMeshTangents
Return type: void
Description: Compute mesh tangents
Param[1]: mesh (type: Mesh *)
Function 467: ExportMesh() (2 input parameters)
Function 468: ExportMesh() (2 input parameters)
Name: ExportMesh
Return type: bool
Description: Export mesh data to file, returns true on success
Param[1]: mesh (type: Mesh)
Param[2]: fileName (type: const char *)
Function 468: ExportMeshAsCode() (2 input parameters)
Function 469: ExportMeshAsCode() (2 input parameters)
Name: ExportMeshAsCode
Return type: bool
Description: Export mesh as code file (.h) defining multiple arrays of vertex attributes
Param[1]: mesh (type: Mesh)
Param[2]: fileName (type: const char *)
Function 469: GenMeshPoly() (2 input parameters)
Function 470: GenMeshPoly() (2 input parameters)
Name: GenMeshPoly
Return type: Mesh
Description: Generate polygonal mesh
Param[1]: sides (type: int)
Param[2]: radius (type: float)
Function 470: GenMeshPlane() (4 input parameters)
Function 471: GenMeshPlane() (4 input parameters)
Name: GenMeshPlane
Return type: Mesh
Description: Generate plane mesh (with subdivisions)
@ -3994,42 +3999,42 @@ Function 470: GenMeshPlane() (4 input parameters)
Param[2]: length (type: float)
Param[3]: resX (type: int)
Param[4]: resZ (type: int)
Function 471: GenMeshCube() (3 input parameters)
Function 472: GenMeshCube() (3 input parameters)
Name: GenMeshCube
Return type: Mesh
Description: Generate cuboid mesh
Param[1]: width (type: float)
Param[2]: height (type: float)
Param[3]: length (type: float)
Function 472: GenMeshSphere() (3 input parameters)
Function 473: GenMeshSphere() (3 input parameters)
Name: GenMeshSphere
Return type: Mesh
Description: Generate sphere mesh (standard sphere)
Param[1]: radius (type: float)
Param[2]: rings (type: int)
Param[3]: slices (type: int)
Function 473: GenMeshHemiSphere() (3 input parameters)
Function 474: GenMeshHemiSphere() (3 input parameters)
Name: GenMeshHemiSphere
Return type: Mesh
Description: Generate half-sphere mesh (no bottom cap)
Param[1]: radius (type: float)
Param[2]: rings (type: int)
Param[3]: slices (type: int)
Function 474: GenMeshCylinder() (3 input parameters)
Function 475: GenMeshCylinder() (3 input parameters)
Name: GenMeshCylinder
Return type: Mesh
Description: Generate cylinder mesh
Param[1]: radius (type: float)
Param[2]: height (type: float)
Param[3]: slices (type: int)
Function 475: GenMeshCone() (3 input parameters)
Function 476: GenMeshCone() (3 input parameters)
Name: GenMeshCone
Return type: Mesh
Description: Generate cone/pyramid mesh
Param[1]: radius (type: float)
Param[2]: height (type: float)
Param[3]: slices (type: int)
Function 476: GenMeshTorus() (4 input parameters)
Function 477: GenMeshTorus() (4 input parameters)
Name: GenMeshTorus
Return type: Mesh
Description: Generate torus mesh
@ -4037,7 +4042,7 @@ Function 476: GenMeshTorus() (4 input parameters)
Param[2]: size (type: float)
Param[3]: radSeg (type: int)
Param[4]: sides (type: int)
Function 477: GenMeshKnot() (4 input parameters)
Function 478: GenMeshKnot() (4 input parameters)
Name: GenMeshKnot
Return type: Mesh
Description: Generate trefoil knot mesh
@ -4045,84 +4050,84 @@ Function 477: GenMeshKnot() (4 input parameters)
Param[2]: size (type: float)
Param[3]: radSeg (type: int)
Param[4]: sides (type: int)
Function 478: GenMeshHeightmap() (2 input parameters)
Function 479: GenMeshHeightmap() (2 input parameters)
Name: GenMeshHeightmap
Return type: Mesh
Description: Generate heightmap mesh from image data
Param[1]: heightmap (type: Image)
Param[2]: size (type: Vector3)
Function 479: GenMeshCubicmap() (2 input parameters)
Function 480: GenMeshCubicmap() (2 input parameters)
Name: GenMeshCubicmap
Return type: Mesh
Description: Generate cubes-based map mesh from image data
Param[1]: cubicmap (type: Image)
Param[2]: cubeSize (type: Vector3)
Function 480: LoadMaterials() (2 input parameters)
Function 481: LoadMaterials() (2 input parameters)
Name: LoadMaterials
Return type: Material *
Description: Load materials from model file
Param[1]: fileName (type: const char *)
Param[2]: materialCount (type: int *)
Function 481: LoadMaterialDefault() (0 input parameters)
Function 482: LoadMaterialDefault() (0 input parameters)
Name: LoadMaterialDefault
Return type: Material
Description: Load default material (Supports: DIFFUSE, SPECULAR, NORMAL maps)
No input parameters
Function 482: IsMaterialReady() (1 input parameters)
Function 483: IsMaterialReady() (1 input parameters)
Name: IsMaterialReady
Return type: bool
Description: Check if a material is ready
Param[1]: material (type: Material)
Function 483: UnloadMaterial() (1 input parameters)
Function 484: UnloadMaterial() (1 input parameters)
Name: UnloadMaterial
Return type: void
Description: Unload material from GPU memory (VRAM)
Param[1]: material (type: Material)
Function 484: SetMaterialTexture() (3 input parameters)
Function 485: SetMaterialTexture() (3 input parameters)
Name: SetMaterialTexture
Return type: void
Description: Set texture for a material map type (MATERIAL_MAP_DIFFUSE, MATERIAL_MAP_SPECULAR...)
Param[1]: material (type: Material *)
Param[2]: mapType (type: int)
Param[3]: texture (type: Texture2D)
Function 485: SetModelMeshMaterial() (3 input parameters)
Function 486: SetModelMeshMaterial() (3 input parameters)
Name: SetModelMeshMaterial
Return type: void
Description: Set material for a mesh
Param[1]: model (type: Model *)
Param[2]: meshId (type: int)
Param[3]: materialId (type: int)
Function 486: LoadModelAnimations() (2 input parameters)
Function 487: LoadModelAnimations() (2 input parameters)
Name: LoadModelAnimations
Return type: ModelAnimation *
Description: Load model animations from file
Param[1]: fileName (type: const char *)
Param[2]: animCount (type: int *)
Function 487: UpdateModelAnimation() (3 input parameters)
Function 488: UpdateModelAnimation() (3 input parameters)
Name: UpdateModelAnimation
Return type: void
Description: Update model animation pose
Param[1]: model (type: Model)
Param[2]: anim (type: ModelAnimation)
Param[3]: frame (type: int)
Function 488: UnloadModelAnimation() (1 input parameters)
Function 489: UnloadModelAnimation() (1 input parameters)
Name: UnloadModelAnimation
Return type: void
Description: Unload animation data
Param[1]: anim (type: ModelAnimation)
Function 489: UnloadModelAnimations() (2 input parameters)
Function 490: UnloadModelAnimations() (2 input parameters)
Name: UnloadModelAnimations
Return type: void
Description: Unload animation array data
Param[1]: animations (type: ModelAnimation *)
Param[2]: animCount (type: int)
Function 490: IsModelAnimationValid() (2 input parameters)
Function 491: IsModelAnimationValid() (2 input parameters)
Name: IsModelAnimationValid
Return type: bool
Description: Check model animation skeleton match
Param[1]: model (type: Model)
Param[2]: anim (type: ModelAnimation)
Function 491: CheckCollisionSpheres() (4 input parameters)
Function 492: CheckCollisionSpheres() (4 input parameters)
Name: CheckCollisionSpheres
Return type: bool
Description: Check collision between two spheres
@ -4130,40 +4135,40 @@ Function 491: CheckCollisionSpheres() (4 input parameters)
Param[2]: radius1 (type: float)
Param[3]: center2 (type: Vector3)
Param[4]: radius2 (type: float)
Function 492: CheckCollisionBoxes() (2 input parameters)
Function 493: CheckCollisionBoxes() (2 input parameters)
Name: CheckCollisionBoxes
Return type: bool
Description: Check collision between two bounding boxes
Param[1]: box1 (type: BoundingBox)
Param[2]: box2 (type: BoundingBox)
Function 493: CheckCollisionBoxSphere() (3 input parameters)
Function 494: CheckCollisionBoxSphere() (3 input parameters)
Name: CheckCollisionBoxSphere
Return type: bool
Description: Check collision between box and sphere
Param[1]: box (type: BoundingBox)
Param[2]: center (type: Vector3)
Param[3]: radius (type: float)
Function 494: GetRayCollisionSphere() (3 input parameters)
Function 495: GetRayCollisionSphere() (3 input parameters)
Name: GetRayCollisionSphere
Return type: RayCollision
Description: Get collision info between ray and sphere
Param[1]: ray (type: Ray)
Param[2]: center (type: Vector3)
Param[3]: radius (type: float)
Function 495: GetRayCollisionBox() (2 input parameters)
Function 496: GetRayCollisionBox() (2 input parameters)
Name: GetRayCollisionBox
Return type: RayCollision
Description: Get collision info between ray and box
Param[1]: ray (type: Ray)
Param[2]: box (type: BoundingBox)
Function 496: GetRayCollisionMesh() (3 input parameters)
Function 497: GetRayCollisionMesh() (3 input parameters)
Name: GetRayCollisionMesh
Return type: RayCollision
Description: Get collision info between ray and mesh
Param[1]: ray (type: Ray)
Param[2]: mesh (type: Mesh)
Param[3]: transform (type: Matrix)
Function 497: GetRayCollisionTriangle() (4 input parameters)
Function 498: GetRayCollisionTriangle() (4 input parameters)
Name: GetRayCollisionTriangle
Return type: RayCollision
Description: Get collision info between ray and triangle
@ -4171,7 +4176,7 @@ Function 497: GetRayCollisionTriangle() (4 input parameters)
Param[2]: p1 (type: Vector3)
Param[3]: p2 (type: Vector3)
Param[4]: p3 (type: Vector3)
Function 498: GetRayCollisionQuad() (5 input parameters)
Function 499: GetRayCollisionQuad() (5 input parameters)
Name: GetRayCollisionQuad
Return type: RayCollision
Description: Get collision info between ray and quad
@ -4180,158 +4185,158 @@ Function 498: GetRayCollisionQuad() (5 input parameters)
Param[3]: p2 (type: Vector3)
Param[4]: p3 (type: Vector3)
Param[5]: p4 (type: Vector3)
Function 499: InitAudioDevice() (0 input parameters)
Function 500: InitAudioDevice() (0 input parameters)
Name: InitAudioDevice
Return type: void
Description: Initialize audio device and context
No input parameters
Function 500: CloseAudioDevice() (0 input parameters)
Function 501: CloseAudioDevice() (0 input parameters)
Name: CloseAudioDevice
Return type: void
Description: Close the audio device and context
No input parameters
Function 501: IsAudioDeviceReady() (0 input parameters)
Function 502: IsAudioDeviceReady() (0 input parameters)
Name: IsAudioDeviceReady
Return type: bool
Description: Check if audio device has been initialized successfully
No input parameters
Function 502: SetMasterVolume() (1 input parameters)
Function 503: SetMasterVolume() (1 input parameters)
Name: SetMasterVolume
Return type: void
Description: Set master volume (listener)
Param[1]: volume (type: float)
Function 503: GetMasterVolume() (0 input parameters)
Function 504: GetMasterVolume() (0 input parameters)
Name: GetMasterVolume
Return type: float
Description: Get master volume (listener)
No input parameters
Function 504: LoadWave() (1 input parameters)
Function 505: LoadWave() (1 input parameters)
Name: LoadWave
Return type: Wave
Description: Load wave data from file
Param[1]: fileName (type: const char *)
Function 505: LoadWaveFromMemory() (3 input parameters)
Function 506: LoadWaveFromMemory() (3 input parameters)
Name: LoadWaveFromMemory
Return type: Wave
Description: Load wave from memory buffer, fileType refers to extension: i.e. '.wav'
Param[1]: fileType (type: const char *)
Param[2]: fileData (type: const unsigned char *)
Param[3]: dataSize (type: int)
Function 506: IsWaveReady() (1 input parameters)
Function 507: IsWaveReady() (1 input parameters)
Name: IsWaveReady
Return type: bool
Description: Checks if wave data is ready
Param[1]: wave (type: Wave)
Function 507: LoadSound() (1 input parameters)
Function 508: LoadSound() (1 input parameters)
Name: LoadSound
Return type: Sound
Description: Load sound from file
Param[1]: fileName (type: const char *)
Function 508: LoadSoundFromWave() (1 input parameters)
Function 509: LoadSoundFromWave() (1 input parameters)
Name: LoadSoundFromWave
Return type: Sound
Description: Load sound from wave data
Param[1]: wave (type: Wave)
Function 509: LoadSoundAlias() (1 input parameters)
Function 510: LoadSoundAlias() (1 input parameters)
Name: LoadSoundAlias
Return type: Sound
Description: Create a new sound that shares the same sample data as the source sound, does not own the sound data
Param[1]: source (type: Sound)
Function 510: IsSoundReady() (1 input parameters)
Function 511: IsSoundReady() (1 input parameters)
Name: IsSoundReady
Return type: bool
Description: Checks if a sound is ready
Param[1]: sound (type: Sound)
Function 511: UpdateSound() (3 input parameters)
Function 512: UpdateSound() (3 input parameters)
Name: UpdateSound
Return type: void
Description: Update sound buffer with new data
Param[1]: sound (type: Sound)
Param[2]: data (type: const void *)
Param[3]: sampleCount (type: int)
Function 512: UnloadWave() (1 input parameters)
Function 513: UnloadWave() (1 input parameters)
Name: UnloadWave
Return type: void
Description: Unload wave data
Param[1]: wave (type: Wave)
Function 513: UnloadSound() (1 input parameters)
Function 514: UnloadSound() (1 input parameters)
Name: UnloadSound
Return type: void
Description: Unload sound
Param[1]: sound (type: Sound)
Function 514: UnloadSoundAlias() (1 input parameters)
Function 515: UnloadSoundAlias() (1 input parameters)
Name: UnloadSoundAlias
Return type: void
Description: Unload a sound alias (does not deallocate sample data)
Param[1]: alias (type: Sound)
Function 515: ExportWave() (2 input parameters)
Function 516: ExportWave() (2 input parameters)
Name: ExportWave
Return type: bool
Description: Export wave data to file, returns true on success
Param[1]: wave (type: Wave)
Param[2]: fileName (type: const char *)
Function 516: ExportWaveAsCode() (2 input parameters)
Function 517: ExportWaveAsCode() (2 input parameters)
Name: ExportWaveAsCode
Return type: bool
Description: Export wave sample data to code (.h), returns true on success
Param[1]: wave (type: Wave)
Param[2]: fileName (type: const char *)
Function 517: PlaySound() (1 input parameters)
Function 518: PlaySound() (1 input parameters)
Name: PlaySound
Return type: void
Description: Play a sound
Param[1]: sound (type: Sound)
Function 518: StopSound() (1 input parameters)
Function 519: StopSound() (1 input parameters)
Name: StopSound
Return type: void
Description: Stop playing a sound
Param[1]: sound (type: Sound)
Function 519: PauseSound() (1 input parameters)
Function 520: PauseSound() (1 input parameters)
Name: PauseSound
Return type: void
Description: Pause a sound
Param[1]: sound (type: Sound)
Function 520: ResumeSound() (1 input parameters)
Function 521: ResumeSound() (1 input parameters)
Name: ResumeSound
Return type: void
Description: Resume a paused sound
Param[1]: sound (type: Sound)
Function 521: IsSoundPlaying() (1 input parameters)
Function 522: IsSoundPlaying() (1 input parameters)
Name: IsSoundPlaying
Return type: bool
Description: Check if a sound is currently playing
Param[1]: sound (type: Sound)
Function 522: SetSoundVolume() (2 input parameters)
Function 523: SetSoundVolume() (2 input parameters)
Name: SetSoundVolume
Return type: void
Description: Set volume for a sound (1.0 is max level)
Param[1]: sound (type: Sound)
Param[2]: volume (type: float)
Function 523: SetSoundPitch() (2 input parameters)
Function 524: SetSoundPitch() (2 input parameters)
Name: SetSoundPitch
Return type: void
Description: Set pitch for a sound (1.0 is base level)
Param[1]: sound (type: Sound)
Param[2]: pitch (type: float)
Function 524: SetSoundPan() (2 input parameters)
Function 525: SetSoundPan() (2 input parameters)
Name: SetSoundPan
Return type: void
Description: Set pan for a sound (0.5 is center)
Param[1]: sound (type: Sound)
Param[2]: pan (type: float)
Function 525: WaveCopy() (1 input parameters)
Function 526: WaveCopy() (1 input parameters)
Name: WaveCopy
Return type: Wave
Description: Copy a wave to a new wave
Param[1]: wave (type: Wave)
Function 526: WaveCrop() (3 input parameters)
Function 527: WaveCrop() (3 input parameters)
Name: WaveCrop
Return type: void
Description: Crop a wave to defined frames range
Param[1]: wave (type: Wave *)
Param[2]: initFrame (type: int)
Param[3]: finalFrame (type: int)
Function 527: WaveFormat() (4 input parameters)
Function 528: WaveFormat() (4 input parameters)
Name: WaveFormat
Return type: void
Description: Convert wave data to desired format
@ -4339,203 +4344,203 @@ Function 527: WaveFormat() (4 input parameters)
Param[2]: sampleRate (type: int)
Param[3]: sampleSize (type: int)
Param[4]: channels (type: int)
Function 528: LoadWaveSamples() (1 input parameters)
Function 529: LoadWaveSamples() (1 input parameters)
Name: LoadWaveSamples
Return type: float *
Description: Load samples data from wave as a 32bit float data array
Param[1]: wave (type: Wave)
Function 529: UnloadWaveSamples() (1 input parameters)
Function 530: UnloadWaveSamples() (1 input parameters)
Name: UnloadWaveSamples
Return type: void
Description: Unload samples data loaded with LoadWaveSamples()
Param[1]: samples (type: float *)
Function 530: LoadMusicStream() (1 input parameters)
Function 531: LoadMusicStream() (1 input parameters)
Name: LoadMusicStream
Return type: Music
Description: Load music stream from file
Param[1]: fileName (type: const char *)
Function 531: LoadMusicStreamFromMemory() (3 input parameters)
Function 532: LoadMusicStreamFromMemory() (3 input parameters)
Name: LoadMusicStreamFromMemory
Return type: Music
Description: Load music stream from data
Param[1]: fileType (type: const char *)
Param[2]: data (type: const unsigned char *)
Param[3]: dataSize (type: int)
Function 532: IsMusicReady() (1 input parameters)
Function 533: IsMusicReady() (1 input parameters)
Name: IsMusicReady
Return type: bool
Description: Checks if a music stream is ready
Param[1]: music (type: Music)
Function 533: UnloadMusicStream() (1 input parameters)
Function 534: UnloadMusicStream() (1 input parameters)
Name: UnloadMusicStream
Return type: void
Description: Unload music stream
Param[1]: music (type: Music)
Function 534: PlayMusicStream() (1 input parameters)
Function 535: PlayMusicStream() (1 input parameters)
Name: PlayMusicStream
Return type: void
Description: Start music playing
Param[1]: music (type: Music)
Function 535: IsMusicStreamPlaying() (1 input parameters)
Function 536: IsMusicStreamPlaying() (1 input parameters)
Name: IsMusicStreamPlaying
Return type: bool
Description: Check if music is playing
Param[1]: music (type: Music)
Function 536: UpdateMusicStream() (1 input parameters)
Function 537: UpdateMusicStream() (1 input parameters)
Name: UpdateMusicStream
Return type: void
Description: Updates buffers for music streaming
Param[1]: music (type: Music)
Function 537: StopMusicStream() (1 input parameters)
Function 538: StopMusicStream() (1 input parameters)
Name: StopMusicStream
Return type: void
Description: Stop music playing
Param[1]: music (type: Music)
Function 538: PauseMusicStream() (1 input parameters)
Function 539: PauseMusicStream() (1 input parameters)
Name: PauseMusicStream
Return type: void
Description: Pause music playing
Param[1]: music (type: Music)
Function 539: ResumeMusicStream() (1 input parameters)
Function 540: ResumeMusicStream() (1 input parameters)
Name: ResumeMusicStream
Return type: void
Description: Resume playing paused music
Param[1]: music (type: Music)
Function 540: SeekMusicStream() (2 input parameters)
Function 541: SeekMusicStream() (2 input parameters)
Name: SeekMusicStream
Return type: void
Description: Seek music to a position (in seconds)
Param[1]: music (type: Music)
Param[2]: position (type: float)
Function 541: SetMusicVolume() (2 input parameters)
Function 542: SetMusicVolume() (2 input parameters)
Name: SetMusicVolume
Return type: void
Description: Set volume for music (1.0 is max level)
Param[1]: music (type: Music)
Param[2]: volume (type: float)
Function 542: SetMusicPitch() (2 input parameters)
Function 543: SetMusicPitch() (2 input parameters)
Name: SetMusicPitch
Return type: void
Description: Set pitch for a music (1.0 is base level)
Param[1]: music (type: Music)
Param[2]: pitch (type: float)
Function 543: SetMusicPan() (2 input parameters)
Function 544: SetMusicPan() (2 input parameters)
Name: SetMusicPan
Return type: void
Description: Set pan for a music (0.5 is center)
Param[1]: music (type: Music)
Param[2]: pan (type: float)
Function 544: GetMusicTimeLength() (1 input parameters)
Function 545: GetMusicTimeLength() (1 input parameters)
Name: GetMusicTimeLength
Return type: float
Description: Get music time length (in seconds)
Param[1]: music (type: Music)
Function 545: GetMusicTimePlayed() (1 input parameters)
Function 546: GetMusicTimePlayed() (1 input parameters)
Name: GetMusicTimePlayed
Return type: float
Description: Get current music time played (in seconds)
Param[1]: music (type: Music)
Function 546: LoadAudioStream() (3 input parameters)
Function 547: LoadAudioStream() (3 input parameters)
Name: LoadAudioStream
Return type: AudioStream
Description: Load audio stream (to stream raw audio pcm data)
Param[1]: sampleRate (type: unsigned int)
Param[2]: sampleSize (type: unsigned int)
Param[3]: channels (type: unsigned int)
Function 547: IsAudioStreamReady() (1 input parameters)
Function 548: IsAudioStreamReady() (1 input parameters)
Name: IsAudioStreamReady
Return type: bool
Description: Checks if an audio stream is ready
Param[1]: stream (type: AudioStream)
Function 548: UnloadAudioStream() (1 input parameters)
Function 549: UnloadAudioStream() (1 input parameters)
Name: UnloadAudioStream
Return type: void
Description: Unload audio stream and free memory
Param[1]: stream (type: AudioStream)
Function 549: UpdateAudioStream() (3 input parameters)
Function 550: UpdateAudioStream() (3 input parameters)
Name: UpdateAudioStream
Return type: void
Description: Update audio stream buffers with data
Param[1]: stream (type: AudioStream)
Param[2]: data (type: const void *)
Param[3]: frameCount (type: int)
Function 550: IsAudioStreamProcessed() (1 input parameters)
Function 551: IsAudioStreamProcessed() (1 input parameters)
Name: IsAudioStreamProcessed
Return type: bool
Description: Check if any audio stream buffers requires refill
Param[1]: stream (type: AudioStream)
Function 551: PlayAudioStream() (1 input parameters)
Function 552: PlayAudioStream() (1 input parameters)
Name: PlayAudioStream
Return type: void
Description: Play audio stream
Param[1]: stream (type: AudioStream)
Function 552: PauseAudioStream() (1 input parameters)
Function 553: PauseAudioStream() (1 input parameters)
Name: PauseAudioStream
Return type: void
Description: Pause audio stream
Param[1]: stream (type: AudioStream)
Function 553: ResumeAudioStream() (1 input parameters)
Function 554: ResumeAudioStream() (1 input parameters)
Name: ResumeAudioStream
Return type: void
Description: Resume audio stream
Param[1]: stream (type: AudioStream)
Function 554: IsAudioStreamPlaying() (1 input parameters)
Function 555: IsAudioStreamPlaying() (1 input parameters)
Name: IsAudioStreamPlaying
Return type: bool
Description: Check if audio stream is playing
Param[1]: stream (type: AudioStream)
Function 555: StopAudioStream() (1 input parameters)
Function 556: StopAudioStream() (1 input parameters)
Name: StopAudioStream
Return type: void
Description: Stop audio stream
Param[1]: stream (type: AudioStream)
Function 556: SetAudioStreamVolume() (2 input parameters)
Function 557: SetAudioStreamVolume() (2 input parameters)
Name: SetAudioStreamVolume
Return type: void
Description: Set volume for audio stream (1.0 is max level)
Param[1]: stream (type: AudioStream)
Param[2]: volume (type: float)
Function 557: SetAudioStreamPitch() (2 input parameters)
Function 558: SetAudioStreamPitch() (2 input parameters)
Name: SetAudioStreamPitch
Return type: void
Description: Set pitch for audio stream (1.0 is base level)
Param[1]: stream (type: AudioStream)
Param[2]: pitch (type: float)
Function 558: SetAudioStreamPan() (2 input parameters)
Function 559: SetAudioStreamPan() (2 input parameters)
Name: SetAudioStreamPan
Return type: void
Description: Set pan for audio stream (0.5 is centered)
Param[1]: stream (type: AudioStream)
Param[2]: pan (type: float)
Function 559: SetAudioStreamBufferSizeDefault() (1 input parameters)
Function 560: SetAudioStreamBufferSizeDefault() (1 input parameters)
Name: SetAudioStreamBufferSizeDefault
Return type: void
Description: Default size for new audio streams
Param[1]: size (type: int)
Function 560: SetAudioStreamCallback() (2 input parameters)
Function 561: SetAudioStreamCallback() (2 input parameters)
Name: SetAudioStreamCallback
Return type: void
Description: Audio thread callback to request new data
Param[1]: stream (type: AudioStream)
Param[2]: callback (type: AudioCallback)
Function 561: AttachAudioStreamProcessor() (2 input parameters)
Function 562: AttachAudioStreamProcessor() (2 input parameters)
Name: AttachAudioStreamProcessor
Return type: void
Description: Attach audio stream processor to stream, receives the samples as 'float'
Param[1]: stream (type: AudioStream)
Param[2]: processor (type: AudioCallback)
Function 562: DetachAudioStreamProcessor() (2 input parameters)
Function 563: DetachAudioStreamProcessor() (2 input parameters)
Name: DetachAudioStreamProcessor
Return type: void
Description: Detach audio stream processor from stream
Param[1]: stream (type: AudioStream)
Param[2]: processor (type: AudioCallback)
Function 563: AttachAudioMixedProcessor() (1 input parameters)
Function 564: AttachAudioMixedProcessor() (1 input parameters)
Name: AttachAudioMixedProcessor
Return type: void
Description: Attach audio stream processor to the entire audio pipeline, receives the samples as 'float'
Param[1]: processor (type: AudioCallback)
Function 564: DetachAudioMixedProcessor() (1 input parameters)
Function 565: DetachAudioMixedProcessor() (1 input parameters)
Name: DetachAudioMixedProcessor
Return type: void
Description: Detach audio stream processor from the entire audio pipeline

View File

@ -670,7 +670,7 @@
<Param type="unsigned int" name="frames" desc="" />
</Callback>
</Callbacks>
<Functions count="564">
<Functions count="565">
<Function name="InitWindow" retType="void" paramCount="3" desc="Initialize window and OpenGL context">
<Param type="int" name="width" desc="" />
<Param type="int" name="height" desc="" />
@ -2405,6 +2405,9 @@
<Function name="TextToPascal" retType="const char *" paramCount="1" desc="Get Pascal case notation version of provided string">
<Param type="const char *" name="text" desc="" />
</Function>
<Function name="TextToSnake" retType="const char *" paramCount="1" desc="Get Snake case notation version of provided string">
<Param type="const char *" name="text" desc="" />
</Function>
<Function name="TextToInteger" retType="int" paramCount="1" desc="Get integer value from text (negative values not supported)">
<Param type="const char *" name="text" desc="" />
</Function>

View File

@ -166,33 +166,59 @@
// Some Basic Colors
// NOTE: Custom raylib color palette for amazing visuals on WHITE background
#define LIGHTGRAY CLITERAL(Color){ 200, 200, 200, 255 } // Light Gray
#define GRAY CLITERAL(Color){ 130, 130, 130, 255 } // Gray
#define DARKGRAY CLITERAL(Color){ 80, 80, 80, 255 } // Dark Gray
#define YELLOW CLITERAL(Color){ 253, 249, 0, 255 } // Yellow
#define GOLD CLITERAL(Color){ 255, 203, 0, 255 } // Gold
#define ORANGE CLITERAL(Color){ 255, 161, 0, 255 } // Orange
#define PINK CLITERAL(Color){ 255, 109, 194, 255 } // Pink
#define RED CLITERAL(Color){ 230, 41, 55, 255 } // Red
#define MAROON CLITERAL(Color){ 190, 33, 55, 255 } // Maroon
#define GREEN CLITERAL(Color){ 0, 228, 48, 255 } // Green
#define LIME CLITERAL(Color){ 0, 158, 47, 255 } // Lime
#define DARKGREEN CLITERAL(Color){ 0, 117, 44, 255 } // Dark Green
#define SKYBLUE CLITERAL(Color){ 102, 191, 255, 255 } // Sky Blue
#define BLUE CLITERAL(Color){ 0, 121, 241, 255 } // Blue
#define DARKBLUE CLITERAL(Color){ 0, 82, 172, 255 } // Dark Blue
#define PURPLE CLITERAL(Color){ 200, 122, 255, 255 } // Purple
#define VIOLET CLITERAL(Color){ 135, 60, 190, 255 } // Violet
#define DARKPURPLE CLITERAL(Color){ 112, 31, 126, 255 } // Dark Purple
#define BEIGE CLITERAL(Color){ 211, 176, 131, 255 } // Beige
#define BROWN CLITERAL(Color){ 127, 106, 79, 255 } // Brown
#define DARKBROWN CLITERAL(Color){ 76, 63, 47, 255 } // Dark Brown
#define LIGHTGRAY \
CLITERAL(Color) { 200, 200, 200, 255 } // Light Gray
#define GRAY \
CLITERAL(Color) { 130, 130, 130, 255 } // Gray
#define DARKGRAY \
CLITERAL(Color) { 80, 80, 80, 255 } // Dark Gray
#define YELLOW \
CLITERAL(Color) { 253, 249, 0, 255 } // Yellow
#define GOLD \
CLITERAL(Color) { 255, 203, 0, 255 } // Gold
#define ORANGE \
CLITERAL(Color) { 255, 161, 0, 255 } // Orange
#define PINK \
CLITERAL(Color) { 255, 109, 194, 255 } // Pink
#define RED \
CLITERAL(Color) { 230, 41, 55, 255 } // Red
#define MAROON \
CLITERAL(Color) { 190, 33, 55, 255 } // Maroon
#define GREEN \
CLITERAL(Color) { 0, 228, 48, 255 } // Green
#define LIME \
CLITERAL(Color) { 0, 158, 47, 255 } // Lime
#define DARKGREEN \
CLITERAL(Color) { 0, 117, 44, 255 } // Dark Green
#define SKYBLUE \
CLITERAL(Color) { 102, 191, 255, 255 } // Sky Blue
#define BLUE \
CLITERAL(Color) { 0, 121, 241, 255 } // Blue
#define DARKBLUE \
CLITERAL(Color) { 0, 82, 172, 255 } // Dark Blue
#define PURPLE \
CLITERAL(Color) { 200, 122, 255, 255 } // Purple
#define VIOLET \
CLITERAL(Color) { 135, 60, 190, 255 } // Violet
#define DARKPURPLE \
CLITERAL(Color) { 112, 31, 126, 255 } // Dark Purple
#define BEIGE \
CLITERAL(Color) { 211, 176, 131, 255 } // Beige
#define BROWN \
CLITERAL(Color) { 127, 106, 79, 255 } // Brown
#define DARKBROWN \
CLITERAL(Color) { 76, 63, 47, 255 } // Dark Brown
#define WHITE CLITERAL(Color){ 255, 255, 255, 255 } // White
#define BLACK CLITERAL(Color){ 0, 0, 0, 255 } // Black
#define BLANK CLITERAL(Color){ 0, 0, 0, 0 } // Blank (Transparent)
#define MAGENTA CLITERAL(Color){ 255, 0, 255, 255 } // Magenta
#define RAYWHITE CLITERAL(Color){ 245, 245, 245, 255 } // My own White (raylib logo)
#define WHITE \
CLITERAL(Color) { 255, 255, 255, 255 } // White
#define BLACK \
CLITERAL(Color) { 0, 0, 0, 255 } // Black
#define BLANK \
CLITERAL(Color) { 0, 0, 0, 0 } // Blank (Transparent)
#define MAGENTA \
CLITERAL(Color) { 255, 0, 255, 255 } // Magenta
#define RAYWHITE \
CLITERAL(Color) { 245, 245, 245, 255 } // My own White (raylib logo)
//----------------------------------------------------------------------------------
// Structures Definition
@ -201,25 +227,32 @@
#if (defined(__STDC__) && __STDC_VERSION__ >= 199901L) || (defined(_MSC_VER) && _MSC_VER >= 1800)
#include <stdbool.h>
#elif !defined(__cplusplus) && !defined(bool)
typedef enum bool { false = 0, true = !false } bool;
typedef enum bool
{
false = 0,
true = !false
} bool;
#define RL_BOOL_TYPE
#endif
// Vector2, 2 components
typedef struct Vector2 {
typedef struct Vector2
{
float x; // Vector x component
float y; // Vector y component
} Vector2;
// Vector3, 3 components
typedef struct Vector3 {
typedef struct Vector3
{
float x; // Vector x component
float y; // Vector y component
float z; // Vector z component
} Vector3;
// Vector4, 4 components
typedef struct Vector4 {
typedef struct Vector4
{
float x; // Vector x component
float y; // Vector y component
float z; // Vector z component
@ -230,7 +263,8 @@ typedef struct Vector4 {
typedef Vector4 Quaternion;
// Matrix, 4x4 components, column major, OpenGL style, right-handed
typedef struct Matrix {
typedef struct Matrix
{
float m0, m4, m8, m12; // Matrix first row (4 components)
float m1, m5, m9, m13; // Matrix second row (4 components)
float m2, m6, m10, m14; // Matrix third row (4 components)
@ -238,7 +272,8 @@ typedef struct Matrix {
} Matrix;
// Color, 4 components, R8G8B8A8 (32bit)
typedef struct Color {
typedef struct Color
{
unsigned char r; // Color red value
unsigned char g; // Color green value
unsigned char b; // Color blue value
@ -246,7 +281,8 @@ typedef struct Color {
} Color;
// Rectangle, 4 components
typedef struct Rectangle {
typedef struct Rectangle
{
float x; // Rectangle top-left corner position x
float y; // Rectangle top-left corner position y
float width; // Rectangle width
@ -254,7 +290,8 @@ typedef struct Rectangle {
} Rectangle;
// Image, pixel data stored in CPU memory (RAM)
typedef struct Image {
typedef struct Image
{
void *data; // Image raw data
int width; // Image base width
int height; // Image base height
@ -263,7 +300,8 @@ typedef struct Image {
} Image;
// Texture, tex data stored in GPU memory (VRAM)
typedef struct Texture {
typedef struct Texture
{
unsigned int id; // OpenGL texture id
int width; // Texture base width
int height; // Texture base height
@ -278,7 +316,8 @@ typedef Texture Texture2D;
typedef Texture TextureCubemap;
// RenderTexture, fbo for texture rendering
typedef struct RenderTexture {
typedef struct RenderTexture
{
unsigned int id; // OpenGL framebuffer object id
Texture texture; // Color buffer attachment texture
Texture depth; // Depth buffer attachment texture
@ -288,7 +327,8 @@ typedef struct RenderTexture {
typedef RenderTexture RenderTexture2D;
// NPatchInfo, n-patch layout info
typedef struct NPatchInfo {
typedef struct NPatchInfo
{
Rectangle source; // Texture source rectangle
int left; // Left border offset
int top; // Top border offset
@ -298,7 +338,8 @@ typedef struct NPatchInfo {
} NPatchInfo;
// GlyphInfo, font characters glyphs info
typedef struct GlyphInfo {
typedef struct GlyphInfo
{
int value; // Character value (Unicode)
int offsetX; // Character offset X when drawing
int offsetY; // Character offset Y when drawing
@ -307,7 +348,8 @@ typedef struct GlyphInfo {
} GlyphInfo;
// Font, font texture and GlyphInfo array data
typedef struct Font {
typedef struct Font
{
int baseSize; // Base size (default chars height)
int glyphCount; // Number of glyph characters
int glyphPadding; // Padding around the glyph characters
@ -317,7 +359,8 @@ typedef struct Font {
} Font;
// Camera, defines position/orientation in 3d space
typedef struct Camera3D {
typedef struct Camera3D
{
Vector3 position; // Camera position
Vector3 target; // Camera target it looks-at
Vector3 up; // Camera up vector (rotation over its axis)
@ -328,7 +371,8 @@ typedef struct Camera3D {
typedef Camera3D Camera; // Camera type fallback, defaults to Camera3D
// Camera2D, defines position/orientation in 2d space
typedef struct Camera2D {
typedef struct Camera2D
{
Vector2 offset; // Camera offset (displacement from target)
Vector2 target; // Camera target (rotation and zoom origin)
float rotation; // Camera rotation in degrees
@ -336,7 +380,8 @@ typedef struct Camera2D {
} Camera2D;
// Mesh, vertex data and vao/vbo
typedef struct Mesh {
typedef struct Mesh
{
int vertexCount; // Number of vertices stored in arrays
int triangleCount; // Number of triangles stored (indexed or not)
@ -361,40 +406,46 @@ typedef struct Mesh {
} Mesh;
// Shader
typedef struct Shader {
typedef struct Shader
{
unsigned int id; // Shader program id
int *locs; // Shader locations array (RL_MAX_SHADER_LOCATIONS)
} Shader;
// MaterialMap
typedef struct MaterialMap {
typedef struct MaterialMap
{
Texture2D texture; // Material map texture
Color color; // Material map color
float value; // Material map value
} MaterialMap;
// Material, includes shader and maps
typedef struct Material {
typedef struct Material
{
Shader shader; // Material shader
MaterialMap *maps; // Material maps array (MAX_MATERIAL_MAPS)
float params[4]; // Material generic parameters (if required)
} Material;
// Transform, vertex transformation data
typedef struct Transform {
typedef struct Transform
{
Vector3 translation; // Translation
Quaternion rotation; // Rotation
Vector3 scale; // Scale
} Transform;
// Bone, skeletal animation bone
typedef struct BoneInfo {
typedef struct BoneInfo
{
char name[32]; // Bone name
int parent; // Bone parent
} BoneInfo;
// Model, meshes, materials and animation data
typedef struct Model {
typedef struct Model
{
Matrix transform; // Local transform matrix
int meshCount; // Number of meshes
@ -410,7 +461,8 @@ typedef struct Model {
} Model;
// ModelAnimation
typedef struct ModelAnimation {
typedef struct ModelAnimation
{
int boneCount; // Number of bones
int frameCount; // Number of animation frames
BoneInfo *bones; // Bones information (skeleton)
@ -419,13 +471,15 @@ typedef struct ModelAnimation {
} ModelAnimation;
// Ray, ray for raycasting
typedef struct Ray {
typedef struct Ray
{
Vector3 position; // Ray position (origin)
Vector3 direction; // Ray direction
} Ray;
// RayCollision, ray hit information
typedef struct RayCollision {
typedef struct RayCollision
{
bool hit; // Did the ray hit something?
float distance; // Distance to the nearest hit
Vector3 point; // Point of the nearest hit
@ -433,13 +487,15 @@ typedef struct RayCollision {
} RayCollision;
// BoundingBox
typedef struct BoundingBox {
typedef struct BoundingBox
{
Vector3 min; // Minimum vertex box-corner
Vector3 max; // Maximum vertex box-corner
} BoundingBox;
// Wave, audio wave data
typedef struct Wave {
typedef struct Wave
{
unsigned int frameCount; // Total number of frames (considering channels)
unsigned int sampleRate; // Frequency (samples per second)
unsigned int sampleSize; // Bit depth (bits per sample): 8, 16, 32 (24 not supported)
@ -453,7 +509,8 @@ typedef struct rAudioBuffer rAudioBuffer;
typedef struct rAudioProcessor rAudioProcessor;
// AudioStream, custom audio stream
typedef struct AudioStream {
typedef struct AudioStream
{
rAudioBuffer *buffer; // Pointer to internal data used by the audio system
rAudioProcessor *processor; // Pointer to internal data processor, useful for audio effects
@ -463,13 +520,15 @@ typedef struct AudioStream {
} AudioStream;
// Sound
typedef struct Sound {
typedef struct Sound
{
AudioStream stream; // Audio stream
unsigned int frameCount; // Total number of frames (considering channels)
} Sound;
// Music, audio stream, anything longer than ~10 seconds should be streamed
typedef struct Music {
typedef struct Music
{
AudioStream stream; // Audio stream
unsigned int frameCount; // Total number of frames (considering channels)
bool looping; // Music looping enable
@ -479,7 +538,8 @@ typedef struct Music {
} Music;
// VrDeviceInfo, Head-Mounted-Display device parameters
typedef struct VrDeviceInfo {
typedef struct VrDeviceInfo
{
int hResolution; // Horizontal resolution in pixels
int vResolution; // Vertical resolution in pixels
float hScreenSize; // Horizontal size in meters
@ -492,7 +552,8 @@ typedef struct VrDeviceInfo {
} VrDeviceInfo;
// VrStereoConfig, VR stereo rendering configuration for simulator
typedef struct VrStereoConfig {
typedef struct VrStereoConfig
{
Matrix projection[2]; // VR projection matrices (per eye)
Matrix viewOffset[2]; // VR view offset matrices (per eye)
float leftLensCenter[2]; // VR left lens center
@ -504,21 +565,24 @@ typedef struct VrStereoConfig {
} VrStereoConfig;
// File path list
typedef struct FilePathList {
typedef struct FilePathList
{
unsigned int capacity; // Filepaths max entries
unsigned int count; // Filepaths entries count
char **paths; // Filepaths entries
} FilePathList;
// Automation event
typedef struct AutomationEvent {
typedef struct AutomationEvent
{
unsigned int frame; // Event frame
unsigned int type; // Event type (AutomationEventType)
int params[4]; // Event parameters (if required)
} AutomationEvent;
// Automation event list
typedef struct AutomationEventList {
typedef struct AutomationEventList
{
unsigned int capacity; // Events max entries (MAX_AUTOMATION_EVENTS)
unsigned int count; // Events entries count
AutomationEvent *events; // Events entries
@ -530,7 +594,8 @@ typedef struct AutomationEventList {
// System/Window config flags
// NOTE: Every bit registers one state (use it with bit masks)
// By default all flags are set to 0
typedef enum {
typedef enum
{
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
@ -551,7 +616,8 @@ typedef enum {
// Trace log level
// NOTE: Organized by priority level
typedef enum {
typedef enum
{
LOG_ALL = 0, // Display all logs
LOG_TRACE, // Trace logging, intended for internal use only
LOG_DEBUG, // Debug logging, used for internal debugging, it should be disabled on release builds
@ -565,7 +631,8 @@ typedef enum {
// Keyboard keys (US keyboard layout)
// NOTE: Use GetKeyPressed() to allow redefining
// required keys for alternative layouts
typedef enum {
typedef enum
{
KEY_NULL = 0, // Key: NULL, used for no key pressed
// Alphanumeric keys
KEY_APOSTROPHE = 39, // Key: '
@ -688,7 +755,8 @@ typedef enum {
#define MOUSE_MIDDLE_BUTTON MOUSE_BUTTON_MIDDLE
// Mouse buttons
typedef enum {
typedef enum
{
MOUSE_BUTTON_LEFT = 0, // Mouse button left
MOUSE_BUTTON_RIGHT = 1, // Mouse button right
MOUSE_BUTTON_MIDDLE = 2, // Mouse button middle (pressed wheel)
@ -699,7 +767,8 @@ typedef enum {
} MouseButton;
// Mouse cursor
typedef enum {
typedef enum
{
MOUSE_CURSOR_DEFAULT = 0, // Default pointer shape
MOUSE_CURSOR_ARROW = 1, // Arrow shape
MOUSE_CURSOR_IBEAM = 2, // Text writing cursor shape
@ -714,7 +783,8 @@ typedef enum {
} MouseCursor;
// Gamepad buttons
typedef enum {
typedef enum
{
GAMEPAD_BUTTON_UNKNOWN = 0, // Unknown button, just for error checking
GAMEPAD_BUTTON_LEFT_FACE_UP, // Gamepad left DPAD up button
GAMEPAD_BUTTON_LEFT_FACE_RIGHT, // Gamepad left DPAD right button
@ -736,7 +806,8 @@ typedef enum {
} GamepadButton;
// Gamepad axis
typedef enum {
typedef enum
{
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
@ -746,7 +817,8 @@ typedef enum {
} GamepadAxis;
// Material map index
typedef enum {
typedef enum
{
MATERIAL_MAP_ALBEDO = 0, // Albedo material (same as: MATERIAL_MAP_DIFFUSE)
MATERIAL_MAP_METALNESS, // Metalness material (same as: MATERIAL_MAP_SPECULAR)
MATERIAL_MAP_NORMAL, // Normal material
@ -764,7 +836,8 @@ typedef enum {
#define MATERIAL_MAP_SPECULAR MATERIAL_MAP_METALNESS
// Shader location index
typedef enum {
typedef enum
{
SHADER_LOC_VERTEX_POSITION = 0, // Shader location: vertex attribute: position
SHADER_LOC_VERTEX_TEXCOORD01, // Shader location: vertex attribute: texcoord01
SHADER_LOC_VERTEX_TEXCOORD02, // Shader location: vertex attribute: texcoord02
@ -797,7 +870,8 @@ typedef enum {
#define SHADER_LOC_MAP_SPECULAR SHADER_LOC_MAP_METALNESS
// Shader uniform data type
typedef enum {
typedef enum
{
SHADER_UNIFORM_FLOAT = 0, // Shader uniform type: float
SHADER_UNIFORM_VEC2, // Shader uniform type: vec2 (2 float)
SHADER_UNIFORM_VEC3, // Shader uniform type: vec3 (3 float)
@ -810,7 +884,8 @@ typedef enum {
} ShaderUniformDataType;
// Shader attribute data types
typedef enum {
typedef enum
{
SHADER_ATTRIB_FLOAT = 0, // Shader attribute type: float
SHADER_ATTRIB_VEC2, // Shader attribute type: vec2 (2 float)
SHADER_ATTRIB_VEC3, // Shader attribute type: vec3 (3 float)
@ -819,7 +894,8 @@ typedef enum {
// Pixel formats
// NOTE: Support depends on OpenGL version and platform
typedef enum {
typedef enum
{
PIXELFORMAT_UNCOMPRESSED_GRAYSCALE = 1, // 8 bit per pixel (no alpha)
PIXELFORMAT_UNCOMPRESSED_GRAY_ALPHA, // 8*2 bpp (2 channels)
PIXELFORMAT_UNCOMPRESSED_R5G6B5, // 16 bpp
@ -849,7 +925,8 @@ typedef enum {
// Texture parameters: filter mode
// NOTE 1: Filtering considers mipmaps if available in the texture
// NOTE 2: Filter is accordingly set for minification and magnification
typedef enum {
typedef enum
{
TEXTURE_FILTER_POINT = 0, // No filter, just pixel approximation
TEXTURE_FILTER_BILINEAR, // Linear filtering
TEXTURE_FILTER_TRILINEAR, // Trilinear filtering (linear with mipmaps)
@ -859,7 +936,8 @@ typedef enum {
} TextureFilter;
// Texture parameters: wrap mode
typedef enum {
typedef enum
{
TEXTURE_WRAP_REPEAT = 0, // Repeats texture in tiled mode
TEXTURE_WRAP_CLAMP, // Clamps texture to edge pixel in tiled mode
TEXTURE_WRAP_MIRROR_REPEAT, // Mirrors and repeats the texture in tiled mode
@ -867,7 +945,8 @@ typedef enum {
} TextureWrap;
// Cubemap layouts
typedef enum {
typedef enum
{
CUBEMAP_LAYOUT_AUTO_DETECT = 0, // Automatically detect layout type
CUBEMAP_LAYOUT_LINE_VERTICAL, // Layout is defined by a vertical line with faces
CUBEMAP_LAYOUT_LINE_HORIZONTAL, // Layout is defined by a horizontal line with faces
@ -877,14 +956,16 @@ typedef enum {
} CubemapLayout;
// Font type, defines generation method
typedef enum {
typedef enum
{
FONT_DEFAULT = 0, // Default font generation, anti-aliased
FONT_BITMAP, // Bitmap font generation, no anti-aliasing
FONT_SDF // SDF font generation, requires external shader
} FontType;
// Color blending modes (pre-defined)
typedef enum {
typedef enum
{
BLEND_ALPHA = 0, // Blend textures considering alpha (default)
BLEND_ADDITIVE, // Blend textures adding colors
BLEND_MULTIPLIED, // Blend textures multiplying colors
@ -897,7 +978,8 @@ typedef enum {
// Gesture
// NOTE: Provided as bit-wise flags to enable only desired gestures
typedef enum {
typedef enum
{
GESTURE_NONE = 0, // No gesture
GESTURE_TAP = 1, // Tap gesture
GESTURE_DOUBLETAP = 2, // Double tap gesture
@ -912,7 +994,8 @@ typedef enum {
} Gesture;
// Camera system modes
typedef enum {
typedef enum
{
CAMERA_CUSTOM = 0, // Camera custom, controlled by user (UpdateCamera() does nothing)
CAMERA_FREE, // Camera free mode
CAMERA_ORBITAL, // Camera orbital, around target, zoom supported
@ -921,13 +1004,15 @@ typedef enum {
} CameraMode;
// Camera projection
typedef enum {
typedef enum
{
CAMERA_PERSPECTIVE = 0, // Perspective projection
CAMERA_ORTHOGRAPHIC // Orthographic projection
} CameraProjection;
// N-patch layout
typedef enum {
typedef enum
{
NPATCH_NINE_PATCH = 0, // Npatch layout: 3x3 tiles
NPATCH_THREE_PATCH_VERTICAL, // Npatch layout: 1x3 tiles
NPATCH_THREE_PATCH_HORIZONTAL // Npatch layout: 3x1 tiles
@ -951,7 +1036,8 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI
//------------------------------------------------------------------------------------
#if defined(__cplusplus)
extern "C" { // Prevents name mangling of functions
extern "C"
{ // Prevents name mangling of functions
#endif
// Window-related functions
@ -1489,6 +1575,9 @@ RLAPI int TextFindIndex(const char *text, const char *find);
RLAPI const char *TextToUpper(const char *text); // Get upper case version of provided string
RLAPI const char *TextToLower(const char *text); // Get lower case version of provided string
RLAPI const char *TextToPascal(const char *text); // Get Pascal case notation version of provided string
RLAPI const char *TextToSnake(const char *text); // Get Snake case notation version of provided string
RLAPI const char *TextToCamel(const char *text); // Get Camel case notation version of provided string
RLAPI int TextToInteger(const char *text); // Get integer value from text (negative values not supported)
RLAPI float TextToFloat(const char *text); // Get float value from text (negative values not supported)

File diff suppressed because it is too large Load Diff