Unsafe bindings for Raylib’s 2D components.
They are called and marked unsafe, since they can cause undefined behaviour
if misused, as they are a thin wrapper over a C API.
Function(s) Excluded | Reason |
SetClipboardText, GetClipboardText | clipboard<%> should be used instead |
WaitTime | sleep should be used instead |
GetRandomValue, SetRandomSeed, LoadRandomSequence, UnloadRandomSequence | random should be used instead |
MemAlloc, MemRealloc, MemFree | malloc, free and other Racket pointer
conversion functions should be used instead |
CompressData, DecompressData, EncodeDataBase64, DecodeDataBase64 | file/zip
and
net/base64
(or alternatives) should be used instead |
LoadFileData, LoadFileText, UnloadFileData, UnloadFileText, SaveFileData, SaveFileText, FileExists, DirectoryExists, IsFileExtension, GetFileLength, GetFileExtension, GetFileName, GetFileNameWithoutExt, GetDirectoryPath, GetPrevDirectoryPath, GetWorkingDirectory, GetApplicationDirectory, ChangeDirectory, GetFileModTime, MakeDirectory, IsFileNameValid, IsPathFile, LoadDirectoryFiles, LoadDirectoryFilesEx, UnloadDirectoryFiles | Racket's own IO functions should be used instead |
GetCodepointCount, GetCodepoint, GetCodepointNext, GetCodepointPrevious, CodepointToUTF8, LoadUTF8, UnloadUTF8, TextCopy, TextIsEqual, TextLength, TextFormat, TextSubtext, TextReplace, TextInsert, TextJoin, TextSplit, TextAppend, TextFindIndex, TextToUpper, TextToLower, TextToInteger, TextToFloat, TextToPascal, TextToSnake, TextToCamel | Racket's own string functions should be used instead |
SetTraceLogCallback | this takes a varargs function pointer, which is
impossible to produce with pure Racket bindings |
BeginVrStereoMode, BeginMode3D, EndVrStereoMode, EndMode3D, LoadVrStereoConfig, UnloadVrStereoConfig, DrawLine3D, DrawPoint3D, DrawCircle3D, DrawTriangle3D, DrawTriangleStrip3D, DrawCapsule, DrawCapsuleWires, DrawCube, DrawCubeV, DrawCubeWires, DrawCubeWiresV, DrawSphere, DrawSphereEx, DrawSphereWires, DrawCylinder, DrawCylinderEx, DrawCylinderWires, DrawCylinderWiresEx, DrawPlane, DrawRay, DrawGrid, LoadModel, LoadModelFromMesh, IsModelValid, UnloadModel, GetModelBoundingBox, DrawModel, DrawModelEx, DrawModelWires, DrawModelWiresEx, DrawModelPoints, DrawModelPointsEx, DrawBoundingBox, DrawBillboard, DrawBillboardRec, DrawBillboardPro, UploadMesh, UpdateMeshBuffer, UnloadMesh, DrawMesh, DrawMeshInstanced, ExportMesh, ExportMeshAsCode, GetMeshBoundingBox, GenMeshTangents, GenMeshPoly, GenMeshPlane, GenMeshCube, GenMeshSphere, GenMeshHemiSphere, GenMeshCylinder, GenMeshCone, GenMeshTorus, GenMeshKnot, GenMeshHeightmap, GenMeshCubicmap, LoadMaterials, LoadMaterialDefault, IsMaterialValid, UnloadMaterial, SetMaterialTexture, SetModelMeshMaterial, LoadModelAnimations, UpdateModelAnimation, UpdateModelAnimationBones, UnloadModelAnimation, UnloadModelAnimations, IsModelAnimationValid, CheckCollisionSpheres, CheckCollisionBoxes, CheckCollisionBoxSphere, GetRayCollisionSphere, GetRayCollisionBox, GetRayCollisionMesh, GetRayCollisionTriangle, GetRayCollisionQuad | these are not applicable to 2D rendering |