Module raylib

raylib v5.0 - A simple and easy-to-use library to enjoy videogames programming (www.raylib.com)

FEATURES

- NO external dependencies, all required libraries included with raylib - Multiplatform: Windows, Linux, FreeBSD, OpenBSD, NetBSD, DragonFly, MacOS, Haiku, Android, Raspberry Pi, DRM native, HTML5. - Written in plain C code (C99) in PascalCase/camelCase notation - Hardware accelerated with OpenGL (1.1, 2.1, 3.3, 4.3 or ES2 - choose at compile) - Unique OpenGL abstraction layer (usable as standalone module): [rlgl] - Multiple Fonts formats supported (TTF, XNA fonts, AngelCode fonts) - Outstanding texture formats support, including compressed formats (DXT, ETC, ASTC) - Full 3d support for 3d Shapes, Models, Billboards, Heightmaps and more! - Flexible Materials system, supporting classic maps and PBR maps - Animated 3D models supported (skeletal bones animation) (IQM) - Shaders support, including Model shaders and Postprocessing shaders - Powerful math module for Vector, Matrix and Quaternion operations: [raymath] - Audio loading and playing with streaming support (WAV, OGG, MP3, FLAC, XM, MOD) - VR stereo rendering with configurable HMD device parameters - Bindings to multiple programming languages available!

NOTES

- One default Font is loaded on InitWindow()->LoadFontDefault() [core, text] - One default Texture2D is loaded on rlglInit(), 1x1 white pixel R8G8B8A8 [rlgl] (OpenGL 3.3 or ES2) - One default Shader is loaded on rlglInit()->rlLoadShaderDefault() [rlgl] (OpenGL 3.3 or ES2) - One default RenderBatch is loaded on rlglInit()->rlLoadRenderBatch() [rlgl] (OpenGL 3.3 or ES2)

DEPENDENCIES (included): [rcore] rglfw (Camilla Löwy - github.com/glfw/glfw) for window/context management and input (PLATFORM_DESKTOP) [rlgl] glad (David Herberth - github.com/Dav1dde/glad) for OpenGL 3.3 extensions loading (PLATFORM_DESKTOP) [raudio] miniaudio (David Reid - github.com/mackron/miniaudio) for audio device/context management

OPTIONAL DEPENDENCIES (included): [rcore] msf_gif (Miles Fogle) for GIF recording [rcore] sinfl (Micha Mettke) for DEFLATE decompression algorithm [rcore] sdefl (Micha Mettke) for DEFLATE compression algorithm [rtextures] stb_image (Sean Barret) for images loading (BMP, TGA, PNG, JPEG, HDR...) [rtextures] stb_image_write (Sean Barret) for image writing (BMP, TGA, PNG, JPG) [rtextures] stb_image_resize (Sean Barret) for image resizing algorithms [rtext] stb_truetype (Sean Barret) for ttf fonts loading [rtext] stb_rect_pack (Sean Barret) for rectangles packing [rmodels] par_shapes (Philip Rideout) for parametric 3d shapes generation [rmodels] tinyobj_loader_c (Syoyo Fujita) for models loading (OBJ, MTL) [rmodels] cgltf (Johannes Kuhlmann) for models loading (glTF) [rmodels] Model3D (bzt) for models loading (M3D, https://bztsrc.gitlab.io/model3d) [raudio] dr_wav (David Reid) for WAV audio file loading [raudio] dr_flac (David Reid) for FLAC audio file loading [raudio] dr_mp3 (David Reid) for MP3 audio file loading [raudio] stb_vorbis (Sean Barret) for OGG audio loading [raudio] jar_xm (Joshua Reisenauer) for XM audio module loading [raudio] jar_mod (Joshua Reisenauer) for MOD audio module loading

LICENSE

zlib/libpng

raylib is licensed under an unmodified zlib/libpng license, which is an OSI-certified, BSD-like license that allows static linking with closed source software:

Copyright (c) 2013-2023 Ramon Santamaria (@raysan5)

This software is provided "as-is", without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software.

Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions:

1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required.

2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.

3. This notice may not be removed or altered from any source distribution.