From a043f1f2470a469e960a82fe343149393b531c55 Mon Sep 17 00:00:00 2001 From: Rendo Date: Sun, 15 Mar 2026 02:12:53 +0500 Subject: [PATCH] Not working cross compilation --- README.md | 2 +- compiler_flags.txt | 1 - include/windows/config.h | 372 +++ include/windows/raylib.h | 1741 +++++++++++ include/windows/raymath.h | 3134 ++++++++++++++++++++ include/windows/rcamera.h | 562 ++++ include/windows/rgestures.h | 555 ++++ include/windows/rlgl.h | 5405 +++++++++++++++++++++++++++++++++++ lib/linux/libraylib.a | Bin 0 -> 2861468 bytes lib/windows/libraylib.a | Bin 0 -> 2279194 bytes makefile | 18 +- 11 files changed, 11785 insertions(+), 5 deletions(-) create mode 100644 include/windows/config.h create mode 100644 include/windows/raylib.h create mode 100644 include/windows/raymath.h create mode 100644 include/windows/rcamera.h create mode 100644 include/windows/rgestures.h create mode 100644 include/windows/rlgl.h create mode 100644 lib/linux/libraylib.a create mode 100644 lib/windows/libraylib.a diff --git a/README.md b/README.md index 59c1577..f23f629 100644 --- a/README.md +++ b/README.md @@ -5,7 +5,7 @@ This is my educational project. Here are my accomplished tasks: - Learned how to use make - Brushed up on my c++ knowledge (There's still too much to learn) - Finished the project +- Linked raylib statically And here are tasks that I yet have to accomplish: -- Link raylib statically - Make windows builds diff --git a/compiler_flags.txt b/compiler_flags.txt index c518829..a91007d 100644 --- a/compiler_flags.txt +++ b/compiler_flags.txt @@ -1,4 +1,3 @@ -Wall --lraylib -lstdc++ -lm diff --git a/include/windows/config.h b/include/windows/config.h new file mode 100644 index 0000000..a3502d7 --- /dev/null +++ b/include/windows/config.h @@ -0,0 +1,372 @@ +/********************************************************************************************** +* +* raylib configuration flags +* +* This file defines the configuration flags for different raylib features per-module +* +* NOTE: Additional values are configured per-module and can be set on compile time +* +* LICENSE: zlib/libpng +* +* Copyright (c) 2018-2026 Ahmad Fatoum and 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. +* +**********************************************************************************************/ + +#ifndef CONFIG_H +#define CONFIG_H + +#if !defined(EXTERNAL_CONFIG_FLAGS) + +//------------------------------------------------------------------------------------ +// Module selection - Some modules could be avoided +// Mandatory modules: rcore, rlgl +//------------------------------------------------------------------------------------ +#ifndef SUPPORT_MODULE_RSHAPES + #define SUPPORT_MODULE_RSHAPES 1 +#endif +#ifndef SUPPORT_MODULE_RTEXTURES + #define SUPPORT_MODULE_RTEXTURES 1 +#endif +#ifndef SUPPORT_MODULE_RTEXT + #define SUPPORT_MODULE_RTEXT 1 // WARNING: It requires SUPPORT_MODULE_RTEXTURES to load sprite font textures +#endif +#ifndef SUPPORT_MODULE_RMODELS + #define SUPPORT_MODULE_RMODELS 1 +#endif +#ifndef SUPPORT_MODULE_RAUDIO + #define SUPPORT_MODULE_RAUDIO 1 +#endif + +//------------------------------------------------------------------------------------ +// Module: rcore - Configuration Flags +//------------------------------------------------------------------------------------ +#ifndef SUPPORT_TRACELOG + // Show TRACELOG() output messages + #define SUPPORT_TRACELOG 1 +#endif +#ifndef SUPPORT_CAMERA_SYSTEM + // Camera module is included (rcamera.h) and multiple predefined + // cameras are available: free, 1st/3rd person, orbital + #define SUPPORT_CAMERA_SYSTEM 1 +#endif +#ifndef SUPPORT_GESTURES_SYSTEM + // Gestures module is included (rgestures.h) to support gestures detection: tap, hold, swipe, drag + #define SUPPORT_GESTURES_SYSTEM 1 +#endif +#ifndef SUPPORT_RPRAND_GENERATOR + // Include pseudo-random numbers generator (rprand.h), based on Xoshiro128** and SplitMix64 + #define SUPPORT_RPRAND_GENERATOR 1 +#endif +#ifndef SUPPORT_MOUSE_GESTURES + // Mouse gestures are directly mapped like touches and processed by gestures system + #define SUPPORT_MOUSE_GESTURES 1 +#endif +#ifndef SUPPORT_SSH_KEYBOARD_RPI + // Reconfigure standard input to receive key inputs, works with SSH connection + #define SUPPORT_SSH_KEYBOARD_RPI 1 +#endif +#ifndef SUPPORT_WINMM_HIGHRES_TIMER + // Setting a higher resolution can improve the accuracy of time-out intervals in wait functions + // However, it can also reduce overall system performance, because the thread scheduler switches tasks more often + #define SUPPORT_WINMM_HIGHRES_TIMER 1 +#endif +#if !SUPPORT_BUSY_WAIT_LOOP && !SUPPORT_PARTIALBUSY_WAIT_LOOP + // Use busy wait loop for timing sync, if not defined, a high-resolution timer is set up and used + #define SUPPORT_BUSY_WAIT_LOOP 0 // Disabled by default +#endif +#if !SUPPORT_PARTIALBUSY_WAIT_LOOP && !SUPPORT_BUSY_WAIT_LOOP + // Use a partial-busy wait loop, in this case frame sleeps for most of the time, + // but then runs a busy loop at the end for accuracy + #define SUPPORT_PARTIALBUSY_WAIT_LOOP 1 +#endif +#ifndef SUPPORT_SCREEN_CAPTURE + // Allow automatic screen capture of current screen pressing F12, defined in KeyCallback() + // WARNING: It requires SUPPORT_FILEFORMAT_PNG flag + #define SUPPORT_SCREEN_CAPTURE 1 +#endif +#ifndef SUPPORT_COMPRESSION_API + // Support CompressData() and DecompressData() functions + #define SUPPORT_COMPRESSION_API 1 +#endif +#ifndef SUPPORT_AUTOMATION_EVENTS + // Support automatic generated events, loading and recording of those events when required + #define SUPPORT_AUTOMATION_EVENTS 1 +#endif +#ifndef SUPPORT_CUSTOM_FRAME_CONTROL + // Support custom frame control, only for advanced users + // By default EndDrawing() does this job: draws everything + SwapScreenBuffer() + manage frame timing + PollInputEvents() + // Enabling this flag allows manual control of the frame processes, use at your own risk + #define SUPPORT_CUSTOM_FRAME_CONTROL 0 // Disabled by default +#endif +#ifndef SUPPORT_CLIPBOARD_IMAGE + // Support for clipboard image loading + // NOTE: Only working on SDL3, GLFW (Windows) and RGFW (Windows) + // WARNING: It requires support for some additional flags: + // - SUPPORT_MODULE_RTEXTURES + // - SUPPORT_FILEFORMAT_BMP (Windows clipboard) + // - SUPPORT_FILEFORMAT_PNG (Wayland clipboard) + // - SUPPORT_FILEFORMAT_JPG + #define SUPPORT_CLIPBOARD_IMAGE 1 +#endif + +// rcore: Configuration values +// NOTE: Below values are alread defined inside [rcore.c] so there is no need to be +// redefined here, in case it must be done, uncomment the required line and update +// the value; it can also be done on compilation with -DVALUE_TO_REDEFINE=128 +//------------------------------------------------------------------------------------ +//#define MAX_TRACELOG_MSG_LENGTH 256 // Max length of one trace-log message +//#define MAX_FILEPATH_CAPACITY 8192 // Maximum file paths capacity +//#define MAX_FILEPATH_LENGTH 4096 // Maximum length for filepaths (Linux PATH_MAX default value) +//#define MAX_KEYBOARD_KEYS 512 // Maximum number of keyboard keys supported +//#define MAX_MOUSE_BUTTONS 8 // Maximum number of mouse buttons supported +//#define MAX_GAMEPADS 4 // Maximum number of gamepads supported +//#define MAX_GAMEPAD_AXES 8 // Maximum number of axes supported (per gamepad) +//#define MAX_GAMEPAD_BUTTONS 32 // Maximum number of buttons supported (per gamepad) +//#define MAX_GAMEPAD_VIBRATION_TIME 2.0f // Maximum vibration time in seconds +//#define MAX_TOUCH_POINTS 10 // Maximum number of touch points supported +//#define MAX_KEY_PRESSED_QUEUE 16 // Maximum number of keys in the key input queue +//#define MAX_CHAR_PRESSED_QUEUE 16 // Maximum number of characters in the char input queue +//#define MAX_DECOMPRESSION_SIZE 64 // Max size allocated for decompression in MB +//#define MAX_AUTOMATION_EVENTS 16384 // Maximum number of automation events to record +//------------------------------------------------------------------------------------ + +//------------------------------------------------------------------------------------ +// Module: rlgl - Configuration values +//------------------------------------------------------------------------------------ +#ifndef RLGL_ENABLE_OPENGL_DEBUG_CONTEXT + // Request OpenGL debug context (only available on OpenGL 4.3) + #define RLGL_ENABLE_OPENGL_DEBUG_CONTEXT 0 +#endif +#ifndef RLGL_SHOW_GL_DETAILS_INFO + // Show OpenGL detailed info on initialization, + // supported GL extensions and GL capabilities + #define RLGL_SHOW_GL_DETAILS_INFO 0 +#endif + +// rlgl: Configuration values +// NOTE: Below values are alread defined inside [rlgl.h] so there is no need to be +// redefined here, in case it must be done, uncomment the required line and update +// the value; it can also be done on compilation with -DVALUE_TO_REDEFINE=128 +//------------------------------------------------------------------------------------ +//#define RL_DEFAULT_BATCH_BUFFER_ELEMENTS 4096 // Default internal render batch elements limits +//#define RL_DEFAULT_BATCH_BUFFERS 1 // Default number of batch buffers (multi-buffering) +//#define RL_DEFAULT_BATCH_DRAWCALLS 256 // Default number of batch draw calls (by state changes: mode, texture) +//#define RL_DEFAULT_BATCH_MAX_TEXTURE_UNITS 4 // Maximum number of textures units that can be activated on batch drawing (SetShaderValueTexture()) +//#define RL_MAX_MATRIX_STACK_SIZE 32 // Maximum size of internal Matrix stack +//#define RL_MAX_SHADER_LOCATIONS 32 // Maximum number of shader locations supported +//#define RL_CULL_DISTANCE_NEAR 0.05 // Default projection matrix near cull distance +//#define RL_CULL_DISTANCE_FAR 4000.0 // Default projection matrix far cull distance + +// Default shader vertex attribute locations +//#define RL_DEFAULT_SHADER_ATTRIB_LOCATION_POSITION 0 +//#define RL_DEFAULT_SHADER_ATTRIB_LOCATION_TEXCOORD 1 +//#define RL_DEFAULT_SHADER_ATTRIB_LOCATION_NORMAL 2 +//#define RL_DEFAULT_SHADER_ATTRIB_LOCATION_COLOR 3 +//#define RL_DEFAULT_SHADER_ATTRIB_LOCATION_TANGENT 4 +//#define RL_DEFAULT_SHADER_ATTRIB_LOCATION_TEXCOORD2 5 +//#define RL_DEFAULT_SHADER_ATTRIB_LOCATION_INDICES 6 +//#define RL_DEFAULT_SHADER_ATTRIB_LOCATION_BONEINDICES 7 +//#define RL_DEFAULT_SHADER_ATTRIB_LOCATION_BONEWEIGHTS 8 +//#define RL_DEFAULT_SHADER_ATTRIB_LOCATION_INSTANCETRANSFORM 9 + +// Default shader vertex attribute/uniform names to set location points +// NOTE: When a new shader is loaded, locations are tried to be set for convenience, looking for the names defined here +// In case custom shader names are used, it's up to the user to set locations with GetShaderLocation*() functions +//#define RL_DEFAULT_SHADER_ATTRIB_NAME_POSITION "vertexPosition" // Bound by default to shader location: RL_DEFAULT_SHADER_ATTRIB_LOCATION_POSITION +//#define RL_DEFAULT_SHADER_ATTRIB_NAME_TEXCOORD "vertexTexCoord" // Bound by default to shader location: RL_DEFAULT_SHADER_ATTRIB_LOCATION_TEXCOORD +//#define RL_DEFAULT_SHADER_ATTRIB_NAME_NORMAL "vertexNormal" // Bound by default to shader location: RL_DEFAULT_SHADER_ATTRIB_LOCATION_NORMAL +//#define RL_DEFAULT_SHADER_ATTRIB_NAME_COLOR "vertexColor" // Bound by default to shader location: RL_DEFAULT_SHADER_ATTRIB_LOCATION_COLOR +//#define RL_DEFAULT_SHADER_ATTRIB_NAME_TANGENT "vertexTangent" // Bound by default to shader location: RL_DEFAULT_SHADER_ATTRIB_LOCATION_TANGENT +//#define RL_DEFAULT_SHADER_ATTRIB_NAME_TEXCOORD2 "vertexTexCoord2" // Bound by default to shader location: RL_DEFAULT_SHADER_ATTRIB_LOCATION_TEXCOORD2 +//#define RL_DEFAULT_SHADER_ATTRIB_NAME_BONEINDICES "vertexBoneIndices" // Bound by default to shader location: RL_DEFAULT_SHADER_ATTRIB_LOCATION_BONEINDICES +//#define RL_DEFAULT_SHADER_ATTRIB_NAME_BONEWEIGHTS "vertexBoneWeights" // Bound by default to shader location: RL_DEFAULT_SHADER_ATTRIB_LOCATION_BONEWEIGHTS +//#define RL_DEFAULT_SHADER_ATTRIB_NAME_INSTANCETRANSFORM "instanceTransform" // Bound by default to shader location: RL_DEFAULT_SHADER_ATTRIB_LOCATION_INSTANCETRANSFORM +//#define RL_DEFAULT_SHADER_UNIFORM_NAME_MVP "mvp" // model-view-projection matrix +//#define RL_DEFAULT_SHADER_UNIFORM_NAME_VIEW "matView" // view matrix +//#define RL_DEFAULT_SHADER_UNIFORM_NAME_PROJECTION "matProjection" // projection matrix +//#define RL_DEFAULT_SHADER_UNIFORM_NAME_MODEL "matModel" // model matrix +//#define RL_DEFAULT_SHADER_UNIFORM_NAME_NORMAL "matNormal" // normal matrix (transpose(inverse(matModelView)) +//#define RL_DEFAULT_SHADER_UNIFORM_NAME_COLOR "colDiffuse" // color diffuse (tint color, multiplied by texture color) +//#define RL_DEFAULT_SHADER_UNIFORM_NAME_BONEMATRICES "boneMatrices" // bone matrices +//#define RL_DEFAULT_SHADER_SAMPLER2D_NAME_TEXTURE0 "texture0" // texture0 (texture slot active 0) +//#define RL_DEFAULT_SHADER_SAMPLER2D_NAME_TEXTURE1 "texture1" // texture1 (texture slot active 1) +//#define RL_DEFAULT_SHADER_SAMPLER2D_NAME_TEXTURE2 "texture2" // texture2 (texture slot active 2) +//------------------------------------------------------------------------------------ + +//------------------------------------------------------------------------------------ +// Module: rshapes - Configuration Flags +//------------------------------------------------------------------------------------ +#ifndef SUPPORT_QUADS_DRAW_MODE + // Use QUADS instead of TRIANGLES for drawing when possible + // Some lines-based shapes could still use lines + #define SUPPORT_QUADS_DRAW_MODE 1 +#endif + +//------------------------------------------------------------------------------------ +// Module: rtextures - Configuration Flags +//------------------------------------------------------------------------------------ +// Selected desired fileformats to be supported for image data loading +#ifndef SUPPORT_FILEFORMAT_PNG + #define SUPPORT_FILEFORMAT_PNG 1 +#endif +#ifndef SUPPORT_FILEFORMAT_BMP + // NOTE: BMP support required for clipboard images on Windows + #define SUPPORT_FILEFORMAT_BMP 1 +#endif +#ifndef SUPPORT_FILEFORMAT_TGA + #define SUPPORT_FILEFORMAT_TGA 0 // Disabled by default +#endif +#ifndef SUPPORT_FILEFORMAT_JPG + #define SUPPORT_FILEFORMAT_JPG 0 // Disabled by default +#endif +#ifndef SUPPORT_FILEFORMAT_GIF + #define SUPPORT_FILEFORMAT_GIF 1 +#endif +#ifndef SUPPORT_FILEFORMAT_QOI + #define SUPPORT_FILEFORMAT_QOI 1 +#endif +#ifndef SUPPORT_FILEFORMAT_PSD + #define SUPPORT_FILEFORMAT_PSD 0 // Disabled by default +#endif +#ifndef SUPPORT_FILEFORMAT_DDS + #define SUPPORT_FILEFORMAT_DDS 1 +#endif +#ifndef SUPPORT_FILEFORMAT_HDR + #define SUPPORT_FILEFORMAT_HDR 0 // Disabled by default +#endif +#ifndef SUPPORT_FILEFORMAT_PIC + #define SUPPORT_FILEFORMAT_PIC 0 // Disabled by default +#endif +#ifndef SUPPORT_FILEFORMAT_KTX + #define SUPPORT_FILEFORMAT_KTX 0 // Disabled by default +#endif +#ifndef SUPPORT_FILEFORMAT_ASTC + #define SUPPORT_FILEFORMAT_ASTC 0 // Disabled by default +#endif +#ifndef SUPPORT_FILEFORMAT_PKM + #define SUPPORT_FILEFORMAT_PKM 0 // Disabled by default +#endif +#ifndef SUPPORT_FILEFORMAT_PVR + #define SUPPORT_FILEFORMAT_PVR 0 // Disabled by default +#endif + +#ifndef SUPPORT_IMAGE_EXPORT + // Support image export functionality (.png, .bmp, .tga, .jpg, .qoi) + // NOTE: Image export requires stb_image_write.h library + #define SUPPORT_IMAGE_EXPORT 1 +#endif +#ifndef SUPPORT_IMAGE_GENERATION + // Support procedural image generation functionality: gradient, spot, perlin-noise, cellular... + // NOTE: Perlin noise requires stb_perlin.h library + #define SUPPORT_IMAGE_GENERATION 1 +#endif + +//------------------------------------------------------------------------------------ +// Module: rtext - Configuration Flags +//------------------------------------------------------------------------------------ +// Selected desired font fileformats to be supported for loading +#ifndef SUPPORT_FILEFORMAT_TTF + #define SUPPORT_FILEFORMAT_TTF 1 +#endif +#ifndef SUPPORT_FILEFORMAT_FNT + #define SUPPORT_FILEFORMAT_FNT 1 +#endif +#ifndef SUPPORT_FILEFORMAT_BDF + #define SUPPORT_FILEFORMAT_BDF 0 // Disabled by default +#endif + +//------------------------------------------------------------------------------------ +// Module: rmodels - Configuration Flags +//------------------------------------------------------------------------------------ +// Selected desired model fileformats to be supported for loading +#ifndef SUPPORT_FILEFORMAT_OBJ + #define SUPPORT_FILEFORMAT_OBJ 1 +#endif +#ifndef SUPPORT_FILEFORMAT_MTL + #define SUPPORT_FILEFORMAT_MTL 1 +#endif +#ifndef SUPPORT_FILEFORMAT_IQM + #define SUPPORT_FILEFORMAT_IQM 1 +#endif +#ifndef SUPPORT_FILEFORMAT_GLTF + #define SUPPORT_FILEFORMAT_GLTF 1 +#endif +#ifndef SUPPORT_FILEFORMAT_VOX + #define SUPPORT_FILEFORMAT_VOX 1 +#endif +#ifndef SUPPORT_FILEFORMAT_M3D + #define SUPPORT_FILEFORMAT_M3D 1 +#endif +#ifndef SUPPORT_MESH_GENERATION + // Support procedural mesh generation functions, uses external par_shapes.h library + // NOTE: Some generated meshes DO NOT include generated texture coordinates + #define SUPPORT_MESH_GENERATION 1 +#endif +#ifndef SUPPORT_GPU_SKINNING + // GPU skinning disabled by default, some GPUs do not support more than 8 VBOs + #define SUPPORT_GPU_SKINNING 0 +#endif + +//------------------------------------------------------------------------------------ +// Module: raudio - Configuration Flags +//------------------------------------------------------------------------------------ +// Desired audio fileformats to be supported for loading +#ifndef SUPPORT_FILEFORMAT_WAV + #define SUPPORT_FILEFORMAT_WAV 1 +#endif +#ifndef SUPPORT_FILEFORMAT_OGG + #define SUPPORT_FILEFORMAT_OGG 1 +#endif +#ifndef SUPPORT_FILEFORMAT_MP3 + #define SUPPORT_FILEFORMAT_MP3 1 +#endif +#ifndef SUPPORT_FILEFORMAT_QOA + #define SUPPORT_FILEFORMAT_QOA 1 +#endif +#ifndef SUPPORT_FILEFORMAT_FLAC + #define SUPPORT_FILEFORMAT_FLAC 0 // Disabled by default +#endif +#ifndef SUPPORT_FILEFORMAT_XM + #define SUPPORT_FILEFORMAT_XM 1 +#endif +#ifndef SUPPORT_FILEFORMAT_MOD + #define SUPPORT_FILEFORMAT_MOD 1 +#endif + +// raudio: Configuration values +// NOTE: Below values are alread defined inside [rlgl.h] so there is no need to be +// redefined here, in case it must be done, uncomment the required line and update +// the value; it can also be done on compilation with -DVALUE_TO_REDEFINE=128 +//------------------------------------------------------------------------------------ +//#define AUDIO_DEVICE_FORMAT ma_format_f32 // Device output format (miniaudio: float-32bit) +//#define AUDIO_DEVICE_CHANNELS 2 // Device output channels: stereo +//#define AUDIO_DEVICE_SAMPLE_RATE 0 // Device sample rate (device default) +//#define AUDIO_DEVICE_PERIOD_SIZE_IN_FRAMES 0 // Device period size (controls latency, 0 defaults to 10ms) +//#define MAX_AUDIO_BUFFER_POOL_CHANNELS 16 // Maximum number of audio pool channels +//------------------------------------------------------------------------------------ +#endif // !EXTERNAL_CONFIG_FLAGS + +// NOTE: Following macro depends on config flag that can +// be externally defined, so, it needs to be outside EXTERNAL_CONFIG_FLAGS +#if SUPPORT_TRACELOG + #define TRACELOG(level, ...) TraceLog(level, __VA_ARGS__) +#else + #define TRACELOG(level, ...) (void)0 +#endif + +#endif // CONFIG_H diff --git a/include/windows/raylib.h b/include/windows/raylib.h new file mode 100644 index 0000000..a1391de --- /dev/null +++ b/include/windows/raylib.h @@ -0,0 +1,1741 @@ +/********************************************************************************************** +* +* raylib v6.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, macOS, FreeBSD, Web, Android, Raspberry Pi, DRM native... +* - Written in plain C code (C99) in PascalCase/camelCase notation +* - Hardware accelerated with OpenGL (1.1, 2.1, 3.3, 4.3, ES2, ES3 - choose at compile) +* - Custom OpenGL abstraction layer (usable as standalone module): [rlgl] +* - Multiple Fonts formats supported (TTF, OTF, FNT, BDF, Sprite fonts) +* - Many texture formats supportted, 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, M3D, GLTF) +* - 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, QOA, 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: +* [rcore] Depends on the selected platform backend, check rcore.c header for details +* [rlgl] glad/glad_gles2 (David Herberth - github.com/Dav1dde/glad) for OpenGL extensions loading +* [raudio] miniaudio (David Reid - github.com/mackron/miniaudio) for audio device/context management +* +* OPTIONAL DEPENDENCIES (included): +* [rcore] sinfl (Micha Mettke) for DEFLATE decompression algorithm +* [rcore] sdefl (Micha Mettke) for DEFLATE compression algorithm +* [rcore] rprand (Ramon Santamaria) for pseudo-random numbers generation +* [rtextures] qoi (Dominic Szablewski - https://phoboslab.org) for QOI image manage +* [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_resize2 (Sean Barret) for image resizing algorithms +* [rtextures] stb_perlin (Sean Barret) for Perlin Noise image generation +* [rtextures] rl_gputex (Ramon Santamaria) for GPU-compressed texture formats +* [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] m3d (bzt) for models loading (M3D, https://bztsrc.gitlab.io/model3d) +* [rmodels] vox_loader (Johann Nadalutti) for models loading (VOX) +* [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 +* [raudio] qoa (Dominic Szablewski - https://phoboslab.org) for QOA audio manage +* +* +* 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-2026 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. +* +**********************************************************************************************/ + +#ifndef RAYLIB_H +#define RAYLIB_H + +#include // Required for: va_list - Only used by TraceLogCallback + +#define RAYLIB_VERSION_MAJOR 6 +#define RAYLIB_VERSION_MINOR 0 +#define RAYLIB_VERSION_PATCH 0 +#define RAYLIB_VERSION "6.0" + +// Function specifiers in case library is build/used as a shared library +// NOTE: Microsoft specifiers to tell compiler that symbols are imported/exported from a .dll +// NOTE: visibility("default") attribute makes symbols "visible" when compiled with -fvisibility=hidden +#if defined(_WIN32) + #if defined(__TINYC__) + #define __declspec(x) __attribute__((x)) + #endif + #if defined(BUILD_LIBTYPE_SHARED) + #define RLAPI __declspec(dllexport) // Building the library as a Win32 shared library (.dll) + #elif defined(USE_LIBTYPE_SHARED) + #define RLAPI __declspec(dllimport) // Using the library as a Win32 shared library (.dll) + #endif +#else + #if defined(BUILD_LIBTYPE_SHARED) + #define RLAPI __attribute__((visibility("default"))) // Building as a Unix shared library (.so/.dylib) + #endif +#endif + +#ifndef RLAPI + #define RLAPI // Functions defined as 'extern' by default (implicit specifiers) +#endif + +//---------------------------------------------------------------------------------- +// Defines and Macros +//---------------------------------------------------------------------------------- +#ifndef PI + #define PI 3.14159265358979323846f +#endif +#ifndef DEG2RAD + #define DEG2RAD (PI/180.0f) +#endif +#ifndef RAD2DEG + #define RAD2DEG (180.0f/PI) +#endif + +// Allow custom memory allocators +// NOTE: Require recompiling raylib sources +#ifndef RL_MALLOC + #define RL_MALLOC(sz) malloc(sz) +#endif +#ifndef RL_CALLOC + #define RL_CALLOC(n,sz) calloc(n,sz) +#endif +#ifndef RL_REALLOC + #define RL_REALLOC(ptr,sz) realloc(ptr,sz) +#endif +#ifndef RL_FREE + #define RL_FREE(ptr) free(ptr) +#endif + +// NOTE: MSVC C++ compiler does not support compound literals (C99 feature) +// Plain structures in C++ (without constructors) can be initialized with { } +// This is called aggregate initialization (C++11 feature) +#if defined(__cplusplus) + #define CLITERAL(type) type +#else + #define CLITERAL(type) (type) +#endif + +// Some compilers (mostly macos clang) default to C++98, +// where aggregate initialization can't be used +// So, give a more clear error stating how to fix this +#if !defined(_MSC_VER) && (defined(__cplusplus) && __cplusplus < 201103L) + #error "C++11 or later is required. Add -std=c++11" +#endif + +// NOTE: Set some defines with some data types declared by raylib +// Other modules (raymath, rlgl) also require some of those types, so, +// to be able to use those other modules as standalone (not depending on raylib) +// this defines are useful for internal check and avoid type (re)definitions +#define RL_COLOR_TYPE +#define RL_RECTANGLE_TYPE +#define RL_VECTOR2_TYPE +#define RL_VECTOR3_TYPE +#define RL_VECTOR4_TYPE +#define RL_QUATERNION_TYPE +#define RL_MATRIX_TYPE + +// 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 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) + +//---------------------------------------------------------------------------------- +// Types and Structures Definition +//---------------------------------------------------------------------------------- +// Boolean type +#if (defined(__STDC__) && __STDC_VERSION__ >= 199901L) || (defined(_MSC_VER) && _MSC_VER >= 1800) + #include +#elif !defined(__cplusplus) && !defined(bool) + typedef enum bool { false = 0, true = !false } bool; + #define RL_BOOL_TYPE +#endif + +// Vector2, 2 components +typedef struct Vector2 { + float x; // Vector x component + float y; // Vector y component +} Vector2; + +// Vector3, 3 components +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 { + float x; // Vector x component + float y; // Vector y component + float z; // Vector z component + float w; // Vector w component +} Vector4; + +// Quaternion, 4 components (Vector4 alias) +typedef Vector4 Quaternion; + +// Matrix, 4x4 components, column major, OpenGL style, right-handed +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) + float m3, m7, m11, m15; // Matrix fourth row (4 components) +} Matrix; + +// Color, 4 components, R8G8B8A8 (32bit) +typedef struct Color { + unsigned char r; // Color red value + unsigned char g; // Color green value + unsigned char b; // Color blue value + unsigned char a; // Color alpha value +} Color; + +// Rectangle, 4 components +typedef struct Rectangle { + float x; // Rectangle top-left corner position x + float y; // Rectangle top-left corner position y + float width; // Rectangle width + float height; // Rectangle height +} Rectangle; + +// Image, pixel data stored in CPU memory (RAM) +typedef struct Image { + void *data; // Image raw data + int width; // Image base width + int height; // Image base height + int mipmaps; // Mipmap levels, 1 by default + int format; // Data format (PixelFormat type) +} Image; + +// Texture, tex data stored in GPU memory (VRAM) +typedef struct Texture { + unsigned int id; // OpenGL texture id + int width; // Texture base width + int height; // Texture base height + int mipmaps; // Mipmap levels, 1 by default + int format; // Data format (PixelFormat type) +} Texture; + +// Texture2D, same as Texture +typedef Texture Texture2D; + +// TextureCubemap, same as Texture +typedef Texture TextureCubemap; + +// RenderTexture, fbo for texture rendering +typedef struct RenderTexture { + unsigned int id; // OpenGL framebuffer object id + Texture texture; // Color buffer attachment texture + Texture depth; // Depth buffer attachment texture +} RenderTexture; + +// RenderTexture2D, same as RenderTexture +typedef RenderTexture RenderTexture2D; + +// NPatchInfo, n-patch layout info +typedef struct NPatchInfo { + Rectangle source; // Texture source rectangle + int left; // Left border offset + int top; // Top border offset + int right; // Right border offset + int bottom; // Bottom border offset + int layout; // Layout of the n-patch: 3x3, 1x3 or 3x1 +} NPatchInfo; + +// GlyphInfo, font characters glyphs info +typedef struct GlyphInfo { + int value; // Character value (Unicode) + int offsetX; // Character offset X when drawing + int offsetY; // Character offset Y when drawing + int advanceX; // Character advance position X + Image image; // Character image data +} GlyphInfo; + +// Font, font texture and GlyphInfo array data +typedef struct Font { + int baseSize; // Base size (default chars height) + int glyphCount; // Number of glyph characters + int glyphPadding; // Padding around the glyph characters + Texture2D texture; // Texture atlas containing the glyphs + Rectangle *recs; // Rectangles in texture for the glyphs + GlyphInfo *glyphs; // Glyphs info data +} Font; + +// Camera, defines position/orientation in 3d space +typedef struct Camera3D { + Vector3 position; // Camera position + Vector3 target; // Camera target it looks-at + Vector3 up; // Camera up vector (rotation over its axis) + float fovy; // Camera field-of-view aperture in Y (degrees) in perspective, used as near plane height in world units in orthographic + int projection; // Camera projection: CAMERA_PERSPECTIVE or CAMERA_ORTHOGRAPHIC +} Camera3D; + +typedef Camera3D Camera; // Camera type fallback, defaults to Camera3D + +// Camera2D, defines position/orientation in 2d space +typedef struct Camera2D { + Vector2 offset; // Camera offset (screen space offset from window origin) + Vector2 target; // Camera target (world space target point that is mapped to screen space offset) + float rotation; // Camera rotation in degrees (pivots around target) + float zoom; // Camera zoom (scaling around target), must not be set to 0, set to 1.0f for no scale +} Camera2D; + +// Mesh, vertex data and vao/vbo +typedef struct Mesh { + int vertexCount; // Number of vertices stored in arrays + int triangleCount; // Number of triangles stored (indexed or not) + + // Vertex attributes data + float *vertices; // Vertex position (XYZ - 3 components per vertex) (shader-location = 0) + float *texcoords; // Vertex texture coordinates (UV - 2 components per vertex) (shader-location = 1) + float *texcoords2; // Vertex texture second coordinates (UV - 2 components per vertex) (shader-location = 5) + float *normals; // Vertex normals (XYZ - 3 components per vertex) (shader-location = 2) + float *tangents; // Vertex tangents (XYZW - 4 components per vertex) (shader-location = 4) + unsigned char *colors; // Vertex colors (RGBA - 4 components per vertex) (shader-location = 3) + unsigned short *indices; // Vertex indices (in case vertex data comes indexed) + + // Skin data for animation + int boneCount; // Number of bones (MAX: 256 bones) + unsigned char *boneIndices; // Vertex bone indices, up to 4 bones influence by vertex (skinning) (shader-location = 6) + float *boneWeights; // Vertex bone weight, up to 4 bones influence by vertex (skinning) (shader-location = 7) + + // Runtime animation vertex data (CPU skinning) + // NOTE: In case of GPU skinning, not used, pointers are NULL + float *animVertices; // Animated vertex positions (after bones transformations) + float *animNormals; // Animated normals (after bones transformations) + + // OpenGL identifiers + unsigned int vaoId; // OpenGL Vertex Array Object id + unsigned int *vboId; // OpenGL Vertex Buffer Objects id (default vertex data) +} Mesh; + +// Shader +typedef struct Shader { + unsigned int id; // Shader program id + int *locs; // Shader locations array (RL_MAX_SHADER_LOCATIONS) +} Shader; + +// 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 { + 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 { + Vector3 translation; // Translation + Quaternion rotation; // Rotation + Vector3 scale; // Scale +} Transform; + +// Anim pose, an array of Transform[] +typedef Transform *ModelAnimPose; + +// Bone, skeletal animation bone +typedef struct BoneInfo { + char name[32]; // Bone name + int parent; // Bone parent +} BoneInfo; + +// Skeleton, animation bones hierarchy +typedef struct ModelSkeleton { + int boneCount; // Number of bones + BoneInfo *bones; // Bones information (skeleton) + ModelAnimPose bindPose; // Bones base transformation (Transform[]) +} ModelSkeleton; + +// Model, meshes, materials and animation data +typedef struct Model { + Matrix transform; // Local transform matrix + + int meshCount; // Number of meshes + int materialCount; // Number of materials + Mesh *meshes; // Meshes array + Material *materials; // Materials array + int *meshMaterial; // Mesh material number + + // Animation data + ModelSkeleton skeleton; // Skeleton for animation + + // Runtime animation data (CPU/GPU skinning) + ModelAnimPose currentPose; // Current animation pose (Transform[]) + Matrix *boneMatrices; // Bones animated transformation matrices +} Model; + +// ModelAnimation, contains a full animation sequence +typedef struct ModelAnimation { + char name[32]; // Animation name + + int boneCount; // Number of bones (per pose) + int keyframeCount; // Number of animation key frames + ModelAnimPose *keyframePoses; // Animation sequence keyframe poses [keyframe][pose] +} ModelAnimation; + +// Ray, ray for raycasting +typedef struct Ray { + Vector3 position; // Ray position (origin) + Vector3 direction; // Ray direction (normalized) +} Ray; + +// RayCollision, ray hit information +typedef struct RayCollision { + bool hit; // Did the ray hit something? + float distance; // Distance to the nearest hit + Vector3 point; // Point of the nearest hit + Vector3 normal; // Surface normal of hit +} RayCollision; + +// BoundingBox +typedef struct BoundingBox { + Vector3 min; // Minimum vertex box-corner + Vector3 max; // Maximum vertex box-corner +} BoundingBox; + +// Wave, audio wave data +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) + unsigned int channels; // Number of channels (1-mono, 2-stereo, ...) + void *data; // Buffer data pointer +} Wave; + +// Opaque structs declaration +// NOTE: Actual structs are defined internally in raudio module +typedef struct rAudioBuffer rAudioBuffer; +typedef struct rAudioProcessor rAudioProcessor; + +// AudioStream, custom audio stream +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 + + unsigned int sampleRate; // Frequency (samples per second) + unsigned int sampleSize; // Bit depth (bits per sample): 8, 16, 32 (24 not supported) + unsigned int channels; // Number of channels (1-mono, 2-stereo, ...) +} AudioStream; + +// 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 { + AudioStream stream; // Audio stream + unsigned int frameCount; // Total number of frames (considering channels) + bool looping; // Music looping enable + + int ctxType; // Type of music context (audio filetype) + void *ctxData; // Audio context data, depends on type +} Music; + +// VrDeviceInfo, Head-Mounted-Display device parameters +typedef struct VrDeviceInfo { + int hResolution; // Horizontal resolution in pixels + int vResolution; // Vertical resolution in pixels + float hScreenSize; // Horizontal size in meters + float vScreenSize; // Vertical size in meters + float eyeToScreenDistance; // Distance between eye and display in meters + float lensSeparationDistance; // Lens separation distance in meters + float interpupillaryDistance; // IPD (distance between pupils) in meters + float lensDistortionValues[4]; // Lens distortion constant parameters + float chromaAbCorrection[4]; // Chromatic aberration correction parameters +} VrDeviceInfo; + +// VrStereoConfig, VR stereo rendering configuration for simulator +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 + float rightLensCenter[2]; // VR right lens center + float leftScreenCenter[2]; // VR left screen center + float rightScreenCenter[2]; // VR right screen center + float scale[2]; // VR distortion scale + float scaleIn[2]; // VR distortion scale in +} VrStereoConfig; + +// File path list +typedef struct FilePathList { + unsigned int count; // Filepaths entries count + char **paths; // Filepaths entries +} FilePathList; + +// Automation event +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 { + unsigned int capacity; // Events max entries (MAX_AUTOMATION_EVENTS) + unsigned int count; // Events entries count + AutomationEvent *events; // Events entries +} AutomationEventList; + +//---------------------------------------------------------------------------------- +// Enumerators Definition +//---------------------------------------------------------------------------------- +// 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 { + 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 + FLAG_WINDOW_UNDECORATED = 0x00000008, // Set to disable window decoration (frame and buttons) + FLAG_WINDOW_HIDDEN = 0x00000080, // Set to hide window + FLAG_WINDOW_MINIMIZED = 0x00000200, // Set to minimize window (iconify) + FLAG_WINDOW_MAXIMIZED = 0x00000400, // Set to maximize window (expanded to monitor) + FLAG_WINDOW_UNFOCUSED = 0x00000800, // Set to window non focused + FLAG_WINDOW_TOPMOST = 0x00001000, // Set to window always on top + FLAG_WINDOW_ALWAYS_RUN = 0x00000100, // Set to allow windows running while minimized + FLAG_WINDOW_TRANSPARENT = 0x00000010, // Set to allow transparent framebuffer + FLAG_WINDOW_HIGHDPI = 0x00002000, // Set to support HighDPI + FLAG_WINDOW_MOUSE_PASSTHROUGH = 0x00004000, // Set to support mouse passthrough, only supported when FLAG_WINDOW_UNDECORATED + FLAG_BORDERLESS_WINDOWED_MODE = 0x00008000, // Set to run program in borderless windowed mode + FLAG_MSAA_4X_HINT = 0x00000020, // Set to try enabling MSAA 4X + FLAG_INTERLACED_HINT = 0x00010000 // Set to try enabling interlaced video format (for V3D) +} ConfigFlags; + +// Trace log level +// NOTE: Organized by priority level +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 + LOG_INFO, // Info logging, used for program execution info + LOG_WARNING, // Warning logging, used on recoverable failures + LOG_ERROR, // Error logging, used on unrecoverable failures + LOG_FATAL, // Fatal logging, used to abort program: exit(EXIT_FAILURE) + LOG_NONE // Disable logging +} TraceLogLevel; + +// Keyboard keys (US keyboard layout) +// NOTE: Use GetKeyPressed() to allow redefining required keys for alternative layouts +typedef enum { + KEY_NULL = 0, // Key: NULL, used for no key pressed + // Alphanumeric keys + KEY_APOSTROPHE = 39, // Key: ' + KEY_COMMA = 44, // Key: , + KEY_MINUS = 45, // Key: - + KEY_PERIOD = 46, // Key: . + KEY_SLASH = 47, // Key: / + KEY_ZERO = 48, // Key: 0 + KEY_ONE = 49, // Key: 1 + KEY_TWO = 50, // Key: 2 + KEY_THREE = 51, // Key: 3 + KEY_FOUR = 52, // Key: 4 + KEY_FIVE = 53, // Key: 5 + KEY_SIX = 54, // Key: 6 + KEY_SEVEN = 55, // Key: 7 + KEY_EIGHT = 56, // Key: 8 + KEY_NINE = 57, // Key: 9 + KEY_SEMICOLON = 59, // Key: ; + KEY_EQUAL = 61, // Key: = + KEY_A = 65, // Key: A | a + KEY_B = 66, // Key: B | b + KEY_C = 67, // Key: C | c + KEY_D = 68, // Key: D | d + KEY_E = 69, // Key: E | e + KEY_F = 70, // Key: F | f + KEY_G = 71, // Key: G | g + KEY_H = 72, // Key: H | h + KEY_I = 73, // Key: I | i + KEY_J = 74, // Key: J | j + KEY_K = 75, // Key: K | k + KEY_L = 76, // Key: L | l + KEY_M = 77, // Key: M | m + KEY_N = 78, // Key: N | n + KEY_O = 79, // Key: O | o + KEY_P = 80, // Key: P | p + KEY_Q = 81, // Key: Q | q + KEY_R = 82, // Key: R | r + KEY_S = 83, // Key: S | s + KEY_T = 84, // Key: T | t + KEY_U = 85, // Key: U | u + KEY_V = 86, // Key: V | v + KEY_W = 87, // Key: W | w + KEY_X = 88, // Key: X | x + KEY_Y = 89, // Key: Y | y + KEY_Z = 90, // Key: Z | z + KEY_LEFT_BRACKET = 91, // Key: [ + KEY_BACKSLASH = 92, // Key: '\' + KEY_RIGHT_BRACKET = 93, // Key: ] + KEY_GRAVE = 96, // Key: ` + // Function keys + KEY_SPACE = 32, // Key: Space + KEY_ESCAPE = 256, // Key: Esc + KEY_ENTER = 257, // Key: Enter + KEY_TAB = 258, // Key: Tab + KEY_BACKSPACE = 259, // Key: Backspace + KEY_INSERT = 260, // Key: Ins + KEY_DELETE = 261, // Key: Del + KEY_RIGHT = 262, // Key: Cursor right + KEY_LEFT = 263, // Key: Cursor left + KEY_DOWN = 264, // Key: Cursor down + KEY_UP = 265, // Key: Cursor up + KEY_PAGE_UP = 266, // Key: Page up + KEY_PAGE_DOWN = 267, // Key: Page down + KEY_HOME = 268, // Key: Home + KEY_END = 269, // Key: End + KEY_CAPS_LOCK = 280, // Key: Caps lock + KEY_SCROLL_LOCK = 281, // Key: Scroll down + KEY_NUM_LOCK = 282, // Key: Num lock + KEY_PRINT_SCREEN = 283, // Key: Print screen + KEY_PAUSE = 284, // Key: Pause + KEY_F1 = 290, // Key: F1 + KEY_F2 = 291, // Key: F2 + KEY_F3 = 292, // Key: F3 + KEY_F4 = 293, // Key: F4 + KEY_F5 = 294, // Key: F5 + KEY_F6 = 295, // Key: F6 + KEY_F7 = 296, // Key: F7 + KEY_F8 = 297, // Key: F8 + KEY_F9 = 298, // Key: F9 + KEY_F10 = 299, // Key: F10 + KEY_F11 = 300, // Key: F11 + KEY_F12 = 301, // Key: F12 + KEY_LEFT_SHIFT = 340, // Key: Shift left + KEY_LEFT_CONTROL = 341, // Key: Control left + KEY_LEFT_ALT = 342, // Key: Alt left + KEY_LEFT_SUPER = 343, // Key: Super left + KEY_RIGHT_SHIFT = 344, // Key: Shift right + KEY_RIGHT_CONTROL = 345, // Key: Control right + KEY_RIGHT_ALT = 346, // Key: Alt right + KEY_RIGHT_SUPER = 347, // Key: Super right + KEY_KB_MENU = 348, // Key: KB menu + // Keypad keys + KEY_KP_0 = 320, // Key: Keypad 0 + KEY_KP_1 = 321, // Key: Keypad 1 + KEY_KP_2 = 322, // Key: Keypad 2 + KEY_KP_3 = 323, // Key: Keypad 3 + KEY_KP_4 = 324, // Key: Keypad 4 + KEY_KP_5 = 325, // Key: Keypad 5 + KEY_KP_6 = 326, // Key: Keypad 6 + KEY_KP_7 = 327, // Key: Keypad 7 + KEY_KP_8 = 328, // Key: Keypad 8 + KEY_KP_9 = 329, // Key: Keypad 9 + KEY_KP_DECIMAL = 330, // Key: Keypad . + KEY_KP_DIVIDE = 331, // Key: Keypad / + KEY_KP_MULTIPLY = 332, // Key: Keypad * + KEY_KP_SUBTRACT = 333, // Key: Keypad - + KEY_KP_ADD = 334, // Key: Keypad + + KEY_KP_ENTER = 335, // Key: Keypad Enter + KEY_KP_EQUAL = 336, // Key: Keypad = + // Android key buttons + KEY_BACK = 4, // Key: Android back button + KEY_MENU = 5, // Key: Android menu button + KEY_VOLUME_UP = 24, // Key: Android volume up button + KEY_VOLUME_DOWN = 25 // Key: Android volume down button +} KeyboardKey; + +// Add backwards compatibility support for deprecated names +#define MOUSE_LEFT_BUTTON MOUSE_BUTTON_LEFT +#define MOUSE_RIGHT_BUTTON MOUSE_BUTTON_RIGHT +#define MOUSE_MIDDLE_BUTTON MOUSE_BUTTON_MIDDLE + +// Mouse buttons +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) + MOUSE_BUTTON_SIDE = 3, // Mouse button side (advanced mouse device) + MOUSE_BUTTON_EXTRA = 4, // Mouse button extra (advanced mouse device) + MOUSE_BUTTON_FORWARD = 5, // Mouse button forward (advanced mouse device) + MOUSE_BUTTON_BACK = 6, // Mouse button back (advanced mouse device) +} MouseButton; + +// Mouse cursor +typedef enum { + MOUSE_CURSOR_DEFAULT = 0, // Default pointer shape + MOUSE_CURSOR_ARROW = 1, // Arrow shape + MOUSE_CURSOR_IBEAM = 2, // Text writing cursor shape + MOUSE_CURSOR_CROSSHAIR = 3, // Cross shape + MOUSE_CURSOR_POINTING_HAND = 4, // Pointing hand cursor + MOUSE_CURSOR_RESIZE_EW = 5, // Horizontal resize/move arrow shape + MOUSE_CURSOR_RESIZE_NS = 6, // Vertical resize/move arrow shape + MOUSE_CURSOR_RESIZE_NWSE = 7, // Top-left to bottom-right diagonal resize/move arrow shape + MOUSE_CURSOR_RESIZE_NESW = 8, // The top-right to bottom-left diagonal resize/move arrow shape + MOUSE_CURSOR_RESIZE_ALL = 9, // The omnidirectional resize/move cursor shape + MOUSE_CURSOR_NOT_ALLOWED = 10 // The operation-not-allowed shape +} MouseCursor; + +// Gamepad buttons +typedef enum { + GAMEPAD_BUTTON_UNKNOWN = 0, // Unknown button, for error checking + GAMEPAD_BUTTON_LEFT_FACE_UP, // Gamepad left DPAD up button + GAMEPAD_BUTTON_LEFT_FACE_RIGHT, // Gamepad left DPAD right button + GAMEPAD_BUTTON_LEFT_FACE_DOWN, // Gamepad left DPAD down button + GAMEPAD_BUTTON_LEFT_FACE_LEFT, // Gamepad left DPAD left button + GAMEPAD_BUTTON_RIGHT_FACE_UP, // Gamepad right button up (i.e. PS3: Triangle, Xbox: Y) + GAMEPAD_BUTTON_RIGHT_FACE_RIGHT, // Gamepad right button right (i.e. PS3: Circle, Xbox: B) + GAMEPAD_BUTTON_RIGHT_FACE_DOWN, // Gamepad right button down (i.e. PS3: Cross, Xbox: A) + GAMEPAD_BUTTON_RIGHT_FACE_LEFT, // Gamepad right button left (i.e. PS3: Square, Xbox: X) + GAMEPAD_BUTTON_LEFT_TRIGGER_1, // Gamepad top/back trigger left (first), it could be a trailing button + GAMEPAD_BUTTON_LEFT_TRIGGER_2, // Gamepad top/back trigger left (second), it could be a trailing button + GAMEPAD_BUTTON_RIGHT_TRIGGER_1, // Gamepad top/back trigger right (first), it could be a trailing button + GAMEPAD_BUTTON_RIGHT_TRIGGER_2, // Gamepad top/back trigger right (second), it could be a trailing button + GAMEPAD_BUTTON_MIDDLE_LEFT, // Gamepad center buttons, left one (i.e. PS3: Select) + GAMEPAD_BUTTON_MIDDLE, // Gamepad center buttons, middle one (i.e. PS3: PS, Xbox: XBOX) + GAMEPAD_BUTTON_MIDDLE_RIGHT, // Gamepad center buttons, right one (i.e. PS3: Start) + GAMEPAD_BUTTON_LEFT_THUMB, // Gamepad joystick pressed button left + GAMEPAD_BUTTON_RIGHT_THUMB // Gamepad joystick pressed button right +} GamepadButton; + +// Gamepad axes +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 + GAMEPAD_AXIS_RIGHT_Y = 3, // Gamepad right stick Y axis + GAMEPAD_AXIS_LEFT_TRIGGER = 4, // Gamepad back trigger left, pressure level: [1..-1] + GAMEPAD_AXIS_RIGHT_TRIGGER = 5 // Gamepad back trigger right, pressure level: [1..-1] +} GamepadAxis; + +// Material map index +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 + MATERIAL_MAP_ROUGHNESS, // Roughness material + MATERIAL_MAP_OCCLUSION, // Ambient occlusion material + MATERIAL_MAP_EMISSION, // Emission material + MATERIAL_MAP_HEIGHT, // Heightmap material + MATERIAL_MAP_CUBEMAP, // Cubemap material (NOTE: Uses GL_TEXTURE_CUBE_MAP) + MATERIAL_MAP_IRRADIANCE, // Irradiance material (NOTE: Uses GL_TEXTURE_CUBE_MAP) + MATERIAL_MAP_PREFILTER, // Prefilter material (NOTE: Uses GL_TEXTURE_CUBE_MAP) + MATERIAL_MAP_BRDF // Brdf material +} MaterialMapIndex; + +#define MATERIAL_MAP_DIFFUSE MATERIAL_MAP_ALBEDO +#define MATERIAL_MAP_SPECULAR MATERIAL_MAP_METALNESS + +// Shader location index +// NOTE: Some locations are tried to be set automatically on shader loading, +// but only if default attributes/uniforms names are found, check config.h for names +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 + SHADER_LOC_VERTEX_NORMAL, // Shader location: vertex attribute: normal + SHADER_LOC_VERTEX_TANGENT, // Shader location: vertex attribute: tangent + SHADER_LOC_VERTEX_COLOR, // Shader location: vertex attribute: color + SHADER_LOC_MATRIX_MVP, // Shader location: matrix uniform: model-view-projection + SHADER_LOC_MATRIX_VIEW, // Shader location: matrix uniform: view (camera transform) + SHADER_LOC_MATRIX_PROJECTION, // Shader location: matrix uniform: projection + SHADER_LOC_MATRIX_MODEL, // Shader location: matrix uniform: model (transform) + SHADER_LOC_MATRIX_NORMAL, // Shader location: matrix uniform: normal + SHADER_LOC_VECTOR_VIEW, // Shader location: vector uniform: view + SHADER_LOC_COLOR_DIFFUSE, // Shader location: vector uniform: diffuse color + SHADER_LOC_COLOR_SPECULAR, // Shader location: vector uniform: specular color + SHADER_LOC_COLOR_AMBIENT, // Shader location: vector uniform: ambient color + SHADER_LOC_MAP_ALBEDO, // Shader location: sampler2d texture: albedo (same as: SHADER_LOC_MAP_DIFFUSE) + SHADER_LOC_MAP_METALNESS, // Shader location: sampler2d texture: metalness (same as: SHADER_LOC_MAP_SPECULAR) + SHADER_LOC_MAP_NORMAL, // Shader location: sampler2d texture: normal + SHADER_LOC_MAP_ROUGHNESS, // Shader location: sampler2d texture: roughness + SHADER_LOC_MAP_OCCLUSION, // Shader location: sampler2d texture: occlusion + SHADER_LOC_MAP_EMISSION, // Shader location: sampler2d texture: emission + SHADER_LOC_MAP_HEIGHT, // Shader location: sampler2d texture: heightmap + SHADER_LOC_MAP_CUBEMAP, // Shader location: samplerCube texture: cubemap + SHADER_LOC_MAP_IRRADIANCE, // Shader location: samplerCube texture: irradiance + SHADER_LOC_MAP_PREFILTER, // Shader location: samplerCube texture: prefilter + SHADER_LOC_MAP_BRDF, // Shader location: sampler2d texture: brdf + SHADER_LOC_VERTEX_BONEIDS, // Shader location: vertex attribute: bone indices + SHADER_LOC_VERTEX_BONEWEIGHTS, // Shader location: vertex attribute: bone weights + SHADER_LOC_MATRIX_BONETRANSFORMS, // Shader location: matrix attribute: bone transforms (animation) + SHADER_LOC_VERTEX_INSTANCETRANSFORM // Shader location: vertex attribute: instance transforms +} ShaderLocationIndex; + +#define SHADER_LOC_MAP_DIFFUSE SHADER_LOC_MAP_ALBEDO +#define SHADER_LOC_MAP_SPECULAR SHADER_LOC_MAP_METALNESS + +// Shader uniform data type +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) + SHADER_UNIFORM_VEC4, // Shader uniform type: vec4 (4 float) + SHADER_UNIFORM_INT, // Shader uniform type: int + SHADER_UNIFORM_IVEC2, // Shader uniform type: ivec2 (2 int) + SHADER_UNIFORM_IVEC3, // Shader uniform type: ivec3 (3 int) + SHADER_UNIFORM_IVEC4, // Shader uniform type: ivec4 (4 int) + SHADER_UNIFORM_UINT, // Shader uniform type: unsigned int + SHADER_UNIFORM_UIVEC2, // Shader uniform type: uivec2 (2 unsigned int) + SHADER_UNIFORM_UIVEC3, // Shader uniform type: uivec3 (3 unsigned int) + SHADER_UNIFORM_UIVEC4, // Shader uniform type: uivec4 (4 unsigned int) + SHADER_UNIFORM_SAMPLER2D // Shader uniform type: sampler2d +} ShaderUniformDataType; + +// Shader attribute data types +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) + SHADER_ATTRIB_VEC4 // Shader attribute type: vec4 (4 float) +} ShaderAttributeDataType; + +// Pixel formats +// NOTE: Support depends on OpenGL version and platform +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 + PIXELFORMAT_UNCOMPRESSED_R8G8B8, // 24 bpp + PIXELFORMAT_UNCOMPRESSED_R5G5B5A1, // 16 bpp (1 bit alpha) + PIXELFORMAT_UNCOMPRESSED_R4G4B4A4, // 16 bpp (4 bit alpha) + PIXELFORMAT_UNCOMPRESSED_R8G8B8A8, // 32 bpp + PIXELFORMAT_UNCOMPRESSED_R32, // 32 bpp (1 channel - float) + PIXELFORMAT_UNCOMPRESSED_R32G32B32, // 32*3 bpp (3 channels - float) + PIXELFORMAT_UNCOMPRESSED_R32G32B32A32, // 32*4 bpp (4 channels - float) + PIXELFORMAT_UNCOMPRESSED_R16, // 16 bpp (1 channel - half float) + PIXELFORMAT_UNCOMPRESSED_R16G16B16, // 16*3 bpp (3 channels - half float) + PIXELFORMAT_UNCOMPRESSED_R16G16B16A16, // 16*4 bpp (4 channels - half float) + PIXELFORMAT_COMPRESSED_DXT1_RGB, // 4 bpp (no alpha) + PIXELFORMAT_COMPRESSED_DXT1_RGBA, // 4 bpp (1 bit alpha) + PIXELFORMAT_COMPRESSED_DXT3_RGBA, // 8 bpp + PIXELFORMAT_COMPRESSED_DXT5_RGBA, // 8 bpp + PIXELFORMAT_COMPRESSED_ETC1_RGB, // 4 bpp + PIXELFORMAT_COMPRESSED_ETC2_RGB, // 4 bpp + PIXELFORMAT_COMPRESSED_ETC2_EAC_RGBA, // 8 bpp + PIXELFORMAT_COMPRESSED_PVRT_RGB, // 4 bpp + PIXELFORMAT_COMPRESSED_PVRT_RGBA, // 4 bpp + PIXELFORMAT_COMPRESSED_ASTC_4x4_RGBA, // 8 bpp + PIXELFORMAT_COMPRESSED_ASTC_8x8_RGBA // 2 bpp +} PixelFormat; + +// 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 { + TEXTURE_FILTER_POINT = 0, // No filter, pixel approximation + TEXTURE_FILTER_BILINEAR, // Linear filtering + TEXTURE_FILTER_TRILINEAR, // Trilinear filtering (linear with mipmaps) + TEXTURE_FILTER_ANISOTROPIC_4X, // Anisotropic filtering 4x + TEXTURE_FILTER_ANISOTROPIC_8X, // Anisotropic filtering 8x + TEXTURE_FILTER_ANISOTROPIC_16X, // Anisotropic filtering 16x +} TextureFilter; + +// Texture parameters: wrap mode +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 + TEXTURE_WRAP_MIRROR_CLAMP // Mirrors and clamps to border the texture in tiled mode +} TextureWrap; + +// Cubemap layouts +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 + CUBEMAP_LAYOUT_CROSS_THREE_BY_FOUR, // Layout is defined by a 3x4 cross with cubemap faces + CUBEMAP_LAYOUT_CROSS_FOUR_BY_THREE // Layout is defined by a 4x3 cross with cubemap faces +} CubemapLayout; + +// Font type, defines generation method +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 { + BLEND_ALPHA = 0, // Blend textures considering alpha (default) + BLEND_ADDITIVE, // Blend textures adding colors + BLEND_MULTIPLIED, // Blend textures multiplying colors + BLEND_ADD_COLORS, // Blend textures adding colors (alternative) + BLEND_SUBTRACT_COLORS, // Blend textures subtracting colors (alternative) + BLEND_ALPHA_PREMULTIPLY, // Blend premultiplied textures considering alpha + BLEND_CUSTOM, // Blend textures using custom src/dst factors (use rlSetBlendFactors()) + BLEND_CUSTOM_SEPARATE // Blend textures using custom rgb/alpha separate src/dst factors (use rlSetBlendFactorsSeparate()) +} BlendMode; + +// Gesture +// NOTE: Provided as bit-wise flags to enable only desired gestures +typedef enum { + GESTURE_NONE = 0, // No gesture + GESTURE_TAP = 1, // Tap gesture + GESTURE_DOUBLETAP = 2, // Double tap gesture + GESTURE_HOLD = 4, // Hold gesture + GESTURE_DRAG = 8, // Drag gesture + GESTURE_SWIPE_RIGHT = 16, // Swipe right gesture + GESTURE_SWIPE_LEFT = 32, // Swipe left gesture + GESTURE_SWIPE_UP = 64, // Swipe up gesture + GESTURE_SWIPE_DOWN = 128, // Swipe down gesture + GESTURE_PINCH_IN = 256, // Pinch in gesture + GESTURE_PINCH_OUT = 512 // Pinch out gesture +} Gesture; + +// Camera system modes +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 + CAMERA_FIRST_PERSON, // Camera first person + CAMERA_THIRD_PERSON // Camera third person +} CameraMode; + +// Camera projection +typedef enum { + CAMERA_PERSPECTIVE = 0, // Perspective projection + CAMERA_ORTHOGRAPHIC // Orthographic projection +} CameraProjection; + +// N-patch layout +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 +} NPatchLayout; + +// Callbacks to hook some internal functions +// WARNING: These callbacks are intended for advanced users +typedef void (*TraceLogCallback)(int logLevel, const char *text, va_list args); // Logging: Redirect trace log messages +typedef unsigned char *(*LoadFileDataCallback)(const char *fileName, int *dataSize); // FileIO: Load binary data +typedef bool (*SaveFileDataCallback)(const char *fileName, void *data, int dataSize); // FileIO: Save binary data +typedef char *(*LoadFileTextCallback)(const char *fileName); // FileIO: Load text data +typedef bool (*SaveFileTextCallback)(const char *fileName, const char *text); // FileIO: Save text data + +//------------------------------------------------------------------------------------ +// Global Variables Definition +//------------------------------------------------------------------------------------ +// It's lonely here... + +//------------------------------------------------------------------------------------ +// Window and Graphics Device Functions (Module: core) +//------------------------------------------------------------------------------------ + +#if defined(__cplusplus) +extern "C" { // Prevents name mangling of functions +#endif + +// Window-related functions +RLAPI void InitWindow(int width, int height, const char *title); // Initialize window and OpenGL context +RLAPI void CloseWindow(void); // Close window and unload OpenGL context +RLAPI bool WindowShouldClose(void); // Check if application should close (KEY_ESCAPE pressed or windows close icon clicked) +RLAPI bool IsWindowReady(void); // Check if window has been initialized successfully +RLAPI bool IsWindowFullscreen(void); // Check if window is currently fullscreen +RLAPI bool IsWindowHidden(void); // Check if window is currently hidden +RLAPI bool IsWindowMinimized(void); // Check if window is currently minimized +RLAPI bool IsWindowMaximized(void); // Check if window is currently maximized +RLAPI bool IsWindowFocused(void); // Check if window is currently focused +RLAPI bool IsWindowResized(void); // Check if window has been resized last frame +RLAPI bool IsWindowState(unsigned int flag); // Check if one specific window flag is enabled +RLAPI void SetWindowState(unsigned int flags); // Set window configuration state using flags +RLAPI void ClearWindowState(unsigned int flags); // Clear window configuration state flags +RLAPI void ToggleFullscreen(void); // Toggle window state: fullscreen/windowed, resizes monitor to match window resolution +RLAPI void ToggleBorderlessWindowed(void); // Toggle window state: borderless windowed, resizes window to match monitor resolution +RLAPI void MaximizeWindow(void); // Set window state: maximized, if resizable +RLAPI void MinimizeWindow(void); // Set window state: minimized, if resizable +RLAPI void RestoreWindow(void); // Restore window from being minimized/maximized +RLAPI void SetWindowIcon(Image image); // Set icon for window (single image, RGBA 32bit) +RLAPI void SetWindowIcons(Image *images, int count); // Set icon for window (multiple images, RGBA 32bit) +RLAPI void SetWindowTitle(const char *title); // Set title for window +RLAPI void SetWindowPosition(int x, int y); // Set window position on screen +RLAPI void SetWindowMonitor(int monitor); // Set monitor for the current window +RLAPI void SetWindowMinSize(int width, int height); // Set window minimum dimensions (for FLAG_WINDOW_RESIZABLE) +RLAPI void SetWindowMaxSize(int width, int height); // Set window maximum dimensions (for FLAG_WINDOW_RESIZABLE) +RLAPI void SetWindowSize(int width, int height); // Set window dimensions +RLAPI void SetWindowOpacity(float opacity); // Set window opacity [0.0f..1.0f] +RLAPI void SetWindowFocused(void); // Set window focused +RLAPI void *GetWindowHandle(void); // Get native window handle +RLAPI int GetScreenWidth(void); // Get current screen width +RLAPI int GetScreenHeight(void); // Get current screen height +RLAPI int GetRenderWidth(void); // Get current render width (it considers HiDPI) +RLAPI int GetRenderHeight(void); // Get current render height (it considers HiDPI) +RLAPI int GetMonitorCount(void); // Get number of connected monitors +RLAPI int GetCurrentMonitor(void); // Get current monitor where window is placed +RLAPI Vector2 GetMonitorPosition(int monitor); // Get specified monitor position +RLAPI int GetMonitorWidth(int monitor); // Get specified monitor width (current video mode used by monitor) +RLAPI int GetMonitorHeight(int monitor); // Get specified monitor height (current video mode used by monitor) +RLAPI int GetMonitorPhysicalWidth(int monitor); // Get specified monitor physical width in millimetres +RLAPI int GetMonitorPhysicalHeight(int monitor); // Get specified monitor physical height in millimetres +RLAPI int GetMonitorRefreshRate(int monitor); // Get specified monitor refresh rate +RLAPI Vector2 GetWindowPosition(void); // Get window position XY on monitor +RLAPI Vector2 GetWindowScaleDPI(void); // Get window scale DPI factor +RLAPI const char *GetMonitorName(int monitor); // Get the human-readable, UTF-8 encoded name of the specified monitor +RLAPI void SetClipboardText(const char *text); // Set clipboard text content +RLAPI const char *GetClipboardText(void); // Get clipboard text content +RLAPI Image GetClipboardImage(void); // Get clipboard image content +RLAPI void EnableEventWaiting(void); // Enable waiting for events on EndDrawing(), no automatic event polling +RLAPI void DisableEventWaiting(void); // Disable waiting for events on EndDrawing(), automatic events polling + +// Cursor-related functions +RLAPI void ShowCursor(void); // Shows cursor +RLAPI void HideCursor(void); // Hides cursor +RLAPI bool IsCursorHidden(void); // Check if cursor is not visible +RLAPI void EnableCursor(void); // Enables cursor (unlock cursor) +RLAPI void DisableCursor(void); // Disables cursor (lock cursor) +RLAPI bool IsCursorOnScreen(void); // Check if cursor is on the screen + +// Drawing-related functions +RLAPI void ClearBackground(Color color); // Set background color (framebuffer clear color) +RLAPI void BeginDrawing(void); // Setup canvas (framebuffer) to start drawing +RLAPI void EndDrawing(void); // End canvas drawing and swap buffers (double buffering) +RLAPI void BeginMode2D(Camera2D camera); // Begin 2D mode with custom camera (2D) +RLAPI void EndMode2D(void); // Ends 2D mode with custom camera +RLAPI void BeginMode3D(Camera3D camera); // Begin 3D mode with custom camera (3D) +RLAPI void EndMode3D(void); // Ends 3D mode and returns to default 2D orthographic mode +RLAPI void BeginTextureMode(RenderTexture2D target); // Begin drawing to render texture +RLAPI void EndTextureMode(void); // Ends drawing to render texture +RLAPI void BeginShaderMode(Shader shader); // Begin custom shader drawing +RLAPI void EndShaderMode(void); // End custom shader drawing (use default shader) +RLAPI void BeginBlendMode(int mode); // Begin blending mode (alpha, additive, multiplied, subtract, custom) +RLAPI void EndBlendMode(void); // End blending mode (reset to default: alpha blending) +RLAPI void BeginScissorMode(int x, int y, int width, int height); // Begin scissor mode (define screen area for following drawing) +RLAPI void EndScissorMode(void); // End scissor mode +RLAPI void BeginVrStereoMode(VrStereoConfig config); // Begin stereo rendering (requires VR simulator) +RLAPI void EndVrStereoMode(void); // End stereo rendering (requires VR simulator) + +// VR stereo config functions for VR simulator +RLAPI VrStereoConfig LoadVrStereoConfig(VrDeviceInfo device); // Load VR stereo config for VR simulator device parameters +RLAPI void UnloadVrStereoConfig(VrStereoConfig config); // Unload VR stereo config + +// Shader management functions +// NOTE: Shader functionality is not available on OpenGL 1.1 +RLAPI Shader LoadShader(const char *vsFileName, const char *fsFileName); // Load shader from files and bind default locations +RLAPI Shader LoadShaderFromMemory(const char *vsCode, const char *fsCode); // Load shader from code strings and bind default locations +RLAPI bool IsShaderValid(Shader shader); // Check if a shader is valid (loaded on GPU) +RLAPI int GetShaderLocation(Shader shader, const char *uniformName); // Get shader uniform location +RLAPI int GetShaderLocationAttrib(Shader shader, const char *attribName); // Get shader attribute location +RLAPI void SetShaderValue(Shader shader, int locIndex, const void *value, int uniformType); // Set shader uniform value +RLAPI void SetShaderValueV(Shader shader, int locIndex, const void *value, int uniformType, int count); // Set shader uniform value vector +RLAPI void SetShaderValueMatrix(Shader shader, int locIndex, Matrix mat); // Set shader uniform value (matrix 4x4) +RLAPI void SetShaderValueTexture(Shader shader, int locIndex, Texture2D texture); // Set shader uniform value and bind the texture (sampler2d) +RLAPI void UnloadShader(Shader shader); // Unload shader from GPU memory (VRAM) + +// Screen-space-related functions +#define GetMouseRay GetScreenToWorldRay // Compatibility hack for previous raylib versions +RLAPI Ray GetScreenToWorldRay(Vector2 position, Camera camera); // Get a ray trace from screen position (i.e mouse) +RLAPI Ray GetScreenToWorldRayEx(Vector2 position, Camera camera, int width, int height); // Get a ray trace from screen position (i.e mouse) in a viewport +RLAPI Vector2 GetWorldToScreen(Vector3 position, Camera camera); // Get the screen space position for a 3d world space position +RLAPI Vector2 GetWorldToScreenEx(Vector3 position, Camera camera, int width, int height); // Get size position for a 3d world space position +RLAPI Vector2 GetWorldToScreen2D(Vector2 position, Camera2D camera); // Get the screen space position for a 2d camera world space position +RLAPI Vector2 GetScreenToWorld2D(Vector2 position, Camera2D camera); // Get the world space position for a 2d camera screen space position +RLAPI Matrix GetCameraMatrix(Camera camera); // Get camera transform matrix (view matrix) +RLAPI Matrix GetCameraMatrix2D(Camera2D camera); // Get camera 2d transform matrix + +// Timing-related functions +RLAPI void SetTargetFPS(int fps); // Set target FPS (maximum) +RLAPI float GetFrameTime(void); // Get time in seconds for last frame drawn (delta time) +RLAPI double GetTime(void); // Get elapsed time in seconds since InitWindow() +RLAPI int GetFPS(void); // Get current FPS + +// Custom frame control functions +// NOTE: Those functions are intended for advanced users that want full control over the frame processing +// By default EndDrawing() does this job: draws everything + SwapScreenBuffer() + manage frame timing + PollInputEvents() +// To avoid that behaviour and control frame processes manually, enable in config.h: SUPPORT_CUSTOM_FRAME_CONTROL +RLAPI void SwapScreenBuffer(void); // Swap back buffer with front buffer (screen drawing) +RLAPI void PollInputEvents(void); // Register all input events +RLAPI void WaitTime(double seconds); // Wait for some time (halt program execution) + +// Random values generation functions +RLAPI void SetRandomSeed(unsigned int seed); // Set the seed for the random number generator +RLAPI int GetRandomValue(int min, int max); // Get a random value between min and max (both included) +RLAPI int *LoadRandomSequence(unsigned int count, int min, int max); // Load random values sequence, no values repeated +RLAPI void UnloadRandomSequence(int *sequence); // Unload random values sequence + +// Misc. functions +RLAPI void TakeScreenshot(const char *fileName); // Takes a screenshot of current screen (filename extension defines format) +RLAPI void SetConfigFlags(unsigned int flags); // Setup init configuration flags (view FLAGS) +RLAPI void OpenURL(const char *url); // Open URL with default system browser (if available) + +// Logging system +RLAPI void SetTraceLogLevel(int logLevel); // Set the current threshold (minimum) log level +RLAPI void TraceLog(int logLevel, const char *text, ...); // Show trace log messages (LOG_DEBUG, LOG_INFO, LOG_WARNING, LOG_ERROR...) +RLAPI void SetTraceLogCallback(TraceLogCallback callback); // Set custom trace log + +// Memory management, using internal allocators +RLAPI void *MemAlloc(unsigned int size); // Internal memory allocator +RLAPI void *MemRealloc(void *ptr, unsigned int size); // Internal memory reallocator +RLAPI void MemFree(void *ptr); // Internal memory free + +// File system management functions +RLAPI unsigned char *LoadFileData(const char *fileName, int *dataSize); // Load file data as byte array (read) +RLAPI void UnloadFileData(unsigned char *data); // Unload file data allocated by LoadFileData() +RLAPI bool SaveFileData(const char *fileName, void *data, int dataSize); // Save data to file from byte array (write), returns true on success +RLAPI bool ExportDataAsCode(const unsigned char *data, int dataSize, const char *fileName); // Export data to code (.h), returns true on success +RLAPI char *LoadFileText(const char *fileName); // Load text data from file (read), returns a '\0' terminated string +RLAPI void UnloadFileText(char *text); // Unload file text data allocated by LoadFileText() +RLAPI bool SaveFileText(const char *fileName, const char *text); // Save text data to file (write), string must be '\0' terminated, returns true on success + +// File access custom callbacks +// WARNING: Callbacks setup is intended for advanced users +RLAPI void SetLoadFileDataCallback(LoadFileDataCallback callback); // Set custom file binary data loader +RLAPI void SetSaveFileDataCallback(SaveFileDataCallback callback); // Set custom file binary data saver +RLAPI void SetLoadFileTextCallback(LoadFileTextCallback callback); // Set custom file text data loader +RLAPI void SetSaveFileTextCallback(SaveFileTextCallback callback); // Set custom file text data saver + +RLAPI int FileRename(const char *fileName, const char *fileRename); // Rename file (if exists) +RLAPI int FileRemove(const char *fileName); // Remove file (if exists) +RLAPI int FileCopy(const char *srcPath, const char *dstPath); // Copy file from one path to another, dstPath created if it doesn't exist +RLAPI int FileMove(const char *srcPath, const char *dstPath); // Move file from one directory to another, dstPath created if it doesn't exist +RLAPI int FileTextReplace(const char *fileName, const char *search, const char *replacement); // Replace text in an existing file +RLAPI int FileTextFindIndex(const char *fileName, const char *search); // Find text in existing file +RLAPI bool FileExists(const char *fileName); // Check if file exists +RLAPI bool DirectoryExists(const char *dirPath); // Check if a directory path exists +RLAPI bool IsFileExtension(const char *fileName, const char *ext); // Check file extension (recommended include point: .png, .wav) +RLAPI int GetFileLength(const char *fileName); // Get file length in bytes (NOTE: GetFileSize() conflicts with windows.h) +RLAPI long GetFileModTime(const char *fileName); // Get file modification time (last write time) +RLAPI const char *GetFileExtension(const char *fileName); // Get pointer to extension for a filename string (includes dot: '.png') +RLAPI const char *GetFileName(const char *filePath); // Get pointer to filename for a path string +RLAPI const char *GetFileNameWithoutExt(const char *filePath); // Get filename string without extension (uses static string) +RLAPI const char *GetDirectoryPath(const char *filePath); // Get full path for a given fileName with path (uses static string) +RLAPI const char *GetPrevDirectoryPath(const char *dirPath); // Get previous directory path for a given path (uses static string) +RLAPI const char *GetWorkingDirectory(void); // Get current working directory (uses static string) +RLAPI const char *GetApplicationDirectory(void); // Get the directory of the running application (uses static string) +RLAPI int MakeDirectory(const char *dirPath); // Create directories (including full path requested), returns 0 on success +RLAPI bool ChangeDirectory(const char *dirPath); // Change working directory, return true on success +RLAPI bool IsPathFile(const char *path); // Check if a given path is a file or a directory +RLAPI bool IsFileNameValid(const char *fileName); // Check if fileName is valid for the platform/OS +RLAPI FilePathList LoadDirectoryFiles(const char *dirPath); // Load directory filepaths +RLAPI FilePathList LoadDirectoryFilesEx(const char *basePath, const char *filter, bool scanSubdirs); // Load directory filepaths with extension filtering and recursive directory scan. Use 'DIR' in the filter string to include directories in the result +RLAPI void UnloadDirectoryFiles(FilePathList files); // Unload filepaths +RLAPI bool IsFileDropped(void); // Check if a file has been dropped into window +RLAPI FilePathList LoadDroppedFiles(void); // Load dropped filepaths +RLAPI void UnloadDroppedFiles(FilePathList files); // Unload dropped filepaths +RLAPI unsigned int GetDirectoryFileCount(const char *dirPath); // Get the file count in a directory +RLAPI unsigned int GetDirectoryFileCountEx(const char *basePath, const char *filter, bool scanSubdirs); // Get the file count in a directory with extension filtering and recursive directory scan. Use 'DIR' in the filter string to include directories in the result + +// Compression/Encoding functionality +RLAPI unsigned char *CompressData(const unsigned char *data, int dataSize, int *compDataSize); // Compress data (DEFLATE algorithm), memory must be MemFree() +RLAPI unsigned char *DecompressData(const unsigned char *compData, int compDataSize, int *dataSize); // Decompress data (DEFLATE algorithm), memory must be MemFree() +RLAPI char *EncodeDataBase64(const unsigned char *data, int dataSize, int *outputSize); // Encode data to Base64 string (includes NULL terminator), memory must be MemFree() +RLAPI unsigned char *DecodeDataBase64(const char *text, int *outputSize); // Decode Base64 string (expected NULL terminated), memory must be MemFree() +RLAPI unsigned int ComputeCRC32(unsigned char *data, int dataSize); // Compute CRC32 hash code +RLAPI unsigned int *ComputeMD5(unsigned char *data, int dataSize); // Compute MD5 hash code, returns static int[4] (16 bytes) +RLAPI unsigned int *ComputeSHA1(unsigned char *data, int dataSize); // Compute SHA1 hash code, returns static int[5] (20 bytes) +RLAPI unsigned int *ComputeSHA256(unsigned char *data, int dataSize); // Compute SHA256 hash code, returns static int[8] (32 bytes) + +// Automation events functionality +RLAPI AutomationEventList LoadAutomationEventList(const char *fileName); // Load automation events list from file, NULL for empty list, capacity = MAX_AUTOMATION_EVENTS +RLAPI void UnloadAutomationEventList(AutomationEventList list); // Unload automation events list from file +RLAPI bool ExportAutomationEventList(AutomationEventList list, const char *fileName); // Export automation events list as text file +RLAPI void SetAutomationEventList(AutomationEventList *list); // Set automation event list to record to +RLAPI void SetAutomationEventBaseFrame(int frame); // Set automation event internal base frame to start recording +RLAPI void StartAutomationEventRecording(void); // Start recording automation events (AutomationEventList must be set) +RLAPI void StopAutomationEventRecording(void); // Stop recording automation events +RLAPI void PlayAutomationEvent(AutomationEvent event); // Play a recorded automation event + +//------------------------------------------------------------------------------------ +// Input Handling Functions (Module: core) +//------------------------------------------------------------------------------------ + +// Input-related functions: keyboard +RLAPI bool IsKeyPressed(int key); // Check if a key has been pressed once +RLAPI bool IsKeyPressedRepeat(int key); // Check if a key has been pressed again +RLAPI bool IsKeyDown(int key); // Check if a key is being pressed +RLAPI bool IsKeyReleased(int key); // Check if a key has been released once +RLAPI bool IsKeyUp(int key); // Check if a key is NOT being pressed +RLAPI int GetKeyPressed(void); // Get key pressed (keycode), call it multiple times for keys queued, returns 0 when the queue is empty +RLAPI int GetCharPressed(void); // Get char pressed (unicode), call it multiple times for chars queued, returns 0 when the queue is empty +RLAPI const char *GetKeyName(int key); // Get name of a QWERTY key on the current keyboard layout (eg returns string 'q' for KEY_A on an AZERTY keyboard) +RLAPI void SetExitKey(int key); // Set a custom key to exit program (default is ESC) + +// Input-related functions: gamepads +RLAPI bool IsGamepadAvailable(int gamepad); // Check if a gamepad is available +RLAPI const char *GetGamepadName(int gamepad); // Get gamepad internal name id +RLAPI bool IsGamepadButtonPressed(int gamepad, int button); // Check if a gamepad button has been pressed once +RLAPI bool IsGamepadButtonDown(int gamepad, int button); // Check if a gamepad button is being pressed +RLAPI bool IsGamepadButtonReleased(int gamepad, int button); // Check if a gamepad button has been released once +RLAPI bool IsGamepadButtonUp(int gamepad, int button); // Check if a gamepad button is NOT being pressed +RLAPI int GetGamepadButtonPressed(void); // Get the last gamepad button pressed +RLAPI int GetGamepadAxisCount(int gamepad); // Get axis count for a gamepad +RLAPI float GetGamepadAxisMovement(int gamepad, int axis); // Get movement value for a gamepad axis +RLAPI int SetGamepadMappings(const char *mappings); // Set internal gamepad mappings (SDL_GameControllerDB) +RLAPI void SetGamepadVibration(int gamepad, float leftMotor, float rightMotor, float duration); // Set gamepad vibration for both motors (duration in seconds) + +// Input-related functions: mouse +RLAPI bool IsMouseButtonPressed(int button); // Check if a mouse button has been pressed once +RLAPI bool IsMouseButtonDown(int button); // Check if a mouse button is being pressed +RLAPI bool IsMouseButtonReleased(int button); // Check if a mouse button has been released once +RLAPI bool IsMouseButtonUp(int button); // Check if a mouse button is NOT being pressed +RLAPI int GetMouseX(void); // Get mouse position X +RLAPI int GetMouseY(void); // Get mouse position Y +RLAPI Vector2 GetMousePosition(void); // Get mouse position XY +RLAPI Vector2 GetMouseDelta(void); // Get mouse delta between frames +RLAPI void SetMousePosition(int x, int y); // Set mouse position XY +RLAPI void SetMouseOffset(int offsetX, int offsetY); // Set mouse offset +RLAPI void SetMouseScale(float scaleX, float scaleY); // Set mouse scaling +RLAPI float GetMouseWheelMove(void); // Get mouse wheel movement for X or Y, whichever is larger +RLAPI Vector2 GetMouseWheelMoveV(void); // Get mouse wheel movement for both X and Y +RLAPI void SetMouseCursor(int cursor); // Set mouse cursor + +// Input-related functions: touch +RLAPI int GetTouchX(void); // Get touch position X for touch point 0 (relative to screen size) +RLAPI int GetTouchY(void); // Get touch position Y for touch point 0 (relative to screen size) +RLAPI Vector2 GetTouchPosition(int index); // Get touch position XY for a touch point index (relative to screen size) +RLAPI int GetTouchPointId(int index); // Get touch point identifier for given index +RLAPI int GetTouchPointCount(void); // Get number of touch points + +//------------------------------------------------------------------------------------ +// Gestures and Touch Handling Functions (Module: rgestures) +//------------------------------------------------------------------------------------ +RLAPI void SetGesturesEnabled(unsigned int flags); // Enable a set of gestures using flags +RLAPI bool IsGestureDetected(unsigned int gesture); // Check if a gesture have been detected +RLAPI int GetGestureDetected(void); // Get latest detected gesture +RLAPI float GetGestureHoldDuration(void); // Get gesture hold time in seconds +RLAPI Vector2 GetGestureDragVector(void); // Get gesture drag vector +RLAPI float GetGestureDragAngle(void); // Get gesture drag angle +RLAPI Vector2 GetGesturePinchVector(void); // Get gesture pinch delta +RLAPI float GetGesturePinchAngle(void); // Get gesture pinch angle + +//------------------------------------------------------------------------------------ +// Camera System Functions (Module: rcamera) +//------------------------------------------------------------------------------------ +RLAPI void UpdateCamera(Camera *camera, int mode); // Update camera position for selected mode +RLAPI void UpdateCameraPro(Camera *camera, Vector3 movement, Vector3 rotation, float zoom); // Update camera movement/rotation + +//------------------------------------------------------------------------------------ +// Basic Shapes Drawing Functions (Module: shapes) +//------------------------------------------------------------------------------------ +// Set texture and rectangle to be used on shapes drawing +// NOTE: It can be useful when using basic shapes and one single font, +// defining a font char white rectangle would allow drawing everything in a single draw call +RLAPI void SetShapesTexture(Texture2D texture, Rectangle source); // Set texture and rectangle to be used on shapes drawing +RLAPI Texture2D GetShapesTexture(void); // Get texture that is used for shapes drawing +RLAPI Rectangle GetShapesTextureRectangle(void); // Get texture source rectangle that is used for shapes drawing + +// Basic shapes drawing functions +RLAPI void DrawPixel(int posX, int posY, Color color); // Draw a pixel using geometry [Can be slow, use with care] +RLAPI void DrawPixelV(Vector2 position, Color color); // Draw a pixel using geometry (Vector version) [Can be slow, use with care] +RLAPI void DrawLine(int startPosX, int startPosY, int endPosX, int endPosY, Color color); // Draw a line +RLAPI void DrawLineV(Vector2 startPos, Vector2 endPos, Color color); // Draw a line (using gl lines) +RLAPI void DrawLineEx(Vector2 startPos, Vector2 endPos, float thick, Color color); // Draw a line (using triangles/quads) +RLAPI void DrawLineStrip(const Vector2 *points, int pointCount, Color color); // Draw lines sequence (using gl lines) +RLAPI void DrawLineBezier(Vector2 startPos, Vector2 endPos, float thick, Color color); // Draw line segment cubic-bezier in-out interpolation +RLAPI void DrawLineDashed(Vector2 startPos, Vector2 endPos, int dashSize, int spaceSize, Color color); // Draw a dashed line +RLAPI void DrawCircle(int centerX, int centerY, float radius, Color color); // Draw a color-filled circle +RLAPI void DrawCircleSector(Vector2 center, float radius, float startAngle, float endAngle, int segments, Color color); // Draw a piece of a circle +RLAPI void DrawCircleSectorLines(Vector2 center, float radius, float startAngle, float endAngle, int segments, Color color); // Draw circle sector outline +RLAPI void DrawCircleGradient(int centerX, int centerY, float radius, Color inner, Color outer); // Draw a gradient-filled circle +RLAPI void DrawCircleV(Vector2 center, float radius, Color color); // Draw a color-filled circle (Vector version) +RLAPI void DrawCircleLines(int centerX, int centerY, float radius, Color color); // Draw circle outline +RLAPI void DrawCircleLinesV(Vector2 center, float radius, Color color); // Draw circle outline (Vector version) +RLAPI void DrawEllipse(int centerX, int centerY, float radiusH, float radiusV, Color color); // Draw ellipse +RLAPI void DrawEllipseV(Vector2 center, float radiusH, float radiusV, Color color); // Draw ellipse (Vector version) +RLAPI void DrawEllipseLines(int centerX, int centerY, float radiusH, float radiusV, Color color); // Draw ellipse outline +RLAPI void DrawEllipseLinesV(Vector2 center, float radiusH, float radiusV, Color color); // Draw ellipse outline (Vector version) +RLAPI void DrawRing(Vector2 center, float innerRadius, float outerRadius, float startAngle, float endAngle, int segments, Color color); // Draw ring +RLAPI void DrawRingLines(Vector2 center, float innerRadius, float outerRadius, float startAngle, float endAngle, int segments, Color color); // Draw ring outline +RLAPI void DrawRectangle(int posX, int posY, int width, int height, Color color); // Draw a color-filled rectangle +RLAPI void DrawRectangleV(Vector2 position, Vector2 size, Color color); // Draw a color-filled rectangle (Vector version) +RLAPI void DrawRectangleRec(Rectangle rec, Color color); // Draw a color-filled rectangle +RLAPI void DrawRectanglePro(Rectangle rec, Vector2 origin, float rotation, Color color); // Draw a color-filled rectangle with pro parameters +RLAPI void DrawRectangleGradientV(int posX, int posY, int width, int height, Color top, Color bottom); // Draw a vertical-gradient-filled rectangle +RLAPI void DrawRectangleGradientH(int posX, int posY, int width, int height, Color left, Color right); // Draw a horizontal-gradient-filled rectangle +RLAPI void DrawRectangleGradientEx(Rectangle rec, Color topLeft, Color bottomLeft, Color bottomRight, Color topRight); // Draw a gradient-filled rectangle with custom vertex colors +RLAPI void DrawRectangleLines(int posX, int posY, int width, int height, Color color); // Draw rectangle outline +RLAPI void DrawRectangleLinesEx(Rectangle rec, float lineThick, Color color); // Draw rectangle outline with extended parameters +RLAPI void DrawRectangleRounded(Rectangle rec, float roundness, int segments, Color color); // Draw rectangle with rounded edges +RLAPI void DrawRectangleRoundedLines(Rectangle rec, float roundness, int segments, Color color); // Draw rectangle lines with rounded edges +RLAPI void DrawRectangleRoundedLinesEx(Rectangle rec, float roundness, int segments, float lineThick, Color color); // Draw rectangle with rounded edges outline +RLAPI void DrawTriangle(Vector2 v1, Vector2 v2, Vector2 v3, Color color); // Draw a color-filled triangle (vertex in counter-clockwise order!) +RLAPI void DrawTriangleLines(Vector2 v1, Vector2 v2, Vector2 v3, Color color); // Draw triangle outline (vertex in counter-clockwise order!) +RLAPI void DrawTriangleFan(const Vector2 *points, int pointCount, Color color); // Draw a triangle fan defined by points (first vertex is the center) +RLAPI void DrawTriangleStrip(const Vector2 *points, int pointCount, Color color); // Draw a triangle strip defined by points +RLAPI void DrawPoly(Vector2 center, int sides, float radius, float rotation, Color color); // Draw a regular polygon (Vector version) +RLAPI void DrawPolyLines(Vector2 center, int sides, float radius, float rotation, Color color); // Draw a polygon outline of n sides +RLAPI void DrawPolyLinesEx(Vector2 center, int sides, float radius, float rotation, float lineThick, Color color); // Draw a polygon outline of n sides with extended parameters + +// Splines drawing functions +RLAPI void DrawSplineLinear(const Vector2 *points, int pointCount, float thick, Color color); // Draw spline: Linear, minimum 2 points +RLAPI void DrawSplineBasis(const Vector2 *points, int pointCount, float thick, Color color); // Draw spline: B-Spline, minimum 4 points +RLAPI void DrawSplineCatmullRom(const Vector2 *points, int pointCount, float thick, Color color); // Draw spline: Catmull-Rom, minimum 4 points +RLAPI void DrawSplineBezierQuadratic(const Vector2 *points, int pointCount, float thick, Color color); // Draw spline: Quadratic Bezier, minimum 3 points (1 control point): [p1, c2, p3, c4...] +RLAPI void DrawSplineBezierCubic(const Vector2 *points, int pointCount, float thick, Color color); // Draw spline: Cubic Bezier, minimum 4 points (2 control points): [p1, c2, c3, p4, c5, c6...] +RLAPI void DrawSplineSegmentLinear(Vector2 p1, Vector2 p2, float thick, Color color); // Draw spline segment: Linear, 2 points +RLAPI void DrawSplineSegmentBasis(Vector2 p1, Vector2 p2, Vector2 p3, Vector2 p4, float thick, Color color); // Draw spline segment: B-Spline, 4 points +RLAPI void DrawSplineSegmentCatmullRom(Vector2 p1, Vector2 p2, Vector2 p3, Vector2 p4, float thick, Color color); // Draw spline segment: Catmull-Rom, 4 points +RLAPI void DrawSplineSegmentBezierQuadratic(Vector2 p1, Vector2 c2, Vector2 p3, float thick, Color color); // Draw spline segment: Quadratic Bezier, 2 points, 1 control point +RLAPI void DrawSplineSegmentBezierCubic(Vector2 p1, Vector2 c2, Vector2 c3, Vector2 p4, float thick, Color color); // Draw spline segment: Cubic Bezier, 2 points, 2 control points + +// Spline segment point evaluation functions, for a given t [0.0f .. 1.0f] +RLAPI Vector2 GetSplinePointLinear(Vector2 startPos, Vector2 endPos, float t); // Get (evaluate) spline point: Linear +RLAPI Vector2 GetSplinePointBasis(Vector2 p1, Vector2 p2, Vector2 p3, Vector2 p4, float t); // Get (evaluate) spline point: B-Spline +RLAPI Vector2 GetSplinePointCatmullRom(Vector2 p1, Vector2 p2, Vector2 p3, Vector2 p4, float t); // Get (evaluate) spline point: Catmull-Rom +RLAPI Vector2 GetSplinePointBezierQuad(Vector2 p1, Vector2 c2, Vector2 p3, float t); // Get (evaluate) spline point: Quadratic Bezier +RLAPI Vector2 GetSplinePointBezierCubic(Vector2 p1, Vector2 c2, Vector2 c3, Vector2 p4, float t); // Get (evaluate) spline point: Cubic Bezier + +// Basic shapes collision detection functions +RLAPI bool CheckCollisionRecs(Rectangle rec1, Rectangle rec2); // Check collision between two rectangles +RLAPI bool CheckCollisionCircles(Vector2 center1, float radius1, Vector2 center2, float radius2); // Check collision between two circles +RLAPI bool CheckCollisionCircleRec(Vector2 center, float radius, Rectangle rec); // Check collision between circle and rectangle +RLAPI bool CheckCollisionCircleLine(Vector2 center, float radius, Vector2 p1, Vector2 p2); // Check if circle collides with a line created betweeen two points [p1] and [p2] +RLAPI bool CheckCollisionPointRec(Vector2 point, Rectangle rec); // Check if point is inside rectangle +RLAPI bool CheckCollisionPointCircle(Vector2 point, Vector2 center, float radius); // Check if point is inside circle +RLAPI bool CheckCollisionPointTriangle(Vector2 point, Vector2 p1, Vector2 p2, Vector2 p3); // Check if point is inside a triangle +RLAPI bool CheckCollisionPointLine(Vector2 point, Vector2 p1, Vector2 p2, int threshold); // Check if point belongs to line created between two points [p1] and [p2] with defined margin in pixels [threshold] +RLAPI bool CheckCollisionPointPoly(Vector2 point, const Vector2 *points, int pointCount); // Check if point is within a polygon described by array of vertices +RLAPI bool CheckCollisionLines(Vector2 startPos1, Vector2 endPos1, Vector2 startPos2, Vector2 endPos2, Vector2 *collisionPoint); // Check the collision between two lines defined by two points each, returns collision point by reference +RLAPI Rectangle GetCollisionRec(Rectangle rec1, Rectangle rec2); // Get collision rectangle for two rectangles collision + +//------------------------------------------------------------------------------------ +// Texture Loading and Drawing Functions (Module: textures) +//------------------------------------------------------------------------------------ + +// Image loading functions +// NOTE: These functions do not require GPU access +RLAPI Image LoadImage(const char *fileName); // Load image from file into CPU memory (RAM) +RLAPI Image LoadImageRaw(const char *fileName, int width, int height, int format, int headerSize); // Load image from RAW file data +RLAPI Image LoadImageAnim(const char *fileName, int *frames); // Load image sequence from file (frames appended to image.data) +RLAPI Image LoadImageAnimFromMemory(const char *fileType, const unsigned char *fileData, int dataSize, int *frames); // Load image sequence from memory buffer +RLAPI Image LoadImageFromMemory(const char *fileType, const unsigned char *fileData, int dataSize); // Load image from memory buffer, fileType refers to extension: i.e. '.png' +RLAPI Image LoadImageFromTexture(Texture2D texture); // Load image from GPU texture data +RLAPI Image LoadImageFromScreen(void); // Load image from screen buffer and (screenshot) +RLAPI bool IsImageValid(Image image); // Check if an image is valid (data and parameters) +RLAPI void UnloadImage(Image image); // Unload image from CPU memory (RAM) +RLAPI bool ExportImage(Image image, const char *fileName); // Export image data to file, returns true on success +RLAPI unsigned char *ExportImageToMemory(Image image, const char *fileType, int *fileSize); // Export image to memory buffer +RLAPI bool ExportImageAsCode(Image image, const char *fileName); // Export image as code file defining an array of bytes, returns true on success + +// Image generation functions +RLAPI Image GenImageColor(int width, int height, Color color); // Generate image: plain color +RLAPI Image GenImageGradientLinear(int width, int height, int direction, Color start, Color end); // Generate image: linear gradient, direction in degrees [0..360], 0=Vertical gradient +RLAPI Image GenImageGradientRadial(int width, int height, float density, Color inner, Color outer); // Generate image: radial gradient +RLAPI Image GenImageGradientSquare(int width, int height, float density, Color inner, Color outer); // Generate image: square gradient +RLAPI Image GenImageChecked(int width, int height, int checksX, int checksY, Color col1, Color col2); // Generate image: checked +RLAPI Image GenImageWhiteNoise(int width, int height, float factor); // Generate image: white noise +RLAPI Image GenImagePerlinNoise(int width, int height, int offsetX, int offsetY, float scale); // Generate image: perlin noise +RLAPI Image GenImageCellular(int width, int height, int tileSize); // Generate image: cellular algorithm, bigger tileSize means bigger cells +RLAPI Image GenImageText(int width, int height, const char *text); // Generate image: grayscale image from text data + +// Image manipulation functions +RLAPI Image ImageCopy(Image image); // Create an image duplicate (useful for transformations) +RLAPI Image ImageFromImage(Image image, Rectangle rec); // Create an image from another image piece +RLAPI Image ImageFromChannel(Image image, int selectedChannel); // Create an image from a selected channel of another image (GRAYSCALE) +RLAPI Image ImageText(const char *text, int fontSize, Color color); // Create an image from text (default font) +RLAPI Image ImageTextEx(Font font, const char *text, float fontSize, float spacing, Color tint); // Create an image from text (custom sprite font) +RLAPI void ImageFormat(Image *image, int newFormat); // Convert image data to desired format +RLAPI void ImageToPOT(Image *image, Color fill); // Convert image to POT (power-of-two) +RLAPI void ImageCrop(Image *image, Rectangle crop); // Crop an image to a defined rectangle +RLAPI void ImageAlphaCrop(Image *image, float threshold); // Crop image depending on alpha value +RLAPI void ImageAlphaClear(Image *image, Color color, float threshold); // Clear alpha channel to desired color +RLAPI void ImageAlphaMask(Image *image, Image alphaMask); // Apply alpha mask to image +RLAPI void ImageAlphaPremultiply(Image *image); // Premultiply alpha channel +RLAPI void ImageBlurGaussian(Image *image, int blurSize); // Apply Gaussian blur using a box blur approximation +RLAPI void ImageKernelConvolution(Image *image, const float *kernel, int kernelSize); // Apply custom square convolution kernel to image +RLAPI void ImageResize(Image *image, int newWidth, int newHeight); // Resize image (Bicubic scaling algorithm) +RLAPI void ImageResizeNN(Image *image, int newWidth, int newHeight); // Resize image (Nearest-Neighbor scaling algorithm) +RLAPI void ImageResizeCanvas(Image *image, int newWidth, int newHeight, int offsetX, int offsetY, Color fill); // Resize canvas and fill with color +RLAPI void ImageMipmaps(Image *image); // Compute all mipmap levels for a provided image +RLAPI void ImageDither(Image *image, int rBpp, int gBpp, int bBpp, int aBpp); // Dither image data to 16bpp or lower (Floyd-Steinberg dithering) +RLAPI void ImageFlipVertical(Image *image); // Flip image vertically +RLAPI void ImageFlipHorizontal(Image *image); // Flip image horizontally +RLAPI void ImageRotate(Image *image, int degrees); // Rotate image by input angle in degrees (-359 to 359) +RLAPI void ImageRotateCW(Image *image); // Rotate image clockwise 90deg +RLAPI void ImageRotateCCW(Image *image); // Rotate image counter-clockwise 90deg +RLAPI void ImageColorTint(Image *image, Color color); // Modify image color: tint +RLAPI void ImageColorInvert(Image *image); // Modify image color: invert +RLAPI void ImageColorGrayscale(Image *image); // Modify image color: grayscale +RLAPI void ImageColorContrast(Image *image, float contrast); // Modify image color: contrast (-100 to 100) +RLAPI void ImageColorBrightness(Image *image, int brightness); // Modify image color: brightness (-255 to 255) +RLAPI void ImageColorReplace(Image *image, Color color, Color replace); // Modify image color: replace color +RLAPI Color *LoadImageColors(Image image); // Load color data from image as a Color array (RGBA - 32bit) +RLAPI Color *LoadImagePalette(Image image, int maxPaletteSize, int *colorCount); // Load colors palette from image as a Color array (RGBA - 32bit) +RLAPI void UnloadImageColors(Color *colors); // Unload color data loaded with LoadImageColors() +RLAPI void UnloadImagePalette(Color *colors); // Unload colors palette loaded with LoadImagePalette() +RLAPI Rectangle GetImageAlphaBorder(Image image, float threshold); // Get image alpha border rectangle +RLAPI Color GetImageColor(Image image, int x, int y); // Get image pixel color at (x, y) position + +// Image drawing functions +// NOTE: Image software-rendering functions (CPU) +RLAPI void ImageClearBackground(Image *dst, Color color); // Clear image background with given color +RLAPI void ImageDrawPixel(Image *dst, int posX, int posY, Color color); // Draw pixel within an image +RLAPI void ImageDrawPixelV(Image *dst, Vector2 position, Color color); // Draw pixel within an image (Vector version) +RLAPI void ImageDrawLine(Image *dst, int startPosX, int startPosY, int endPosX, int endPosY, Color color); // Draw line within an image +RLAPI void ImageDrawLineV(Image *dst, Vector2 start, Vector2 end, Color color); // Draw line within an image (Vector version) +RLAPI void ImageDrawLineEx(Image *dst, Vector2 start, Vector2 end, int thick, Color color); // Draw a line defining thickness within an image +RLAPI void ImageDrawCircle(Image *dst, int centerX, int centerY, int radius, Color color); // Draw a filled circle within an image +RLAPI void ImageDrawCircleV(Image *dst, Vector2 center, int radius, Color color); // Draw a filled circle within an image (Vector version) +RLAPI void ImageDrawCircleLines(Image *dst, int centerX, int centerY, int radius, Color color); // Draw circle outline within an image +RLAPI void ImageDrawCircleLinesV(Image *dst, Vector2 center, int radius, Color color); // Draw circle outline within an image (Vector version) +RLAPI void ImageDrawRectangle(Image *dst, int posX, int posY, int width, int height, Color color); // Draw rectangle within an image +RLAPI void ImageDrawRectangleV(Image *dst, Vector2 position, Vector2 size, Color color); // Draw rectangle within an image (Vector version) +RLAPI void ImageDrawRectangleRec(Image *dst, Rectangle rec, Color color); // Draw rectangle within an image +RLAPI void ImageDrawRectangleLines(Image *dst, Rectangle rec, int thick, Color color); // Draw rectangle lines within an image +RLAPI void ImageDrawTriangle(Image *dst, Vector2 v1, Vector2 v2, Vector2 v3, Color color); // Draw triangle within an image +RLAPI void ImageDrawTriangleEx(Image *dst, Vector2 v1, Vector2 v2, Vector2 v3, Color c1, Color c2, Color c3); // Draw triangle with interpolated colors within an image +RLAPI void ImageDrawTriangleLines(Image *dst, Vector2 v1, Vector2 v2, Vector2 v3, Color color); // Draw triangle outline within an image +RLAPI void ImageDrawTriangleFan(Image *dst, const Vector2 *points, int pointCount, Color color); // Draw a triangle fan defined by points within an image (first vertex is the center) +RLAPI void ImageDrawTriangleStrip(Image *dst, const Vector2 *points, int pointCount, Color color); // Draw a triangle strip defined by points within an image +RLAPI void ImageDraw(Image *dst, Image src, Rectangle srcRec, Rectangle dstRec, Color tint); // Draw a source image within a destination image (tint applied to source) +RLAPI void ImageDrawText(Image *dst, const char *text, int posX, int posY, int fontSize, Color color); // Draw text (using default font) within an image (destination) +RLAPI void ImageDrawTextEx(Image *dst, Font font, const char *text, Vector2 position, float fontSize, float spacing, Color tint); // Draw text (custom sprite font) within an image (destination) + +// Texture loading functions +// NOTE: These functions require GPU access +RLAPI Texture2D LoadTexture(const char *fileName); // Load texture from file into GPU memory (VRAM) +RLAPI Texture2D LoadTextureFromImage(Image image); // Load texture from image data +RLAPI TextureCubemap LoadTextureCubemap(Image image, int layout); // Load cubemap from image, multiple image cubemap layouts supported +RLAPI RenderTexture2D LoadRenderTexture(int width, int height); // Load texture for rendering (framebuffer) +RLAPI bool IsTextureValid(Texture2D texture); // Check if a texture is valid (loaded in GPU) +RLAPI void UnloadTexture(Texture2D texture); // Unload texture from GPU memory (VRAM) +RLAPI bool IsRenderTextureValid(RenderTexture2D target); // Check if a render texture is valid (loaded in GPU) +RLAPI void UnloadRenderTexture(RenderTexture2D target); // Unload render texture from GPU memory (VRAM) +RLAPI void UpdateTexture(Texture2D texture, const void *pixels); // Update GPU texture with new data (pixels should be able to fill texture) +RLAPI void UpdateTextureRec(Texture2D texture, Rectangle rec, const void *pixels); // Update GPU texture rectangle with new data (pixels and rec should fit in texture) + +// Texture configuration functions +RLAPI void GenTextureMipmaps(Texture2D *texture); // Generate GPU mipmaps for a texture +RLAPI void SetTextureFilter(Texture2D texture, int filter); // Set texture scaling filter mode +RLAPI void SetTextureWrap(Texture2D texture, int wrap); // Set texture wrapping mode + +// Texture drawing functions +RLAPI void DrawTexture(Texture2D texture, int posX, int posY, Color tint); // Draw a Texture2D +RLAPI void DrawTextureV(Texture2D texture, Vector2 position, Color tint); // Draw a Texture2D with position defined as Vector2 +RLAPI void DrawTextureEx(Texture2D texture, Vector2 position, float rotation, float scale, Color tint); // Draw a Texture2D with extended parameters +RLAPI void DrawTextureRec(Texture2D texture, Rectangle source, Vector2 position, Color tint); // Draw a part of a texture defined by a rectangle +RLAPI void DrawTexturePro(Texture2D texture, Rectangle source, Rectangle dest, Vector2 origin, float rotation, Color tint); // Draw a part of a texture defined by a rectangle with 'pro' parameters +RLAPI void DrawTextureNPatch(Texture2D texture, NPatchInfo nPatchInfo, Rectangle dest, Vector2 origin, float rotation, Color tint); // Draws a texture (or part of it) that stretches or shrinks nicely + +// Color/pixel related functions +RLAPI bool ColorIsEqual(Color col1, Color col2); // Check if two colors are equal +RLAPI Color Fade(Color color, float alpha); // Get color with alpha applied, alpha goes from 0.0f to 1.0f +RLAPI int ColorToInt(Color color); // Get hexadecimal value for a Color (0xRRGGBBAA) +RLAPI Vector4 ColorNormalize(Color color); // Get Color normalized as float [0..1] +RLAPI Color ColorFromNormalized(Vector4 normalized); // Get Color from normalized values [0..1] +RLAPI Vector3 ColorToHSV(Color color); // Get HSV values for a Color, hue [0..360], saturation/value [0..1] +RLAPI Color ColorFromHSV(float hue, float saturation, float value); // Get a Color from HSV values, hue [0..360], saturation/value [0..1] +RLAPI Color ColorTint(Color color, Color tint); // Get color multiplied with another color +RLAPI Color ColorBrightness(Color color, float factor); // Get color with brightness correction, brightness factor goes from -1.0f to 1.0f +RLAPI Color ColorContrast(Color color, float contrast); // Get color with contrast correction, contrast values between -1.0f and 1.0f +RLAPI Color ColorAlpha(Color color, float alpha); // Get color with alpha applied, alpha goes from 0.0f to 1.0f +RLAPI Color ColorAlphaBlend(Color dst, Color src, Color tint); // Get src alpha-blended into dst color with tint +RLAPI Color ColorLerp(Color color1, Color color2, float factor); // Get color lerp interpolation between two colors, factor [0.0f..1.0f] +RLAPI Color GetColor(unsigned int hexValue); // Get Color structure from hexadecimal value +RLAPI Color GetPixelColor(void *srcPtr, int format); // Get Color from a source pixel pointer of certain format +RLAPI void SetPixelColor(void *dstPtr, Color color, int format); // Set color formatted into destination pixel pointer +RLAPI int GetPixelDataSize(int width, int height, int format); // Get pixel data size in bytes for certain format + +//------------------------------------------------------------------------------------ +// Font Loading and Text Drawing Functions (Module: text) +//------------------------------------------------------------------------------------ + +// Font loading/unloading functions +RLAPI Font GetFontDefault(void); // Get the default Font +RLAPI Font LoadFont(const char *fileName); // Load font from file into GPU memory (VRAM) +RLAPI Font LoadFontEx(const char *fileName, int fontSize, const int *codepoints, int codepointCount); // Load font from file with extended parameters, use NULL for codepoints and 0 for codepointCount to load the default character set, font size is provided in pixels height +RLAPI Font LoadFontFromImage(Image image, Color key, int firstChar); // Load font from Image (XNA style) +RLAPI Font LoadFontFromMemory(const char *fileType, const unsigned char *fileData, int dataSize, int fontSize, const int *codepoints, int codepointCount); // Load font from memory buffer, fileType refers to extension: i.e. '.ttf' +RLAPI bool IsFontValid(Font font); // Check if a font is valid (font data loaded, WARNING: GPU texture not checked) +RLAPI GlyphInfo *LoadFontData(const unsigned char *fileData, int dataSize, int fontSize, const int *codepoints, int codepointCount, int type, int *glyphCount); // Load font data for further use +RLAPI Image GenImageFontAtlas(const GlyphInfo *glyphs, Rectangle **glyphRecs, int glyphCount, int fontSize, int padding, int packMethod); // Generate image font atlas using chars info +RLAPI void UnloadFontData(GlyphInfo *glyphs, int glyphCount); // Unload font chars info data (RAM) +RLAPI void UnloadFont(Font font); // Unload font from GPU memory (VRAM) +RLAPI bool ExportFontAsCode(Font font, const char *fileName); // Export font as code file, returns true on success + +// Text drawing functions +RLAPI void DrawFPS(int posX, int posY); // Draw current FPS +RLAPI void DrawText(const char *text, int posX, int posY, int fontSize, Color color); // Draw text (using default font) +RLAPI void DrawTextEx(Font font, const char *text, Vector2 position, float fontSize, float spacing, Color tint); // Draw text using font and additional parameters +RLAPI void DrawTextPro(Font font, const char *text, Vector2 position, Vector2 origin, float rotation, float fontSize, float spacing, Color tint); // Draw text using Font and pro parameters (rotation) +RLAPI void DrawTextCodepoint(Font font, int codepoint, Vector2 position, float fontSize, Color tint); // Draw one character (codepoint) +RLAPI void DrawTextCodepoints(Font font, const int *codepoints, int codepointCount, Vector2 position, float fontSize, float spacing, Color tint); // Draw multiple character (codepoint) + +// Text font info functions +RLAPI void SetTextLineSpacing(int spacing); // Set vertical line spacing when drawing with line-breaks +RLAPI int MeasureText(const char *text, int fontSize); // Measure string width for default font +RLAPI Vector2 MeasureTextEx(Font font, const char *text, float fontSize, float spacing); // Measure string size for Font +RLAPI Vector2 MeasureTextCodepoints(Font font, const int *codepoints, int length, float fontSize, float spacing); // Measure string size for an existing array of codepoints for Font +RLAPI int GetGlyphIndex(Font font, int codepoint); // Get glyph index position in font for a codepoint (unicode character), fallback to '?' if not found +RLAPI GlyphInfo GetGlyphInfo(Font font, int codepoint); // Get glyph font info data for a codepoint (unicode character), fallback to '?' if not found +RLAPI Rectangle GetGlyphAtlasRec(Font font, int codepoint); // Get glyph rectangle in font atlas for a codepoint (unicode character), fallback to '?' if not found + +// Text codepoints management functions (unicode characters) +RLAPI char *LoadUTF8(const int *codepoints, int length); // Load UTF-8 text encoded from codepoints array +RLAPI void UnloadUTF8(char *text); // Unload UTF-8 text encoded from codepoints array +RLAPI int *LoadCodepoints(const char *text, int *count); // Load all codepoints from a UTF-8 text string, codepoints count returned by parameter +RLAPI void UnloadCodepoints(int *codepoints); // Unload codepoints data from memory +RLAPI int GetCodepointCount(const char *text); // Get total number of codepoints in a UTF-8 encoded string +RLAPI int GetCodepoint(const char *text, int *codepointSize); // Get next codepoint in a UTF-8 encoded string, 0x3f('?') is returned on failure +RLAPI int GetCodepointNext(const char *text, int *codepointSize); // Get next codepoint in a UTF-8 encoded string, 0x3f('?') is returned on failure +RLAPI int GetCodepointPrevious(const char *text, int *codepointSize); // Get previous codepoint in a UTF-8 encoded string, 0x3f('?') is returned on failure +RLAPI const char *CodepointToUTF8(int codepoint, int *utf8Size); // Encode one codepoint into UTF-8 byte array (array length returned as parameter) + +// Text strings management functions (no UTF-8 strings, only byte chars) +// WARNING 1: Most of these functions use internal static buffers[], it's recommended to store returned data on user-side for re-use +// WARNING 2: Some strings allocate memory internally for the returned strings, those strings must be free by user using MemFree() +RLAPI char **LoadTextLines(const char *text, int *count); // Load text as separate lines ('\n') +RLAPI void UnloadTextLines(char **text, int lineCount); // Unload text lines +RLAPI int TextCopy(char *dst, const char *src); // Copy one string to another, returns bytes copied +RLAPI bool TextIsEqual(const char *text1, const char *text2); // Check if two text string are equal +RLAPI unsigned int TextLength(const char *text); // Get text length, checks for '\0' ending +RLAPI const char *TextFormat(const char *text, ...); // Text formatting with variables (sprintf() style) +RLAPI const char *TextSubtext(const char *text, int position, int length); // Get a piece of a text string +RLAPI const char *TextRemoveSpaces(const char *text); // Remove text spaces, concat words +RLAPI char *GetTextBetween(const char *text, const char *begin, const char *end); // Get text between two strings +RLAPI char *TextReplace(const char *text, const char *search, const char *replacement); // Replace text string (WARNING: memory must be freed!) +RLAPI char *TextReplaceBetween(const char *text, const char *begin, const char *end, const char *replacement); // Replace text between two specific strings (WARNING: memory must be freed!) +RLAPI char *TextInsert(const char *text, const char *insert, int position); // Insert text in a position (WARNING: memory must be freed!) +RLAPI char *TextJoin(char **textList, int count, const char *delimiter); // Join text strings with delimiter +RLAPI char **TextSplit(const char *text, char delimiter, int *count); // Split text into multiple strings, using MAX_TEXTSPLIT_COUNT static strings +RLAPI void TextAppend(char *text, const char *append, int *position); // Append text at specific position and move cursor +RLAPI int TextFindIndex(const char *text, const char *search); // Find first text occurrence within a string, -1 if not found +RLAPI char *TextToUpper(const char *text); // Get upper case version of provided string +RLAPI char *TextToLower(const char *text); // Get lower case version of provided string +RLAPI char *TextToPascal(const char *text); // Get Pascal case notation version of provided string +RLAPI char *TextToSnake(const char *text); // Get Snake case notation version of provided string +RLAPI char *TextToCamel(const char *text); // Get Camel case notation version of provided string +RLAPI int TextToInteger(const char *text); // Get integer value from text +RLAPI float TextToFloat(const char *text); // Get float value from text + +//------------------------------------------------------------------------------------ +// Basic 3d Shapes Drawing Functions (Module: models) +//------------------------------------------------------------------------------------ + +// Basic geometric 3D shapes drawing functions +RLAPI void DrawLine3D(Vector3 startPos, Vector3 endPos, Color color); // Draw a line in 3D world space +RLAPI void DrawPoint3D(Vector3 position, Color color); // Draw a point in 3D space, actually a small line +RLAPI void DrawCircle3D(Vector3 center, float radius, Vector3 rotationAxis, float rotationAngle, Color color); // Draw a circle in 3D world space +RLAPI void DrawTriangle3D(Vector3 v1, Vector3 v2, Vector3 v3, Color color); // Draw a color-filled triangle (vertex in counter-clockwise order!) +RLAPI void DrawTriangleStrip3D(const Vector3 *points, int pointCount, Color color); // Draw a triangle strip defined by points +RLAPI void DrawCube(Vector3 position, float width, float height, float length, Color color); // Draw cube +RLAPI void DrawCubeV(Vector3 position, Vector3 size, Color color); // Draw cube (Vector version) +RLAPI void DrawCubeWires(Vector3 position, float width, float height, float length, Color color); // Draw cube wires +RLAPI void DrawCubeWiresV(Vector3 position, Vector3 size, Color color); // Draw cube wires (Vector version) +RLAPI void DrawSphere(Vector3 centerPos, float radius, Color color); // Draw sphere +RLAPI void DrawSphereEx(Vector3 centerPos, float radius, int rings, int slices, Color color); // Draw sphere with extended parameters +RLAPI void DrawSphereWires(Vector3 centerPos, float radius, int rings, int slices, Color color); // Draw sphere wires +RLAPI void DrawCylinder(Vector3 position, float radiusTop, float radiusBottom, float height, int slices, Color color); // Draw a cylinder/cone +RLAPI void DrawCylinderEx(Vector3 startPos, Vector3 endPos, float startRadius, float endRadius, int sides, Color color); // Draw a cylinder with base at startPos and top at endPos +RLAPI void DrawCylinderWires(Vector3 position, float radiusTop, float radiusBottom, float height, int slices, Color color); // Draw a cylinder/cone wires +RLAPI void DrawCylinderWiresEx(Vector3 startPos, Vector3 endPos, float startRadius, float endRadius, int sides, Color color); // Draw a cylinder wires with base at startPos and top at endPos +RLAPI void DrawCapsule(Vector3 startPos, Vector3 endPos, float radius, int slices, int rings, Color color); // Draw a capsule with the center of its sphere caps at startPos and endPos +RLAPI void DrawCapsuleWires(Vector3 startPos, Vector3 endPos, float radius, int slices, int rings, Color color); // Draw capsule wireframe with the center of its sphere caps at startPos and endPos +RLAPI void DrawPlane(Vector3 centerPos, Vector2 size, Color color); // Draw a plane XZ +RLAPI void DrawRay(Ray ray, Color color); // Draw a ray line +RLAPI void DrawGrid(int slices, float spacing); // Draw a grid (centered at (0, 0, 0)) + +//------------------------------------------------------------------------------------ +// Model 3d Loading and Drawing Functions (Module: models) +//------------------------------------------------------------------------------------ + +// Model management functions +RLAPI Model LoadModel(const char *fileName); // Load model from files (meshes and materials) +RLAPI Model LoadModelFromMesh(Mesh mesh); // Load model from generated mesh (default material) +RLAPI bool IsModelValid(Model model); // Check if a model is valid (loaded in GPU, VAO/VBOs) +RLAPI void UnloadModel(Model model); // Unload model (including meshes) from memory (RAM and/or VRAM) +RLAPI BoundingBox GetModelBoundingBox(Model model); // Compute model bounding box limits (considers all meshes) + +// Model drawing functions +RLAPI void DrawModel(Model model, Vector3 position, float scale, Color tint); // Draw a model (with texture if set) +RLAPI void DrawModelEx(Model model, Vector3 position, Vector3 rotationAxis, float rotationAngle, Vector3 scale, Color tint); // Draw a model with extended parameters +RLAPI void DrawModelWires(Model model, Vector3 position, float scale, Color tint); // Draw a model wires (with texture if set) +RLAPI void DrawModelWiresEx(Model model, Vector3 position, Vector3 rotationAxis, float rotationAngle, Vector3 scale, Color tint); // Draw a model wires (with texture if set) with extended parameters +RLAPI void DrawModelPoints(Model model, Vector3 position, float scale, Color tint); // Draw a model as points +RLAPI void DrawModelPointsEx(Model model, Vector3 position, Vector3 rotationAxis, float rotationAngle, Vector3 scale, Color tint); // Draw a model as points with extended parameters +RLAPI void DrawBoundingBox(BoundingBox box, Color color); // Draw bounding box (wires) +RLAPI void DrawBillboard(Camera camera, Texture2D texture, Vector3 position, float scale, Color tint); // Draw a billboard texture +RLAPI void DrawBillboardRec(Camera camera, Texture2D texture, Rectangle source, Vector3 position, Vector2 size, Color tint); // Draw a billboard texture defined by source +RLAPI void DrawBillboardPro(Camera camera, Texture2D texture, Rectangle source, Vector3 position, Vector3 up, Vector2 size, Vector2 origin, float rotation, Color tint); // Draw a billboard texture defined by source and rotation + +// Mesh management functions +RLAPI void UploadMesh(Mesh *mesh, bool dynamic); // Upload mesh vertex data in GPU and provide VAO/VBO ids +RLAPI void UpdateMeshBuffer(Mesh mesh, int index, const void *data, int dataSize, int offset); // Update mesh vertex data in GPU for a specific buffer index +RLAPI void UnloadMesh(Mesh mesh); // Unload mesh data from CPU and GPU +RLAPI void DrawMesh(Mesh mesh, Material material, Matrix transform); // Draw a 3d mesh with material and transform +RLAPI void DrawMeshInstanced(Mesh mesh, Material material, const Matrix *transforms, int instances); // Draw multiple mesh instances with material and different transforms +RLAPI BoundingBox GetMeshBoundingBox(Mesh mesh); // Compute mesh bounding box limits +RLAPI void GenMeshTangents(Mesh *mesh); // Compute mesh tangents +RLAPI bool ExportMesh(Mesh mesh, const char *fileName); // Export mesh data to file, returns true on success +RLAPI bool ExportMeshAsCode(Mesh mesh, const char *fileName); // Export mesh as code file (.h) defining multiple arrays of vertex attributes + +// Mesh generation functions +RLAPI Mesh GenMeshPoly(int sides, float radius); // Generate polygonal mesh +RLAPI Mesh GenMeshPlane(float width, float length, int resX, int resZ); // Generate plane mesh (with subdivisions) +RLAPI Mesh GenMeshCube(float width, float height, float length); // Generate cuboid mesh +RLAPI Mesh GenMeshSphere(float radius, int rings, int slices); // Generate sphere mesh (standard sphere) +RLAPI Mesh GenMeshHemiSphere(float radius, int rings, int slices); // Generate half-sphere mesh (no bottom cap) +RLAPI Mesh GenMeshCylinder(float radius, float height, int slices); // Generate cylinder mesh +RLAPI Mesh GenMeshCone(float radius, float height, int slices); // Generate cone/pyramid mesh +RLAPI Mesh GenMeshTorus(float radius, float size, int radSeg, int sides); // Generate torus mesh +RLAPI Mesh GenMeshKnot(float radius, float size, int radSeg, int sides); // Generate trefoil knot mesh +RLAPI Mesh GenMeshHeightmap(Image heightmap, Vector3 size); // Generate heightmap mesh from image data +RLAPI Mesh GenMeshCubicmap(Image cubicmap, Vector3 cubeSize); // Generate cubes-based map mesh from image data + +// Material loading/unloading functions +RLAPI Material *LoadMaterials(const char *fileName, int *materialCount); // Load materials from model file +RLAPI Material LoadMaterialDefault(void); // Load default material (Supports: DIFFUSE, SPECULAR, NORMAL maps) +RLAPI bool IsMaterialValid(Material material); // Check if a material is valid (shader assigned, map textures loaded in GPU) +RLAPI void UnloadMaterial(Material material); // Unload material from GPU memory (VRAM) +RLAPI void SetMaterialTexture(Material *material, int mapType, Texture2D texture); // Set texture for a material map type (MATERIAL_MAP_DIFFUSE, MATERIAL_MAP_SPECULAR...) +RLAPI void SetModelMeshMaterial(Model *model, int meshId, int materialId); // Set material for a mesh + +// Model animations loading/unloading functions +RLAPI ModelAnimation *LoadModelAnimations(const char *fileName, int *animCount); // Load model animations from file +RLAPI void UpdateModelAnimation(Model model, ModelAnimation anim, float frame); // Update model animation pose (vertex buffers and bone matrices) +RLAPI void UpdateModelAnimationEx(Model model, ModelAnimation animA, float frameA, ModelAnimation animB, float frameB, float blend); // Update model animation pose, blending two animations +RLAPI void UnloadModelAnimations(ModelAnimation *animations, int animCount); // Unload animation array data +RLAPI bool IsModelAnimationValid(Model model, ModelAnimation anim); // Check model animation skeleton match + +// Collision detection functions +RLAPI bool CheckCollisionSpheres(Vector3 center1, float radius1, Vector3 center2, float radius2); // Check collision between two spheres +RLAPI bool CheckCollisionBoxes(BoundingBox box1, BoundingBox box2); // Check collision between two bounding boxes +RLAPI bool CheckCollisionBoxSphere(BoundingBox box, Vector3 center, float radius); // Check collision between box and sphere +RLAPI RayCollision GetRayCollisionSphere(Ray ray, Vector3 center, float radius); // Get collision info between ray and sphere +RLAPI RayCollision GetRayCollisionBox(Ray ray, BoundingBox box); // Get collision info between ray and box +RLAPI RayCollision GetRayCollisionMesh(Ray ray, Mesh mesh, Matrix transform); // Get collision info between ray and mesh +RLAPI RayCollision GetRayCollisionTriangle(Ray ray, Vector3 p1, Vector3 p2, Vector3 p3); // Get collision info between ray and triangle +RLAPI RayCollision GetRayCollisionQuad(Ray ray, Vector3 p1, Vector3 p2, Vector3 p3, Vector3 p4); // Get collision info between ray and quad + +//------------------------------------------------------------------------------------ +// Audio Loading and Playing Functions (Module: audio) +//------------------------------------------------------------------------------------ +typedef void (*AudioCallback)(void *bufferData, unsigned int frames); + +// Audio device management functions +RLAPI void InitAudioDevice(void); // Initialize audio device and context +RLAPI void CloseAudioDevice(void); // Close the audio device and context +RLAPI bool IsAudioDeviceReady(void); // Check if audio device has been initialized successfully +RLAPI void SetMasterVolume(float volume); // Set master volume (listener) +RLAPI float GetMasterVolume(void); // Get master volume (listener) + +// Wave/Sound loading/unloading functions +RLAPI Wave LoadWave(const char *fileName); // Load wave data from file +RLAPI Wave LoadWaveFromMemory(const char *fileType, const unsigned char *fileData, int dataSize); // Load wave from memory buffer, fileType refers to extension: i.e. '.wav' +RLAPI bool IsWaveValid(Wave wave); // Checks if wave data is valid (data loaded and parameters) +RLAPI Sound LoadSound(const char *fileName); // Load sound from file +RLAPI Sound LoadSoundFromWave(Wave wave); // Load sound from wave data +RLAPI Sound LoadSoundAlias(Sound source); // Create a new sound that shares the same sample data as the source sound, does not own the sound data +RLAPI bool IsSoundValid(Sound sound); // Checks if a sound is valid (data loaded and buffers initialized) +RLAPI void UpdateSound(Sound sound, const void *data, int sampleCount); // Update sound buffer with new data (default data format: 32 bit float, stereo) +RLAPI void UnloadWave(Wave wave); // Unload wave data +RLAPI void UnloadSound(Sound sound); // Unload sound +RLAPI void UnloadSoundAlias(Sound alias); // Unload a sound alias (does not deallocate sample data) +RLAPI bool ExportWave(Wave wave, const char *fileName); // Export wave data to file, returns true on success +RLAPI bool ExportWaveAsCode(Wave wave, const char *fileName); // Export wave sample data to code (.h), returns true on success + +// Wave/Sound management functions +RLAPI void PlaySound(Sound sound); // Play a sound +RLAPI void StopSound(Sound sound); // Stop playing a sound +RLAPI void PauseSound(Sound sound); // Pause a sound +RLAPI void ResumeSound(Sound sound); // Resume a paused sound +RLAPI bool IsSoundPlaying(Sound sound); // Check if a sound is currently playing +RLAPI void SetSoundVolume(Sound sound, float volume); // Set volume for a sound (1.0 is max level) +RLAPI void SetSoundPitch(Sound sound, float pitch); // Set pitch for a sound (1.0 is base level) +RLAPI void SetSoundPan(Sound sound, float pan); // Set pan for a sound (-1.0 left, 0.0 center, 1.0 right) +RLAPI Wave WaveCopy(Wave wave); // Copy a wave to a new wave +RLAPI void WaveCrop(Wave *wave, int initFrame, int finalFrame); // Crop a wave to defined frames range +RLAPI void WaveFormat(Wave *wave, int sampleRate, int sampleSize, int channels); // Convert wave data to desired format +RLAPI float *LoadWaveSamples(Wave wave); // Load samples data from wave as a 32bit float data array +RLAPI void UnloadWaveSamples(float *samples); // Unload samples data loaded with LoadWaveSamples() + +// Music management functions +RLAPI Music LoadMusicStream(const char *fileName); // Load music stream from file +RLAPI Music LoadMusicStreamFromMemory(const char *fileType, const unsigned char *data, int dataSize); // Load music stream from data +RLAPI bool IsMusicValid(Music music); // Checks if a music stream is valid (context and buffers initialized) +RLAPI void UnloadMusicStream(Music music); // Unload music stream +RLAPI void PlayMusicStream(Music music); // Start music playing +RLAPI bool IsMusicStreamPlaying(Music music); // Check if music is playing +RLAPI void UpdateMusicStream(Music music); // Updates buffers for music streaming +RLAPI void StopMusicStream(Music music); // Stop music playing +RLAPI void PauseMusicStream(Music music); // Pause music playing +RLAPI void ResumeMusicStream(Music music); // Resume playing paused music +RLAPI void SeekMusicStream(Music music, float position); // Seek music to a position (in seconds) +RLAPI void SetMusicVolume(Music music, float volume); // Set volume for music (1.0 is max level) +RLAPI void SetMusicPitch(Music music, float pitch); // Set pitch for a music (1.0 is base level) +RLAPI void SetMusicPan(Music music, float pan); // Set pan for a music (-1.0 left, 0.0 center, 1.0 right) +RLAPI float GetMusicTimeLength(Music music); // Get music time length (in seconds) +RLAPI float GetMusicTimePlayed(Music music); // Get current music time played (in seconds) + +// AudioStream management functions +RLAPI AudioStream LoadAudioStream(unsigned int sampleRate, unsigned int sampleSize, unsigned int channels); // Load audio stream (to stream raw audio pcm data) +RLAPI bool IsAudioStreamValid(AudioStream stream); // Checks if an audio stream is valid (buffers initialized) +RLAPI void UnloadAudioStream(AudioStream stream); // Unload audio stream and free memory +RLAPI void UpdateAudioStream(AudioStream stream, const void *data, int frameCount); // Update audio stream buffers with data +RLAPI bool IsAudioStreamProcessed(AudioStream stream); // Check if any audio stream buffers requires refill +RLAPI void PlayAudioStream(AudioStream stream); // Play audio stream +RLAPI void PauseAudioStream(AudioStream stream); // Pause audio stream +RLAPI void ResumeAudioStream(AudioStream stream); // Resume audio stream +RLAPI bool IsAudioStreamPlaying(AudioStream stream); // Check if audio stream is playing +RLAPI void StopAudioStream(AudioStream stream); // Stop audio stream +RLAPI void SetAudioStreamVolume(AudioStream stream, float volume); // Set volume for audio stream (1.0 is max level) +RLAPI void SetAudioStreamPitch(AudioStream stream, float pitch); // Set pitch for audio stream (1.0 is base level) +RLAPI void SetAudioStreamPan(AudioStream stream, float pan); // Set pan for audio stream (-1.0 to 1.0 range, 0.0 is centered) +RLAPI void SetAudioStreamBufferSizeDefault(int size); // Default size for new audio streams +RLAPI void SetAudioStreamCallback(AudioStream stream, AudioCallback callback); // Audio thread callback to request new data + +RLAPI void AttachAudioStreamProcessor(AudioStream stream, AudioCallback processor); // Attach audio stream processor to stream, receives frames x 2 samples as 'float' (stereo) +RLAPI void DetachAudioStreamProcessor(AudioStream stream, AudioCallback processor); // Detach audio stream processor from stream + +RLAPI void AttachAudioMixedProcessor(AudioCallback processor); // Attach audio stream processor to the entire audio pipeline, receives frames x 2 samples as 'float' (stereo) +RLAPI void DetachAudioMixedProcessor(AudioCallback processor); // Detach audio stream processor from the entire audio pipeline + +#if defined(__cplusplus) +} +#endif + +#endif // RAYLIB_H diff --git a/include/windows/raymath.h b/include/windows/raymath.h new file mode 100644 index 0000000..8a0cce1 --- /dev/null +++ b/include/windows/raymath.h @@ -0,0 +1,3134 @@ +/********************************************************************************************** +* +* raymath v2.0 - Math functions to work with Vector2, Vector3, Matrix and Quaternions +* +* CONVENTIONS: +* - Matrix structure is defined as row-major (memory layout) but parameters naming AND all +* math operations performed by the library consider the structure as it was column-major +* It is like transposed versions of the matrices are used for all the maths +* It benefits some functions making them cache-friendly and also avoids matrix +* transpositions sometimes required by OpenGL +* Example: In memory order, row0 is [m0 m4 m8 m12] but in semantic math row0 is [m0 m1 m2 m3] +* - Functions are always self-contained, no function use another raymath function inside, +* required code is directly re-implemented inside +* - Functions input parameters are always received by value (2 unavoidable exceptions) +* - Functions use always a "result" variable for return (except C++ operators) +* - Functions are always defined inline +* - Angles are always in radians (DEG2RAD/RAD2DEG macros provided for convenience) +* - No compound literals used to make sure libray is compatible with C++ +* +* CONFIGURATION: +* #define RAYMATH_IMPLEMENTATION +* Generates the implementation of the library into the included file +* If not defined, the library is in header only mode and can be included in other headers +* or source files without problems. But only ONE file should hold the implementation +* +* #define RAYMATH_STATIC_INLINE +* Define static inline functions code, so #include header suffices for use +* This may use up lots of memory +* +* #define RAYMATH_DISABLE_CPP_OPERATORS +* Disables C++ operator overloads for raymath types. +* +* #define RAYMATH_USE_SIMD_INTRINSICS 1 +* Try to enable SIMD intrinsics for MatrixMultiply() +* Note that users enabling it must be aware of the target platform where application will +* run to support the selected SIMD intrinsic, for now, only SSE is supported +* +* LICENSE: zlib/libpng +* +* Copyright (c) 2015-2026 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. +* +**********************************************************************************************/ + +#ifndef RAYMATH_H +#define RAYMATH_H + +#if defined(RAYMATH_IMPLEMENTATION) && defined(RAYMATH_STATIC_INLINE) + #error "Specifying both RAYMATH_IMPLEMENTATION and RAYMATH_STATIC_INLINE is contradictory" +#endif + +// Function specifiers definition +#if defined(RAYMATH_IMPLEMENTATION) + #if defined(_WIN32) && defined(BUILD_LIBTYPE_SHARED) + #define RMAPI __declspec(dllexport) extern inline // Building raylib as a Win32 shared library (.dll) + #elif defined(BUILD_LIBTYPE_SHARED) + #define RMAPI __attribute__((visibility("default"))) // Building raylib as a Unix shared library (.so/.dylib) + #elif defined(_WIN32) && defined(USE_LIBTYPE_SHARED) + #define RMAPI __declspec(dllimport) // Using raylib as a Win32 shared library (.dll) + #else + #define RMAPI extern inline // Provide external definition + #endif +#elif defined(RAYMATH_STATIC_INLINE) + #define RMAPI static inline // Functions may be inlined, no external out-of-line definition +#else + #if defined(__TINYC__) + #define RMAPI static inline // plain inline not supported by tinycc (See issue #435) + #else + #define RMAPI inline // Functions may be inlined or external definition used + #endif +#endif + +//---------------------------------------------------------------------------------- +// Defines and Macros +//---------------------------------------------------------------------------------- +#ifndef PI + #define PI 3.14159265358979323846f +#endif + +#ifndef EPSILON + #define EPSILON 0.000001f +#endif + +#ifndef DEG2RAD + #define DEG2RAD (PI/180.0f) +#endif + +#ifndef RAD2DEG + #define RAD2DEG (180.0f/PI) +#endif + +// Get float vector for Matrix +#ifndef MatrixToFloat + #define MatrixToFloat(mat) (MatrixToFloatV(mat).v) +#endif + +// Get float vector for Vector3 +#ifndef Vector3ToFloat + #define Vector3ToFloat(vec) (Vector3ToFloatV(vec).v) +#endif + +//---------------------------------------------------------------------------------- +// Types and Structures Definition +//---------------------------------------------------------------------------------- +#if !defined(RL_VECTOR2_TYPE) +// Vector2 type +typedef struct Vector2 { + float x; + float y; +} Vector2; +#define RL_VECTOR2_TYPE +#endif + +#if !defined(RL_VECTOR3_TYPE) +// Vector3 type +typedef struct Vector3 { + float x; + float y; + float z; +} Vector3; +#define RL_VECTOR3_TYPE +#endif + +#if !defined(RL_VECTOR4_TYPE) +// Vector4 type +typedef struct Vector4 { + float x; + float y; + float z; + float w; +} Vector4; +#define RL_VECTOR4_TYPE +#endif + +#if !defined(RL_QUATERNION_TYPE) +// Quaternion type +typedef Vector4 Quaternion; +#define RL_QUATERNION_TYPE +#endif + +#if !defined(RL_MATRIX_TYPE) +// Matrix type (OpenGL style 4x4 - right handed, column major) +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) + float m3, m7, m11, m15; // Matrix fourth row (4 components) +} Matrix; +#define RL_MATRIX_TYPE +#endif + +// NOTE: Helper types to be used instead of array return types for *ToFloat functions +#if !defined(RL_FLOAT3_TYPE) +typedef struct float3 { + float v[3]; +} float3; +#define RL_FLOAT3_TYPE +#endif + +#if !defined(RL_FLOAT16_TYPE) +typedef struct float16 { + float v[16]; +} float16; +#define RL_FLOAT16_TYPE +#endif + +#include // Required for: sinf(), cosf(), tan(), atan2f(), sqrtf(), floor(), fminf(), fmaxf(), fabsf() + +#if RAYMATH_USE_SIMD_INTRINSICS + // SIMD is used on the most costly raymath function MatrixMultiply() + // NOTE: Only SSE intrinsics support implemented + // TODO: Consider support for other SIMD instrinsics: + // - SSEx, AVX, AVX2, FMA, NEON, RVV + /* + #if defined(__SSE4_2__) + #include + #define RAYMATH_SSE42_ENABLED + #elif defined(__SSE4_1__) + #include + #define RAYMATH_SSE41_ENABLED + #elif defined(__SSSE3__) + #include + #define RAYMATH_SSSE3_ENABLED + #elif defined(__SSE3__) + #include + #define RAYMATH_SSE3_ENABLED + #elif defined(__SSE2__) || (defined(_M_AMD64) || defined(_M_X64)) // SSE2 x64 + #include + #define RAYMATH_SSE2_ENABLED + #endif + */ + #if defined(__SSE__) || defined(_M_X64) || (defined(_M_IX86_FP) && (_M_IX86_FP >= 1)) + #include + #define RAYMATH_SSE_ENABLED + #endif +#endif + +//---------------------------------------------------------------------------------- +// Module Functions Definition - Utils math +//---------------------------------------------------------------------------------- + +// Clamp float value +RMAPI float Clamp(float value, float min, float max) +{ + float result = (value < min)? min : value; + + if (result > max) result = max; + + return result; +} + +// Calculate linear interpolation between two floats +RMAPI float Lerp(float start, float end, float amount) +{ + float result = start + amount*(end - start); + + return result; +} + +// Normalize input value within input range +RMAPI float Normalize(float value, float start, float end) +{ + float result = (value - start)/(end - start); + + return result; +} + +// Remap input value within input range to output range +RMAPI float Remap(float value, float inputStart, float inputEnd, float outputStart, float outputEnd) +{ + float result = (value - inputStart)/(inputEnd - inputStart)*(outputEnd - outputStart) + outputStart; + + return result; +} + +// Wrap input value from min to max +RMAPI float Wrap(float value, float min, float max) +{ + float result = value - (max - min)*floorf((value - min)/(max - min)); + + return result; +} + +// Check whether two given floats are almost equal +RMAPI int FloatEquals(float x, float y) +{ +#if !defined(EPSILON) + #define EPSILON 0.000001f +#endif + + int result = (fabsf(x - y)) <= (EPSILON*fmaxf(1.0f, fmaxf(fabsf(x), fabsf(y)))); + + return result; +} + +//---------------------------------------------------------------------------------- +// Module Functions Definition - Vector2 math +//---------------------------------------------------------------------------------- + +// Vector with components value 0.0f +RMAPI Vector2 Vector2Zero(void) +{ + Vector2 result = { 0.0f, 0.0f }; + + return result; +} + +// Vector with components value 1.0f +RMAPI Vector2 Vector2One(void) +{ + Vector2 result = { 1.0f, 1.0f }; + + return result; +} + +// Add two vectors (v1 + v2) +RMAPI Vector2 Vector2Add(Vector2 v1, Vector2 v2) +{ + Vector2 result = { v1.x + v2.x, v1.y + v2.y }; + + return result; +} + +// Add vector and float value +RMAPI Vector2 Vector2AddValue(Vector2 v, float add) +{ + Vector2 result = { v.x + add, v.y + add }; + + return result; +} + +// Subtract two vectors (v1 - v2) +RMAPI Vector2 Vector2Subtract(Vector2 v1, Vector2 v2) +{ + Vector2 result = { v1.x - v2.x, v1.y - v2.y }; + + return result; +} + +// Subtract vector by float value +RMAPI Vector2 Vector2SubtractValue(Vector2 v, float sub) +{ + Vector2 result = { v.x - sub, v.y - sub }; + + return result; +} + +// Calculate vector length +RMAPI float Vector2Length(Vector2 v) +{ + float result = sqrtf((v.x*v.x) + (v.y*v.y)); + + return result; +} + +// Calculate vector square length +RMAPI float Vector2LengthSqr(Vector2 v) +{ + float result = (v.x*v.x) + (v.y*v.y); + + return result; +} + +// Calculate two vectors dot product +RMAPI float Vector2DotProduct(Vector2 v1, Vector2 v2) +{ + float result = (v1.x*v2.x + v1.y*v2.y); + + return result; +} + +// Calculate two vectors cross product +RMAPI float Vector2CrossProduct(Vector2 v1, Vector2 v2) +{ + float result = (v1.x*v2.y - v1.y*v2.x); + + return result; +} + +// Calculate distance between two vectors +RMAPI float Vector2Distance(Vector2 v1, Vector2 v2) +{ + float result = sqrtf((v1.x - v2.x)*(v1.x - v2.x) + (v1.y - v2.y)*(v1.y - v2.y)); + + return result; +} + +// Calculate square distance between two vectors +RMAPI float Vector2DistanceSqr(Vector2 v1, Vector2 v2) +{ + float result = ((v1.x - v2.x)*(v1.x - v2.x) + (v1.y - v2.y)*(v1.y - v2.y)); + + return result; +} + +// Calculate the signed angle from v1 to v2, relative to the origin (0, 0) +// NOTE: Coordinate system convention: positive X right, positive Y down +// positive angles appear clockwise, and negative angles appear counterclockwise +RMAPI float Vector2Angle(Vector2 v1, Vector2 v2) +{ + float result = 0.0f; + + float dot = v1.x*v2.x + v1.y*v2.y; + float det = v1.x*v2.y - v1.y*v2.x; + + result = atan2f(det, dot); + + return result; +} + +// Calculate angle defined by a two vectors line +// NOTE: Parameters need to be normalized +// Current implementation should be aligned with glm::angle +RMAPI float Vector2LineAngle(Vector2 start, Vector2 end) +{ + float result = 0.0f; + + // TODO(10/9/2023): Currently angles move clockwise, determine if this is wanted behavior + result = -atan2f(end.y - start.y, end.x - start.x); + + return result; +} + +// Scale vector (multiply by value) +RMAPI Vector2 Vector2Scale(Vector2 v, float scale) +{ + Vector2 result = { v.x*scale, v.y*scale }; + + return result; +} + +// Multiply vector by vector +RMAPI Vector2 Vector2Multiply(Vector2 v1, Vector2 v2) +{ + Vector2 result = { v1.x*v2.x, v1.y*v2.y }; + + return result; +} + +// Negate vector +RMAPI Vector2 Vector2Negate(Vector2 v) +{ + Vector2 result = { -v.x, -v.y }; + + return result; +} + +// Divide vector by vector +RMAPI Vector2 Vector2Divide(Vector2 v1, Vector2 v2) +{ + Vector2 result = { v1.x/v2.x, v1.y/v2.y }; + + return result; +} + +// Normalize provided vector +RMAPI Vector2 Vector2Normalize(Vector2 v) +{ + Vector2 result = { 0 }; + float length = sqrtf((v.x*v.x) + (v.y*v.y)); + + if (length > 0) + { + float ilength = 1.0f/length; + result.x = v.x*ilength; + result.y = v.y*ilength; + } + + return result; +} + +// Transforms a Vector2 by a given Matrix +RMAPI Vector2 Vector2Transform(Vector2 v, Matrix mat) +{ + Vector2 result = { 0 }; + + float x = v.x; + float y = v.y; + float z = 0; + + result.x = mat.m0*x + mat.m4*y + mat.m8*z + mat.m12; + result.y = mat.m1*x + mat.m5*y + mat.m9*z + mat.m13; + + return result; +} + +// Calculate linear interpolation between two vectors +RMAPI Vector2 Vector2Lerp(Vector2 v1, Vector2 v2, float amount) +{ + Vector2 result = { 0 }; + + result.x = v1.x + amount*(v2.x - v1.x); + result.y = v1.y + amount*(v2.y - v1.y); + + return result; +} + +// Calculate reflected vector to normal +RMAPI Vector2 Vector2Reflect(Vector2 v, Vector2 normal) +{ + Vector2 result = { 0 }; + + float dotProduct = (v.x*normal.x + v.y*normal.y); // Dot product + + result.x = v.x - (2.0f*normal.x)*dotProduct; + result.y = v.y - (2.0f*normal.y)*dotProduct; + + return result; +} + +// Get min value for each pair of components +RMAPI Vector2 Vector2Min(Vector2 v1, Vector2 v2) +{ + Vector2 result = { 0 }; + + result.x = fminf(v1.x, v2.x); + result.y = fminf(v1.y, v2.y); + + return result; +} + +// Get max value for each pair of components +RMAPI Vector2 Vector2Max(Vector2 v1, Vector2 v2) +{ + Vector2 result = { 0 }; + + result.x = fmaxf(v1.x, v2.x); + result.y = fmaxf(v1.y, v2.y); + + return result; +} + +// Rotate vector by angle +RMAPI Vector2 Vector2Rotate(Vector2 v, float angle) +{ + Vector2 result = { 0 }; + + float cosres = cosf(angle); + float sinres = sinf(angle); + + result.x = v.x*cosres - v.y*sinres; + result.y = v.x*sinres + v.y*cosres; + + return result; +} + +// Move Vector towards target +RMAPI Vector2 Vector2MoveTowards(Vector2 v, Vector2 target, float maxDistance) +{ + Vector2 result = { 0 }; + + float dx = target.x - v.x; + float dy = target.y - v.y; + float value = (dx*dx) + (dy*dy); + + if ((value == 0) || ((maxDistance >= 0) && (value <= maxDistance*maxDistance))) return target; + + float dist = sqrtf(value); + + result.x = v.x + dx/dist*maxDistance; + result.y = v.y + dy/dist*maxDistance; + + return result; +} + +// Invert the given vector +RMAPI Vector2 Vector2Invert(Vector2 v) +{ + Vector2 result = { 1.0f/v.x, 1.0f/v.y }; + + return result; +} + +// Clamp the components of the vector between +// min and max values specified by the given vectors +RMAPI Vector2 Vector2Clamp(Vector2 v, Vector2 min, Vector2 max) +{ + Vector2 result = { 0 }; + + result.x = fminf(max.x, fmaxf(min.x, v.x)); + result.y = fminf(max.y, fmaxf(min.y, v.y)); + + return result; +} + +// Clamp the magnitude of the vector between two min and max values +RMAPI Vector2 Vector2ClampValue(Vector2 v, float min, float max) +{ + Vector2 result = v; + + float length = (v.x*v.x) + (v.y*v.y); + if (length > 0.0f) + { + length = sqrtf(length); + + float scale = 1; // By default, 1 as the neutral element + if (length < min) scale = min/length; + else if (length > max) scale = max/length; + + result.x = v.x*scale; + result.y = v.y*scale; + } + + return result; +} + +// Check whether two given vectors are almost equal +RMAPI int Vector2Equals(Vector2 p, Vector2 q) +{ +#if !defined(EPSILON) + #define EPSILON 0.000001f +#endif + + int result = ((fabsf(p.x - q.x)) <= (EPSILON*fmaxf(1.0f, fmaxf(fabsf(p.x), fabsf(q.x))))) && + ((fabsf(p.y - q.y)) <= (EPSILON*fmaxf(1.0f, fmaxf(fabsf(p.y), fabsf(q.y))))); + + return result; +} + +// Compute the direction of a refracted ray +// v: normalized direction of the incoming ray +// n: normalized normal vector of the interface of two optical media +// r: ratio of the refractive index of the medium from where the ray comes +// to the refractive index of the medium on the other side of the surface +RMAPI Vector2 Vector2Refract(Vector2 v, Vector2 n, float r) +{ + Vector2 result = { 0 }; + + float dot = v.x*n.x + v.y*n.y; + float d = 1.0f - r*r*(1.0f - dot*dot); + + if (d >= 0.0f) + { + d = sqrtf(d); + v.x = r*v.x - (r*dot + d)*n.x; + v.y = r*v.y - (r*dot + d)*n.y; + + result = v; + } + + return result; +} + + +//---------------------------------------------------------------------------------- +// Module Functions Definition - Vector3 math +//---------------------------------------------------------------------------------- + +// Vector with components value 0.0f +RMAPI Vector3 Vector3Zero(void) +{ + Vector3 result = { 0.0f, 0.0f, 0.0f }; + + return result; +} + +// Vector with components value 1.0f +RMAPI Vector3 Vector3One(void) +{ + Vector3 result = { 1.0f, 1.0f, 1.0f }; + + return result; +} + +// Add two vectors +RMAPI Vector3 Vector3Add(Vector3 v1, Vector3 v2) +{ + Vector3 result = { v1.x + v2.x, v1.y + v2.y, v1.z + v2.z }; + + return result; +} + +// Add vector and float value +RMAPI Vector3 Vector3AddValue(Vector3 v, float add) +{ + Vector3 result = { v.x + add, v.y + add, v.z + add }; + + return result; +} + +// Subtract two vectors +RMAPI Vector3 Vector3Subtract(Vector3 v1, Vector3 v2) +{ + Vector3 result = { v1.x - v2.x, v1.y - v2.y, v1.z - v2.z }; + + return result; +} + +// Subtract vector by float value +RMAPI Vector3 Vector3SubtractValue(Vector3 v, float sub) +{ + Vector3 result = { v.x - sub, v.y - sub, v.z - sub }; + + return result; +} + +// Multiply vector by scalar +RMAPI Vector3 Vector3Scale(Vector3 v, float scalar) +{ + Vector3 result = { v.x*scalar, v.y*scalar, v.z*scalar }; + + return result; +} + +// Multiply vector by vector +RMAPI Vector3 Vector3Multiply(Vector3 v1, Vector3 v2) +{ + Vector3 result = { v1.x*v2.x, v1.y*v2.y, v1.z*v2.z }; + + return result; +} + +// Calculate two vectors cross product +RMAPI Vector3 Vector3CrossProduct(Vector3 v1, Vector3 v2) +{ + Vector3 result = { v1.y*v2.z - v1.z*v2.y, v1.z*v2.x - v1.x*v2.z, v1.x*v2.y - v1.y*v2.x }; + + return result; +} + +// Calculate one vector perpendicular vector +RMAPI Vector3 Vector3Perpendicular(Vector3 v) +{ + Vector3 result = { 0 }; + + float min = fabsf(v.x); + Vector3 cardinalAxis = {1.0f, 0.0f, 0.0f}; + + if (fabsf(v.y) < min) + { + min = fabsf(v.y); + Vector3 tmp = {0.0f, 1.0f, 0.0f}; + cardinalAxis = tmp; + } + + if (fabsf(v.z) < min) + { + Vector3 tmp = {0.0f, 0.0f, 1.0f}; + cardinalAxis = tmp; + } + + // Cross product between vectors + result.x = v.y*cardinalAxis.z - v.z*cardinalAxis.y; + result.y = v.z*cardinalAxis.x - v.x*cardinalAxis.z; + result.z = v.x*cardinalAxis.y - v.y*cardinalAxis.x; + + return result; +} + +// Calculate vector length +RMAPI float Vector3Length(const Vector3 v) +{ + float result = sqrtf(v.x*v.x + v.y*v.y + v.z*v.z); + + return result; +} + +// Calculate vector square length +RMAPI float Vector3LengthSqr(const Vector3 v) +{ + float result = v.x*v.x + v.y*v.y + v.z*v.z; + + return result; +} + +// Calculate two vectors dot product +RMAPI float Vector3DotProduct(Vector3 v1, Vector3 v2) +{ + float result = (v1.x*v2.x + v1.y*v2.y + v1.z*v2.z); + + return result; +} + +// Calculate distance between two vectors +RMAPI float Vector3Distance(Vector3 v1, Vector3 v2) +{ + float result = 0.0f; + + float dx = v2.x - v1.x; + float dy = v2.y - v1.y; + float dz = v2.z - v1.z; + result = sqrtf(dx*dx + dy*dy + dz*dz); + + return result; +} + +// Calculate square distance between two vectors +RMAPI float Vector3DistanceSqr(Vector3 v1, Vector3 v2) +{ + float result = 0.0f; + + float dx = v2.x - v1.x; + float dy = v2.y - v1.y; + float dz = v2.z - v1.z; + result = dx*dx + dy*dy + dz*dz; + + return result; +} + +// Calculate angle between two vectors +RMAPI float Vector3Angle(Vector3 v1, Vector3 v2) +{ + float result = 0.0f; + + Vector3 cross = { v1.y*v2.z - v1.z*v2.y, v1.z*v2.x - v1.x*v2.z, v1.x*v2.y - v1.y*v2.x }; + float len = sqrtf(cross.x*cross.x + cross.y*cross.y + cross.z*cross.z); + float dot = (v1.x*v2.x + v1.y*v2.y + v1.z*v2.z); + result = atan2f(len, dot); + + return result; +} + +// Negate provided vector (invert direction) +RMAPI Vector3 Vector3Negate(Vector3 v) +{ + Vector3 result = { -v.x, -v.y, -v.z }; + + return result; +} + +// Divide vector by vector +RMAPI Vector3 Vector3Divide(Vector3 v1, Vector3 v2) +{ + Vector3 result = { v1.x/v2.x, v1.y/v2.y, v1.z/v2.z }; + + return result; +} + +// Normalize provided vector +RMAPI Vector3 Vector3Normalize(Vector3 v) +{ + Vector3 result = v; + + float length = sqrtf(v.x*v.x + v.y*v.y + v.z*v.z); + if (length != 0.0f) + { + float ilength = 1.0f/length; + + result.x *= ilength; + result.y *= ilength; + result.z *= ilength; + } + + return result; +} + +//Calculate the projection of the vector v1 on to v2 +RMAPI Vector3 Vector3Project(Vector3 v1, Vector3 v2) +{ + Vector3 result = { 0 }; + + float v1dv2 = (v1.x*v2.x + v1.y*v2.y + v1.z*v2.z); + float v2dv2 = (v2.x*v2.x + v2.y*v2.y + v2.z*v2.z); + + float mag = v1dv2/v2dv2; + + result.x = v2.x*mag; + result.y = v2.y*mag; + result.z = v2.z*mag; + + return result; +} + +//Calculate the rejection of the vector v1 on to v2 +RMAPI Vector3 Vector3Reject(Vector3 v1, Vector3 v2) +{ + Vector3 result = { 0 }; + + float v1dv2 = (v1.x*v2.x + v1.y*v2.y + v1.z*v2.z); + float v2dv2 = (v2.x*v2.x + v2.y*v2.y + v2.z*v2.z); + + float mag = v1dv2/v2dv2; + + result.x = v1.x - (v2.x*mag); + result.y = v1.y - (v2.y*mag); + result.z = v1.z - (v2.z*mag); + + return result; +} + +// Orthonormalize provided vectors +// Makes vectors normalized and orthogonal to each other +// Gram-Schmidt function implementation +RMAPI void Vector3OrthoNormalize(Vector3 *v1, Vector3 *v2) +{ + float length = 0.0f; + float ilength = 0.0f; + + // Vector3Normalize(*v1); + Vector3 v = *v1; + length = sqrtf(v.x*v.x + v.y*v.y + v.z*v.z); + if (length == 0.0f) length = 1.0f; + ilength = 1.0f/length; + v1->x *= ilength; + v1->y *= ilength; + v1->z *= ilength; + + // Vector3CrossProduct(*v1, *v2) + Vector3 vn1 = { v1->y*v2->z - v1->z*v2->y, v1->z*v2->x - v1->x*v2->z, v1->x*v2->y - v1->y*v2->x }; + + // Vector3Normalize(vn1); + v = vn1; + length = sqrtf(v.x*v.x + v.y*v.y + v.z*v.z); + if (length == 0.0f) length = 1.0f; + ilength = 1.0f/length; + vn1.x *= ilength; + vn1.y *= ilength; + vn1.z *= ilength; + + // Vector3CrossProduct(vn1, *v1) + Vector3 vn2 = { vn1.y*v1->z - vn1.z*v1->y, vn1.z*v1->x - vn1.x*v1->z, vn1.x*v1->y - vn1.y*v1->x }; + + *v2 = vn2; +} + +// Transforms a Vector3 by a given Matrix +RMAPI Vector3 Vector3Transform(Vector3 v, Matrix mat) +{ + Vector3 result = { 0 }; + + float x = v.x; + float y = v.y; + float z = v.z; + + result.x = mat.m0*x + mat.m4*y + mat.m8*z + mat.m12; + result.y = mat.m1*x + mat.m5*y + mat.m9*z + mat.m13; + result.z = mat.m2*x + mat.m6*y + mat.m10*z + mat.m14; + + return result; +} + +// Transform a vector by quaternion rotation +RMAPI Vector3 Vector3RotateByQuaternion(Vector3 v, Quaternion q) +{ + Vector3 result = { 0 }; + + result.x = v.x*(q.x*q.x + q.w*q.w - q.y*q.y - q.z*q.z) + v.y*(2*q.x*q.y - 2*q.w*q.z) + v.z*(2*q.x*q.z + 2*q.w*q.y); + result.y = v.x*(2*q.w*q.z + 2*q.x*q.y) + v.y*(q.w*q.w - q.x*q.x + q.y*q.y - q.z*q.z) + v.z*(-2*q.w*q.x + 2*q.y*q.z); + result.z = v.x*(-2*q.w*q.y + 2*q.x*q.z) + v.y*(2*q.w*q.x + 2*q.y*q.z)+ v.z*(q.w*q.w - q.x*q.x - q.y*q.y + q.z*q.z); + + return result; +} + +// Rotates a vector around an axis +RMAPI Vector3 Vector3RotateByAxisAngle(Vector3 v, Vector3 axis, float angle) +{ + // Using Euler-Rodrigues Formula + // Ref.: https://en.wikipedia.org/w/index.php?title=Euler%E2%80%93Rodrigues_formula + + Vector3 result = v; + + // Vector3Normalize(axis); + float length = sqrtf(axis.x*axis.x + axis.y*axis.y + axis.z*axis.z); + if (length == 0.0f) length = 1.0f; + float ilength = 1.0f/length; + axis.x *= ilength; + axis.y *= ilength; + axis.z *= ilength; + + angle /= 2.0f; + float a = sinf(angle); + float b = axis.x*a; + float c = axis.y*a; + float d = axis.z*a; + a = cosf(angle); + Vector3 w = { b, c, d }; + + // Vector3CrossProduct(w, v) + Vector3 wv = { w.y*v.z - w.z*v.y, w.z*v.x - w.x*v.z, w.x*v.y - w.y*v.x }; + + // Vector3CrossProduct(w, wv) + Vector3 wwv = { w.y*wv.z - w.z*wv.y, w.z*wv.x - w.x*wv.z, w.x*wv.y - w.y*wv.x }; + + // Vector3Scale(wv, 2*a) + a *= 2; + wv.x *= a; + wv.y *= a; + wv.z *= a; + + // Vector3Scale(wwv, 2) + wwv.x *= 2; + wwv.y *= 2; + wwv.z *= 2; + + result.x += wv.x; + result.y += wv.y; + result.z += wv.z; + + result.x += wwv.x; + result.y += wwv.y; + result.z += wwv.z; + + return result; +} + +// Move Vector towards target +RMAPI Vector3 Vector3MoveTowards(Vector3 v, Vector3 target, float maxDistance) +{ + Vector3 result = { 0 }; + + float dx = target.x - v.x; + float dy = target.y - v.y; + float dz = target.z - v.z; + float value = (dx*dx) + (dy*dy) + (dz*dz); + + if ((value == 0) || ((maxDistance >= 0) && (value <= maxDistance*maxDistance))) return target; + + float dist = sqrtf(value); + + result.x = v.x + dx/dist*maxDistance; + result.y = v.y + dy/dist*maxDistance; + result.z = v.z + dz/dist*maxDistance; + + return result; +} + +// Calculate linear interpolation between two vectors +RMAPI Vector3 Vector3Lerp(Vector3 v1, Vector3 v2, float amount) +{ + Vector3 result = { 0 }; + + result.x = v1.x + amount*(v2.x - v1.x); + result.y = v1.y + amount*(v2.y - v1.y); + result.z = v1.z + amount*(v2.z - v1.z); + + return result; +} + +// Calculate cubic hermite interpolation between two vectors and their tangents +// as described in the GLTF 2.0 specification: https://registry.khronos.org/glTF/specs/2.0/glTF-2.0.html#interpolation-cubic +RMAPI Vector3 Vector3CubicHermite(Vector3 v1, Vector3 tangent1, Vector3 v2, Vector3 tangent2, float amount) +{ + Vector3 result = { 0 }; + + float amountPow2 = amount*amount; + float amountPow3 = amount*amount*amount; + + result.x = (2*amountPow3 - 3*amountPow2 + 1)*v1.x + (amountPow3 - 2*amountPow2 + amount)*tangent1.x + (-2*amountPow3 + 3*amountPow2)*v2.x + (amountPow3 - amountPow2)*tangent2.x; + result.y = (2*amountPow3 - 3*amountPow2 + 1)*v1.y + (amountPow3 - 2*amountPow2 + amount)*tangent1.y + (-2*amountPow3 + 3*amountPow2)*v2.y + (amountPow3 - amountPow2)*tangent2.y; + result.z = (2*amountPow3 - 3*amountPow2 + 1)*v1.z + (amountPow3 - 2*amountPow2 + amount)*tangent1.z + (-2*amountPow3 + 3*amountPow2)*v2.z + (amountPow3 - amountPow2)*tangent2.z; + + return result; +} + +// Calculate reflected vector to normal +RMAPI Vector3 Vector3Reflect(Vector3 v, Vector3 normal) +{ + Vector3 result = { 0 }; + + // I is the original vector + // N is the normal of the incident plane + // R = I - (2*N*(DotProduct[I, N])) + + float dotProduct = (v.x*normal.x + v.y*normal.y + v.z*normal.z); + + result.x = v.x - (2.0f*normal.x)*dotProduct; + result.y = v.y - (2.0f*normal.y)*dotProduct; + result.z = v.z - (2.0f*normal.z)*dotProduct; + + return result; +} + +// Get min value for each pair of components +RMAPI Vector3 Vector3Min(Vector3 v1, Vector3 v2) +{ + Vector3 result = { 0 }; + + result.x = fminf(v1.x, v2.x); + result.y = fminf(v1.y, v2.y); + result.z = fminf(v1.z, v2.z); + + return result; +} + +// Get max value for each pair of components +RMAPI Vector3 Vector3Max(Vector3 v1, Vector3 v2) +{ + Vector3 result = { 0 }; + + result.x = fmaxf(v1.x, v2.x); + result.y = fmaxf(v1.y, v2.y); + result.z = fmaxf(v1.z, v2.z); + + return result; +} + +// Compute barycenter coordinates (u, v, w) for point p with respect to triangle (a, b, c) +// NOTE: Assumes P is on the plane of the triangle +RMAPI Vector3 Vector3Barycenter(Vector3 p, Vector3 a, Vector3 b, Vector3 c) +{ + Vector3 result = { 0 }; + + Vector3 v0 = { b.x - a.x, b.y - a.y, b.z - a.z }; // Vector3Subtract(b, a) + Vector3 v1 = { c.x - a.x, c.y - a.y, c.z - a.z }; // Vector3Subtract(c, a) + Vector3 v2 = { p.x - a.x, p.y - a.y, p.z - a.z }; // Vector3Subtract(p, a) + float d00 = (v0.x*v0.x + v0.y*v0.y + v0.z*v0.z); // Vector3DotProduct(v0, v0) + float d01 = (v0.x*v1.x + v0.y*v1.y + v0.z*v1.z); // Vector3DotProduct(v0, v1) + float d11 = (v1.x*v1.x + v1.y*v1.y + v1.z*v1.z); // Vector3DotProduct(v1, v1) + float d20 = (v2.x*v0.x + v2.y*v0.y + v2.z*v0.z); // Vector3DotProduct(v2, v0) + float d21 = (v2.x*v1.x + v2.y*v1.y + v2.z*v1.z); // Vector3DotProduct(v2, v1) + + float denom = d00*d11 - d01*d01; + + result.y = (d11*d20 - d01*d21)/denom; + result.z = (d00*d21 - d01*d20)/denom; + result.x = 1.0f - (result.z + result.y); + + return result; +} + +// Projects a Vector3 from screen space into object space +// NOTE: Self-contained function, no other raymath functions are called +RMAPI Vector3 Vector3Unproject(Vector3 source, Matrix projection, Matrix view) +{ + Vector3 result = { 0 }; + + // Calculate unprojected matrix (multiply view matrix by projection matrix) and invert it + Matrix matViewProj = { // MatrixMultiply(view, projection); + view.m0*projection.m0 + view.m1*projection.m4 + view.m2*projection.m8 + view.m3*projection.m12, + view.m0*projection.m1 + view.m1*projection.m5 + view.m2*projection.m9 + view.m3*projection.m13, + view.m0*projection.m2 + view.m1*projection.m6 + view.m2*projection.m10 + view.m3*projection.m14, + view.m0*projection.m3 + view.m1*projection.m7 + view.m2*projection.m11 + view.m3*projection.m15, + view.m4*projection.m0 + view.m5*projection.m4 + view.m6*projection.m8 + view.m7*projection.m12, + view.m4*projection.m1 + view.m5*projection.m5 + view.m6*projection.m9 + view.m7*projection.m13, + view.m4*projection.m2 + view.m5*projection.m6 + view.m6*projection.m10 + view.m7*projection.m14, + view.m4*projection.m3 + view.m5*projection.m7 + view.m6*projection.m11 + view.m7*projection.m15, + view.m8*projection.m0 + view.m9*projection.m4 + view.m10*projection.m8 + view.m11*projection.m12, + view.m8*projection.m1 + view.m9*projection.m5 + view.m10*projection.m9 + view.m11*projection.m13, + view.m8*projection.m2 + view.m9*projection.m6 + view.m10*projection.m10 + view.m11*projection.m14, + view.m8*projection.m3 + view.m9*projection.m7 + view.m10*projection.m11 + view.m11*projection.m15, + view.m12*projection.m0 + view.m13*projection.m4 + view.m14*projection.m8 + view.m15*projection.m12, + view.m12*projection.m1 + view.m13*projection.m5 + view.m14*projection.m9 + view.m15*projection.m13, + view.m12*projection.m2 + view.m13*projection.m6 + view.m14*projection.m10 + view.m15*projection.m14, + view.m12*projection.m3 + view.m13*projection.m7 + view.m14*projection.m11 + view.m15*projection.m15 }; + + // Calculate inverted matrix -> MatrixInvert(matViewProj); + // Cache the matrix values (speed optimization) + float a00 = matViewProj.m0, a01 = matViewProj.m1, a02 = matViewProj.m2, a03 = matViewProj.m3; + float a10 = matViewProj.m4, a11 = matViewProj.m5, a12 = matViewProj.m6, a13 = matViewProj.m7; + float a20 = matViewProj.m8, a21 = matViewProj.m9, a22 = matViewProj.m10, a23 = matViewProj.m11; + float a30 = matViewProj.m12, a31 = matViewProj.m13, a32 = matViewProj.m14, a33 = matViewProj.m15; + + float b00 = a00*a11 - a01*a10; + float b01 = a00*a12 - a02*a10; + float b02 = a00*a13 - a03*a10; + float b03 = a01*a12 - a02*a11; + float b04 = a01*a13 - a03*a11; + float b05 = a02*a13 - a03*a12; + float b06 = a20*a31 - a21*a30; + float b07 = a20*a32 - a22*a30; + float b08 = a20*a33 - a23*a30; + float b09 = a21*a32 - a22*a31; + float b10 = a21*a33 - a23*a31; + float b11 = a22*a33 - a23*a32; + + // Calculate the invert determinant (inlined to avoid double-caching) + float invDet = 1.0f/(b00*b11 - b01*b10 + b02*b09 + b03*b08 - b04*b07 + b05*b06); + + Matrix matViewProjInv = { + (a11*b11 - a12*b10 + a13*b09)*invDet, + (-a01*b11 + a02*b10 - a03*b09)*invDet, + (a31*b05 - a32*b04 + a33*b03)*invDet, + (-a21*b05 + a22*b04 - a23*b03)*invDet, + (-a10*b11 + a12*b08 - a13*b07)*invDet, + (a00*b11 - a02*b08 + a03*b07)*invDet, + (-a30*b05 + a32*b02 - a33*b01)*invDet, + (a20*b05 - a22*b02 + a23*b01)*invDet, + (a10*b10 - a11*b08 + a13*b06)*invDet, + (-a00*b10 + a01*b08 - a03*b06)*invDet, + (a30*b04 - a31*b02 + a33*b00)*invDet, + (-a20*b04 + a21*b02 - a23*b00)*invDet, + (-a10*b09 + a11*b07 - a12*b06)*invDet, + (a00*b09 - a01*b07 + a02*b06)*invDet, + (-a30*b03 + a31*b01 - a32*b00)*invDet, + (a20*b03 - a21*b01 + a22*b00)*invDet }; + + // Create quaternion from source point + Quaternion quat = { source.x, source.y, source.z, 1.0f }; + + // Multiply quat point by unprojecte matrix + Quaternion qtransformed = { // QuaternionTransform(quat, matViewProjInv) + matViewProjInv.m0*quat.x + matViewProjInv.m4*quat.y + matViewProjInv.m8*quat.z + matViewProjInv.m12*quat.w, + matViewProjInv.m1*quat.x + matViewProjInv.m5*quat.y + matViewProjInv.m9*quat.z + matViewProjInv.m13*quat.w, + matViewProjInv.m2*quat.x + matViewProjInv.m6*quat.y + matViewProjInv.m10*quat.z + matViewProjInv.m14*quat.w, + matViewProjInv.m3*quat.x + matViewProjInv.m7*quat.y + matViewProjInv.m11*quat.z + matViewProjInv.m15*quat.w }; + + // Normalized world points in vectors + result.x = qtransformed.x/qtransformed.w; + result.y = qtransformed.y/qtransformed.w; + result.z = qtransformed.z/qtransformed.w; + + return result; +} + +// Get Vector3 as float array +RMAPI float3 Vector3ToFloatV(Vector3 v) +{ + float3 buffer = { 0 }; + + buffer.v[0] = v.x; + buffer.v[1] = v.y; + buffer.v[2] = v.z; + + return buffer; +} + +// Invert the given vector +RMAPI Vector3 Vector3Invert(Vector3 v) +{ + Vector3 result = { 1.0f/v.x, 1.0f/v.y, 1.0f/v.z }; + + return result; +} + +// Clamp the components of the vector between +// min and max values specified by the given vectors +RMAPI Vector3 Vector3Clamp(Vector3 v, Vector3 min, Vector3 max) +{ + Vector3 result = { 0 }; + + result.x = fminf(max.x, fmaxf(min.x, v.x)); + result.y = fminf(max.y, fmaxf(min.y, v.y)); + result.z = fminf(max.z, fmaxf(min.z, v.z)); + + return result; +} + +// Clamp the magnitude of the vector between two values +RMAPI Vector3 Vector3ClampValue(Vector3 v, float min, float max) +{ + Vector3 result = v; + + float length = (v.x*v.x) + (v.y*v.y) + (v.z*v.z); + if (length > 0.0f) + { + length = sqrtf(length); + + float scale = 1; // By default, 1 as the neutral element + if (length < min) scale = min/length; + else if (length > max) scale = max/length; + + result.x = v.x*scale; + result.y = v.y*scale; + result.z = v.z*scale; + } + + return result; +} + +// Check whether two given vectors are almost equal +RMAPI int Vector3Equals(Vector3 p, Vector3 q) +{ +#if !defined(EPSILON) + #define EPSILON 0.000001f +#endif + + int result = ((fabsf(p.x - q.x)) <= (EPSILON*fmaxf(1.0f, fmaxf(fabsf(p.x), fabsf(q.x))))) && + ((fabsf(p.y - q.y)) <= (EPSILON*fmaxf(1.0f, fmaxf(fabsf(p.y), fabsf(q.y))))) && + ((fabsf(p.z - q.z)) <= (EPSILON*fmaxf(1.0f, fmaxf(fabsf(p.z), fabsf(q.z))))); + + return result; +} + +// Compute the direction of a refracted ray +// v: normalized direction of the incoming ray +// n: normalized normal vector of the interface of two optical media +// r: ratio of the refractive index of the medium from where the ray comes +// to the refractive index of the medium on the other side of the surface +RMAPI Vector3 Vector3Refract(Vector3 v, Vector3 n, float r) +{ + Vector3 result = { 0 }; + + float dot = v.x*n.x + v.y*n.y + v.z*n.z; + float d = 1.0f - r*r*(1.0f - dot*dot); + + if (d >= 0.0f) + { + d = sqrtf(d); + v.x = r*v.x - (r*dot + d)*n.x; + v.y = r*v.y - (r*dot + d)*n.y; + v.z = r*v.z - (r*dot + d)*n.z; + + result = v; + } + + return result; +} + + +//---------------------------------------------------------------------------------- +// Module Functions Definition - Vector4 math +//---------------------------------------------------------------------------------- + +RMAPI Vector4 Vector4Zero(void) +{ + Vector4 result = { 0.0f, 0.0f, 0.0f, 0.0f }; + return result; +} + +RMAPI Vector4 Vector4One(void) +{ + Vector4 result = { 1.0f, 1.0f, 1.0f, 1.0f }; + return result; +} + +RMAPI Vector4 Vector4Add(Vector4 v1, Vector4 v2) +{ + Vector4 result = { + v1.x + v2.x, + v1.y + v2.y, + v1.z + v2.z, + v1.w + v2.w + }; + return result; +} + +RMAPI Vector4 Vector4AddValue(Vector4 v, float add) +{ + Vector4 result = { + v.x + add, + v.y + add, + v.z + add, + v.w + add + }; + return result; +} + +RMAPI Vector4 Vector4Subtract(Vector4 v1, Vector4 v2) +{ + Vector4 result = { + v1.x - v2.x, + v1.y - v2.y, + v1.z - v2.z, + v1.w - v2.w + }; + return result; +} + +RMAPI Vector4 Vector4SubtractValue(Vector4 v, float add) +{ + Vector4 result = { + v.x - add, + v.y - add, + v.z - add, + v.w - add + }; + return result; +} + +RMAPI float Vector4Length(Vector4 v) +{ + float result = sqrtf((v.x*v.x) + (v.y*v.y) + (v.z*v.z) + (v.w*v.w)); + return result; +} + +RMAPI float Vector4LengthSqr(Vector4 v) +{ + float result = (v.x*v.x) + (v.y*v.y) + (v.z*v.z) + (v.w*v.w); + return result; +} + +RMAPI float Vector4DotProduct(Vector4 v1, Vector4 v2) +{ + float result = (v1.x*v2.x + v1.y*v2.y + v1.z*v2.z + v1.w*v2.w); + return result; +} + +// Calculate distance between two vectors +RMAPI float Vector4Distance(Vector4 v1, Vector4 v2) +{ + float result = sqrtf( + (v1.x - v2.x)*(v1.x - v2.x) + (v1.y - v2.y)*(v1.y - v2.y) + + (v1.z - v2.z)*(v1.z - v2.z) + (v1.w - v2.w)*(v1.w - v2.w)); + return result; +} + +// Calculate square distance between two vectors +RMAPI float Vector4DistanceSqr(Vector4 v1, Vector4 v2) +{ + float result = + (v1.x - v2.x)*(v1.x - v2.x) + (v1.y - v2.y)*(v1.y - v2.y) + + (v1.z - v2.z)*(v1.z - v2.z) + (v1.w - v2.w)*(v1.w - v2.w); + + return result; +} + +RMAPI Vector4 Vector4Scale(Vector4 v, float scale) +{ + Vector4 result = { v.x*scale, v.y*scale, v.z*scale, v.w*scale }; + return result; +} + +// Multiply vector by vector +RMAPI Vector4 Vector4Multiply(Vector4 v1, Vector4 v2) +{ + Vector4 result = { v1.x*v2.x, v1.y*v2.y, v1.z*v2.z, v1.w*v2.w }; + return result; +} + +// Negate vector +RMAPI Vector4 Vector4Negate(Vector4 v) +{ + Vector4 result = { -v.x, -v.y, -v.z, -v.w }; + return result; +} + +// Divide vector by vector +RMAPI Vector4 Vector4Divide(Vector4 v1, Vector4 v2) +{ + Vector4 result = { v1.x/v2.x, v1.y/v2.y, v1.z/v2.z, v1.w/v2.w }; + return result; +} + +// Normalize provided vector +RMAPI Vector4 Vector4Normalize(Vector4 v) +{ + Vector4 result = { 0 }; + float length = sqrtf((v.x*v.x) + (v.y*v.y) + (v.z*v.z) + (v.w*v.w)); + + if (length > 0) + { + float ilength = 1.0f/length; + result.x = v.x*ilength; + result.y = v.y*ilength; + result.z = v.z*ilength; + result.w = v.w*ilength; + } + + return result; +} + +// Get min value for each pair of components +RMAPI Vector4 Vector4Min(Vector4 v1, Vector4 v2) +{ + Vector4 result = { 0 }; + + result.x = fminf(v1.x, v2.x); + result.y = fminf(v1.y, v2.y); + result.z = fminf(v1.z, v2.z); + result.w = fminf(v1.w, v2.w); + + return result; +} + +// Get max value for each pair of components +RMAPI Vector4 Vector4Max(Vector4 v1, Vector4 v2) +{ + Vector4 result = { 0 }; + + result.x = fmaxf(v1.x, v2.x); + result.y = fmaxf(v1.y, v2.y); + result.z = fmaxf(v1.z, v2.z); + result.w = fmaxf(v1.w, v2.w); + + return result; +} + +// Calculate linear interpolation between two vectors +RMAPI Vector4 Vector4Lerp(Vector4 v1, Vector4 v2, float amount) +{ + Vector4 result = { 0 }; + + result.x = v1.x + amount*(v2.x - v1.x); + result.y = v1.y + amount*(v2.y - v1.y); + result.z = v1.z + amount*(v2.z - v1.z); + result.w = v1.w + amount*(v2.w - v1.w); + + return result; +} + +// Move Vector towards target +RMAPI Vector4 Vector4MoveTowards(Vector4 v, Vector4 target, float maxDistance) +{ + Vector4 result = { 0 }; + + float dx = target.x - v.x; + float dy = target.y - v.y; + float dz = target.z - v.z; + float dw = target.w - v.w; + float value = (dx*dx) + (dy*dy) + (dz*dz) + (dw*dw); + + if ((value == 0) || ((maxDistance >= 0) && (value <= maxDistance*maxDistance))) return target; + + float dist = sqrtf(value); + + result.x = v.x + dx/dist*maxDistance; + result.y = v.y + dy/dist*maxDistance; + result.z = v.z + dz/dist*maxDistance; + result.w = v.w + dw/dist*maxDistance; + + return result; +} + +// Invert the given vector +RMAPI Vector4 Vector4Invert(Vector4 v) +{ + Vector4 result = { 1.0f/v.x, 1.0f/v.y, 1.0f/v.z, 1.0f/v.w }; + return result; +} + +// Check whether two given vectors are almost equal +RMAPI int Vector4Equals(Vector4 p, Vector4 q) +{ +#if !defined(EPSILON) + #define EPSILON 0.000001f +#endif + + int result = ((fabsf(p.x - q.x)) <= (EPSILON*fmaxf(1.0f, fmaxf(fabsf(p.x), fabsf(q.x))))) && + ((fabsf(p.y - q.y)) <= (EPSILON*fmaxf(1.0f, fmaxf(fabsf(p.y), fabsf(q.y))))) && + ((fabsf(p.z - q.z)) <= (EPSILON*fmaxf(1.0f, fmaxf(fabsf(p.z), fabsf(q.z))))) && + ((fabsf(p.w - q.w)) <= (EPSILON*fmaxf(1.0f, fmaxf(fabsf(p.w), fabsf(q.w))))); + return result; +} + + +//---------------------------------------------------------------------------------- +// Module Functions Definition - Matrix math +//---------------------------------------------------------------------------------- + +// Compute matrix determinant +RMAPI float MatrixDeterminant(Matrix mat) +{ + float result = 0.0f; +/* + // Cache the matrix values (speed optimization) + float a00 = mat.m0, a01 = mat.m1, a02 = mat.m2, a03 = mat.m3; + float a10 = mat.m4, a11 = mat.m5, a12 = mat.m6, a13 = mat.m7; + float a20 = mat.m8, a21 = mat.m9, a22 = mat.m10, a23 = mat.m11; + float a30 = mat.m12, a31 = mat.m13, a32 = mat.m14, a33 = mat.m15; + + // NOTE: It takes 72 multiplication to calculate 4x4 matrix determinant + result = a30*a21*a12*a03 - a20*a31*a12*a03 - a30*a11*a22*a03 + a10*a31*a22*a03 + + a20*a11*a32*a03 - a10*a21*a32*a03 - a30*a21*a02*a13 + a20*a31*a02*a13 + + a30*a01*a22*a13 - a00*a31*a22*a13 - a20*a01*a32*a13 + a00*a21*a32*a13 + + a30*a11*a02*a23 - a10*a31*a02*a23 - a30*a01*a12*a23 + a00*a31*a12*a23 + + a10*a01*a32*a23 - a00*a11*a32*a23 - a20*a11*a02*a33 + a10*a21*a02*a33 + + a20*a01*a12*a33 - a00*a21*a12*a33 - a10*a01*a22*a33 + a00*a11*a22*a33; +*/ + // Using Laplace expansion (https://en.wikipedia.org/wiki/Laplace_expansion), + // previous operation can be simplified to 40 multiplications, decreasing matrix + // size from 4x4 to 2x2 using minors + + // Cache the matrix values (speed optimization) + float m0 = mat.m0, m1 = mat.m1, m2 = mat.m2, m3 = mat.m3; + float m4 = mat.m4, m5 = mat.m5, m6 = mat.m6, m7 = mat.m7; + float m8 = mat.m8, m9 = mat.m9, m10 = mat.m10, m11 = mat.m11; + float m12 = mat.m12, m13 = mat.m13, m14 = mat.m14, m15 = mat.m15; + + result = (m0*((m5*(m10*m15 - m11*m14) - m9*(m6*m15 - m7*m14) + m13*(m6*m11 - m7*m10))) - + m4*((m1*(m10*m15 - m11*m14) - m9*(m2*m15 - m3*m14) + m13*(m2*m11 - m3*m10))) + + m8*((m1*(m6*m15 - m7*m14) - m5*(m2*m15 - m3*m14) + m13*(m2*m7 - m3*m6))) - + m12*((m1*(m6*m11 - m7*m10) - m5*(m2*m11 - m3*m10) + m9*(m2*m7 - m3*m6)))); + + return result; +} + +// Get the trace of the matrix (sum of the values along the diagonal) +RMAPI float MatrixTrace(Matrix mat) +{ + float result = (mat.m0 + mat.m5 + mat.m10 + mat.m15); + + return result; +} + +// Transposes provided matrix +RMAPI Matrix MatrixTranspose(Matrix mat) +{ + Matrix result = { 0 }; + + result.m0 = mat.m0; + result.m1 = mat.m4; + result.m2 = mat.m8; + result.m3 = mat.m12; + result.m4 = mat.m1; + result.m5 = mat.m5; + result.m6 = mat.m9; + result.m7 = mat.m13; + result.m8 = mat.m2; + result.m9 = mat.m6; + result.m10 = mat.m10; + result.m11 = mat.m14; + result.m12 = mat.m3; + result.m13 = mat.m7; + result.m14 = mat.m11; + result.m15 = mat.m15; + + return result; +} + +// Invert provided matrix +RMAPI Matrix MatrixInvert(Matrix mat) +{ + Matrix result = { 0 }; + + // Cache the matrix values (speed optimization) + float a00 = mat.m0, a01 = mat.m1, a02 = mat.m2, a03 = mat.m3; + float a10 = mat.m4, a11 = mat.m5, a12 = mat.m6, a13 = mat.m7; + float a20 = mat.m8, a21 = mat.m9, a22 = mat.m10, a23 = mat.m11; + float a30 = mat.m12, a31 = mat.m13, a32 = mat.m14, a33 = mat.m15; + + float b00 = a00*a11 - a01*a10; + float b01 = a00*a12 - a02*a10; + float b02 = a00*a13 - a03*a10; + float b03 = a01*a12 - a02*a11; + float b04 = a01*a13 - a03*a11; + float b05 = a02*a13 - a03*a12; + float b06 = a20*a31 - a21*a30; + float b07 = a20*a32 - a22*a30; + float b08 = a20*a33 - a23*a30; + float b09 = a21*a32 - a22*a31; + float b10 = a21*a33 - a23*a31; + float b11 = a22*a33 - a23*a32; + + // Calculate the invert determinant (inlined to avoid double-caching) + float invDet = 1.0f/(b00*b11 - b01*b10 + b02*b09 + b03*b08 - b04*b07 + b05*b06); + + result.m0 = (a11*b11 - a12*b10 + a13*b09)*invDet; + result.m1 = (-a01*b11 + a02*b10 - a03*b09)*invDet; + result.m2 = (a31*b05 - a32*b04 + a33*b03)*invDet; + result.m3 = (-a21*b05 + a22*b04 - a23*b03)*invDet; + result.m4 = (-a10*b11 + a12*b08 - a13*b07)*invDet; + result.m5 = (a00*b11 - a02*b08 + a03*b07)*invDet; + result.m6 = (-a30*b05 + a32*b02 - a33*b01)*invDet; + result.m7 = (a20*b05 - a22*b02 + a23*b01)*invDet; + result.m8 = (a10*b10 - a11*b08 + a13*b06)*invDet; + result.m9 = (-a00*b10 + a01*b08 - a03*b06)*invDet; + result.m10 = (a30*b04 - a31*b02 + a33*b00)*invDet; + result.m11 = (-a20*b04 + a21*b02 - a23*b00)*invDet; + result.m12 = (-a10*b09 + a11*b07 - a12*b06)*invDet; + result.m13 = (a00*b09 - a01*b07 + a02*b06)*invDet; + result.m14 = (-a30*b03 + a31*b01 - a32*b00)*invDet; + result.m15 = (a20*b03 - a21*b01 + a22*b00)*invDet; + + return result; +} + +// Get identity matrix +RMAPI Matrix MatrixIdentity(void) +{ + Matrix result = { 1.0f, 0.0f, 0.0f, 0.0f, + 0.0f, 1.0f, 0.0f, 0.0f, + 0.0f, 0.0f, 1.0f, 0.0f, + 0.0f, 0.0f, 0.0f, 1.0f }; + + return result; +} + +// Add two matrices +RMAPI Matrix MatrixAdd(Matrix left, Matrix right) +{ + Matrix result = { 0 }; + + result.m0 = left.m0 + right.m0; + result.m1 = left.m1 + right.m1; + result.m2 = left.m2 + right.m2; + result.m3 = left.m3 + right.m3; + result.m4 = left.m4 + right.m4; + result.m5 = left.m5 + right.m5; + result.m6 = left.m6 + right.m6; + result.m7 = left.m7 + right.m7; + result.m8 = left.m8 + right.m8; + result.m9 = left.m9 + right.m9; + result.m10 = left.m10 + right.m10; + result.m11 = left.m11 + right.m11; + result.m12 = left.m12 + right.m12; + result.m13 = left.m13 + right.m13; + result.m14 = left.m14 + right.m14; + result.m15 = left.m15 + right.m15; + + return result; +} + +// Subtract two matrices (left - right) +RMAPI Matrix MatrixSubtract(Matrix left, Matrix right) +{ + Matrix result = { 0 }; + + result.m0 = left.m0 - right.m0; + result.m1 = left.m1 - right.m1; + result.m2 = left.m2 - right.m2; + result.m3 = left.m3 - right.m3; + result.m4 = left.m4 - right.m4; + result.m5 = left.m5 - right.m5; + result.m6 = left.m6 - right.m6; + result.m7 = left.m7 - right.m7; + result.m8 = left.m8 - right.m8; + result.m9 = left.m9 - right.m9; + result.m10 = left.m10 - right.m10; + result.m11 = left.m11 - right.m11; + result.m12 = left.m12 - right.m12; + result.m13 = left.m13 - right.m13; + result.m14 = left.m14 - right.m14; + result.m15 = left.m15 - right.m15; + + return result; +} + +// Get two matrix multiplication +// NOTE: When multiplying matrices... the order matters! +RMAPI Matrix MatrixMultiply(Matrix left, Matrix right) +{ + Matrix result = { 0 }; + +#if defined(RAYMATH_SSE_ENABLED) + // Load left side and right side + __m128 c0 = _mm_set_ps(right.m12, right.m8, right.m4, right.m0); + __m128 c1 = _mm_set_ps(right.m13, right.m9, right.m5, right.m1); + __m128 c2 = _mm_set_ps(right.m14, right.m10, right.m6, right.m2); + __m128 c3 = _mm_set_ps(right.m15, right.m11, right.m7, right.m3); + + // Transpose so c0..c3 become *rows* of the right matrix in semantic order + _MM_TRANSPOSE4_PS(c0, c1, c2, c3); + + float tmp[4] = { 0 }; + __m128 row; + + // Row 0 of result: [m0, m1, m2, m3] + row = _mm_mul_ps(_mm_set1_ps(left.m0), c0); + row = _mm_add_ps(row, _mm_mul_ps(_mm_set1_ps(left.m1), c1)); + row = _mm_add_ps(row, _mm_mul_ps(_mm_set1_ps(left.m2), c2)); + row = _mm_add_ps(row, _mm_mul_ps(_mm_set1_ps(left.m3), c3)); + _mm_storeu_ps(tmp, row); + result.m0 = tmp[0]; + result.m1 = tmp[1]; + result.m2 = tmp[2]; + result.m3 = tmp[3]; + + // Row 1 of result: [m4, m5, m6, m7] + row = _mm_mul_ps(_mm_set1_ps(left.m4), c0); + row = _mm_add_ps(row, _mm_mul_ps(_mm_set1_ps(left.m5), c1)); + row = _mm_add_ps(row, _mm_mul_ps(_mm_set1_ps(left.m6), c2)); + row = _mm_add_ps(row, _mm_mul_ps(_mm_set1_ps(left.m7), c3)); + _mm_storeu_ps(tmp, row); + result.m4 = tmp[0]; + result.m5 = tmp[1]; + result.m6 = tmp[2]; + result.m7 = tmp[3]; + + // Row 2 of result: [m8, m9, m10, m11] + row = _mm_mul_ps(_mm_set1_ps(left.m8), c0); + row = _mm_add_ps(row, _mm_mul_ps(_mm_set1_ps(left.m9), c1)); + row = _mm_add_ps(row, _mm_mul_ps(_mm_set1_ps(left.m10), c2)); + row = _mm_add_ps(row, _mm_mul_ps(_mm_set1_ps(left.m11), c3)); + _mm_storeu_ps(tmp, row); + result.m8 = tmp[0]; + result.m9 = tmp[1]; + result.m10 = tmp[2]; + result.m11 = tmp[3]; + + // Row 3 of result: [m12, m13, m14, m15] + row = _mm_mul_ps(_mm_set1_ps(left.m12), c0); + row = _mm_add_ps(row, _mm_mul_ps(_mm_set1_ps(left.m13), c1)); + row = _mm_add_ps(row, _mm_mul_ps(_mm_set1_ps(left.m14), c2)); + row = _mm_add_ps(row, _mm_mul_ps(_mm_set1_ps(left.m15), c3)); + _mm_storeu_ps(tmp, row); + result.m12 = tmp[0]; + result.m13 = tmp[1]; + result.m14 = tmp[2]; + result.m15 = tmp[3]; +#else + result.m0 = left.m0*right.m0 + left.m1*right.m4 + left.m2*right.m8 + left.m3*right.m12; + result.m1 = left.m0*right.m1 + left.m1*right.m5 + left.m2*right.m9 + left.m3*right.m13; + result.m2 = left.m0*right.m2 + left.m1*right.m6 + left.m2*right.m10 + left.m3*right.m14; + result.m3 = left.m0*right.m3 + left.m1*right.m7 + left.m2*right.m11 + left.m3*right.m15; + result.m4 = left.m4*right.m0 + left.m5*right.m4 + left.m6*right.m8 + left.m7*right.m12; + result.m5 = left.m4*right.m1 + left.m5*right.m5 + left.m6*right.m9 + left.m7*right.m13; + result.m6 = left.m4*right.m2 + left.m5*right.m6 + left.m6*right.m10 + left.m7*right.m14; + result.m7 = left.m4*right.m3 + left.m5*right.m7 + left.m6*right.m11 + left.m7*right.m15; + result.m8 = left.m8*right.m0 + left.m9*right.m4 + left.m10*right.m8 + left.m11*right.m12; + result.m9 = left.m8*right.m1 + left.m9*right.m5 + left.m10*right.m9 + left.m11*right.m13; + result.m10 = left.m8*right.m2 + left.m9*right.m6 + left.m10*right.m10 + left.m11*right.m14; + result.m11 = left.m8*right.m3 + left.m9*right.m7 + left.m10*right.m11 + left.m11*right.m15; + result.m12 = left.m12*right.m0 + left.m13*right.m4 + left.m14*right.m8 + left.m15*right.m12; + result.m13 = left.m12*right.m1 + left.m13*right.m5 + left.m14*right.m9 + left.m15*right.m13; + result.m14 = left.m12*right.m2 + left.m13*right.m6 + left.m14*right.m10 + left.m15*right.m14; + result.m15 = left.m12*right.m3 + left.m13*right.m7 + left.m14*right.m11 + left.m15*right.m15; +#endif + + return result; +} + +RMAPI Matrix MatrixMultiplyValue(Matrix left, float value) +{ + Matrix result = { + left.m0 * value, left.m4 * value, left.m8 * value, left.m12 * value, + left.m1 * value, left.m5 * value, left.m9 * value, left.m13 * value, + left.m2 * value, left.m6 * value, left.m10 * value, left.m14 * value, + left.m3 * value, left.m7 * value, left.m11 * value, left.m15 * value + }; + + return result; +} + +// Get translation matrix +RMAPI Matrix MatrixTranslate(float x, float y, float z) +{ + Matrix result = { 1.0f, 0.0f, 0.0f, x, + 0.0f, 1.0f, 0.0f, y, + 0.0f, 0.0f, 1.0f, z, + 0.0f, 0.0f, 0.0f, 1.0f }; + + return result; +} + +// Create rotation matrix from axis and angle +// NOTE: Angle should be provided in radians +RMAPI Matrix MatrixRotate(Vector3 axis, float angle) +{ + Matrix result = { 0 }; + + float x = axis.x, y = axis.y, z = axis.z; + + float lengthSquared = x*x + y*y + z*z; + + if ((lengthSquared != 1.0f) && (lengthSquared != 0.0f)) + { + float ilength = 1.0f/sqrtf(lengthSquared); + x *= ilength; + y *= ilength; + z *= ilength; + } + + float sinres = sinf(angle); + float cosres = cosf(angle); + float t = 1.0f - cosres; + + result.m0 = x*x*t + cosres; + result.m1 = y*x*t + z*sinres; + result.m2 = z*x*t - y*sinres; + result.m3 = 0.0f; + + result.m4 = x*y*t - z*sinres; + result.m5 = y*y*t + cosres; + result.m6 = z*y*t + x*sinres; + result.m7 = 0.0f; + + result.m8 = x*z*t + y*sinres; + result.m9 = y*z*t - x*sinres; + result.m10 = z*z*t + cosres; + result.m11 = 0.0f; + + result.m12 = 0.0f; + result.m13 = 0.0f; + result.m14 = 0.0f; + result.m15 = 1.0f; + + return result; +} + +// Get x-rotation matrix +// NOTE: Angle must be provided in radians +RMAPI Matrix MatrixRotateX(float angle) +{ + Matrix result = { 1.0f, 0.0f, 0.0f, 0.0f, + 0.0f, 1.0f, 0.0f, 0.0f, + 0.0f, 0.0f, 1.0f, 0.0f, + 0.0f, 0.0f, 0.0f, 1.0f }; // MatrixIdentity() + + float cosres = cosf(angle); + float sinres = sinf(angle); + + result.m5 = cosres; + result.m6 = sinres; + result.m9 = -sinres; + result.m10 = cosres; + + return result; +} + +// Get y-rotation matrix +// NOTE: Angle must be provided in radians +RMAPI Matrix MatrixRotateY(float angle) +{ + Matrix result = { 1.0f, 0.0f, 0.0f, 0.0f, + 0.0f, 1.0f, 0.0f, 0.0f, + 0.0f, 0.0f, 1.0f, 0.0f, + 0.0f, 0.0f, 0.0f, 1.0f }; // MatrixIdentity() + + float cosres = cosf(angle); + float sinres = sinf(angle); + + result.m0 = cosres; + result.m2 = -sinres; + result.m8 = sinres; + result.m10 = cosres; + + return result; +} + +// Get z-rotation matrix +// NOTE: Angle must be provided in radians +RMAPI Matrix MatrixRotateZ(float angle) +{ + Matrix result = { 1.0f, 0.0f, 0.0f, 0.0f, + 0.0f, 1.0f, 0.0f, 0.0f, + 0.0f, 0.0f, 1.0f, 0.0f, + 0.0f, 0.0f, 0.0f, 1.0f }; // MatrixIdentity() + + float cosres = cosf(angle); + float sinres = sinf(angle); + + result.m0 = cosres; + result.m1 = sinres; + result.m4 = -sinres; + result.m5 = cosres; + + return result; +} + + +// Get xyz-rotation matrix +// NOTE: Angle must be provided in radians +RMAPI Matrix MatrixRotateXYZ(Vector3 angle) +{ + Matrix result = { 1.0f, 0.0f, 0.0f, 0.0f, + 0.0f, 1.0f, 0.0f, 0.0f, + 0.0f, 0.0f, 1.0f, 0.0f, + 0.0f, 0.0f, 0.0f, 1.0f }; // MatrixIdentity() + + float cosz = cosf(-angle.z); + float sinz = sinf(-angle.z); + float cosy = cosf(-angle.y); + float siny = sinf(-angle.y); + float cosx = cosf(-angle.x); + float sinx = sinf(-angle.x); + + result.m0 = cosz*cosy; + result.m1 = (cosz*siny*sinx) - (sinz*cosx); + result.m2 = (cosz*siny*cosx) + (sinz*sinx); + + result.m4 = sinz*cosy; + result.m5 = (sinz*siny*sinx) + (cosz*cosx); + result.m6 = (sinz*siny*cosx) - (cosz*sinx); + + result.m8 = -siny; + result.m9 = cosy*sinx; + result.m10= cosy*cosx; + + return result; +} + +// Get zyx-rotation matrix +// NOTE: Angle must be provided in radians +RMAPI Matrix MatrixRotateZYX(Vector3 angle) +{ + Matrix result = { 0 }; + + float cz = cosf(angle.z); + float sz = sinf(angle.z); + float cy = cosf(angle.y); + float sy = sinf(angle.y); + float cx = cosf(angle.x); + float sx = sinf(angle.x); + + result.m0 = cz*cy; + result.m4 = cz*sy*sx - cx*sz; + result.m8 = sz*sx + cz*cx*sy; + result.m12 = 0; + + result.m1 = cy*sz; + result.m5 = cz*cx + sz*sy*sx; + result.m9 = cx*sz*sy - cz*sx; + result.m13 = 0; + + result.m2 = -sy; + result.m6 = cy*sx; + result.m10 = cy*cx; + result.m14 = 0; + + result.m3 = 0; + result.m7 = 0; + result.m11 = 0; + result.m15 = 1; + + return result; +} + +// Get scaling matrix +RMAPI Matrix MatrixScale(float x, float y, float z) +{ + Matrix result = { x, 0.0f, 0.0f, 0.0f, + 0.0f, y, 0.0f, 0.0f, + 0.0f, 0.0f, z, 0.0f, + 0.0f, 0.0f, 0.0f, 1.0f }; + + return result; +} + +// Get perspective projection matrix +RMAPI Matrix MatrixFrustum(double left, double right, double bottom, double top, double nearPlane, double farPlane) +{ + Matrix result = { 0 }; + + float rl = (float)(right - left); + float tb = (float)(top - bottom); + float fn = (float)(farPlane - nearPlane); + + result.m0 = ((float)nearPlane*2.0f)/rl; + result.m1 = 0.0f; + result.m2 = 0.0f; + result.m3 = 0.0f; + + result.m4 = 0.0f; + result.m5 = ((float)nearPlane*2.0f)/tb; + result.m6 = 0.0f; + result.m7 = 0.0f; + + result.m8 = ((float)right + (float)left)/rl; + result.m9 = ((float)top + (float)bottom)/tb; + result.m10 = -((float)farPlane + (float)nearPlane)/fn; + result.m11 = -1.0f; + + result.m12 = 0.0f; + result.m13 = 0.0f; + result.m14 = -((float)farPlane*(float)nearPlane*2.0f)/fn; + result.m15 = 0.0f; + + return result; +} + +// Get perspective projection matrix +// NOTE: Fovy angle must be provided in radians +RMAPI Matrix MatrixPerspective(double fovY, double aspect, double nearPlane, double farPlane) +{ + Matrix result = { 0 }; + + double top = nearPlane*tan(fovY*0.5); + double bottom = -top; + double right = top*aspect; + double left = -right; + + // MatrixFrustum(-right, right, -top, top, near, far); + float rl = (float)(right - left); + float tb = (float)(top - bottom); + float fn = (float)(farPlane - nearPlane); + + result.m0 = ((float)nearPlane*2.0f)/rl; + result.m5 = ((float)nearPlane*2.0f)/tb; + result.m8 = ((float)right + (float)left)/rl; + result.m9 = ((float)top + (float)bottom)/tb; + result.m10 = -((float)farPlane + (float)nearPlane)/fn; + result.m11 = -1.0f; + result.m14 = -((float)farPlane*(float)nearPlane*2.0f)/fn; + + return result; +} + +// Get orthographic projection matrix +RMAPI Matrix MatrixOrtho(double left, double right, double bottom, double top, double nearPlane, double farPlane) +{ + Matrix result = { 0 }; + + float rl = (float)(right - left); + float tb = (float)(top - bottom); + float fn = (float)(farPlane - nearPlane); + + result.m0 = 2.0f/rl; + result.m1 = 0.0f; + result.m2 = 0.0f; + result.m3 = 0.0f; + result.m4 = 0.0f; + result.m5 = 2.0f/tb; + result.m6 = 0.0f; + result.m7 = 0.0f; + result.m8 = 0.0f; + result.m9 = 0.0f; + result.m10 = -2.0f/fn; + result.m11 = 0.0f; + result.m12 = -((float)left + (float)right)/rl; + result.m13 = -((float)top + (float)bottom)/tb; + result.m14 = -((float)farPlane + (float)nearPlane)/fn; + result.m15 = 1.0f; + + return result; +} + +// Get camera look-at matrix (view matrix) +RMAPI Matrix MatrixLookAt(Vector3 eye, Vector3 target, Vector3 up) +{ + Matrix result = { 0 }; + + float length = 0.0f; + float ilength = 0.0f; + + // Vector3Subtract(eye, target) + Vector3 vz = { eye.x - target.x, eye.y - target.y, eye.z - target.z }; + + // Vector3Normalize(vz) + Vector3 v = vz; + length = sqrtf(v.x*v.x + v.y*v.y + v.z*v.z); + if (length == 0.0f) length = 1.0f; + ilength = 1.0f/length; + vz.x *= ilength; + vz.y *= ilength; + vz.z *= ilength; + + // Vector3CrossProduct(up, vz) + Vector3 vx = { up.y*vz.z - up.z*vz.y, up.z*vz.x - up.x*vz.z, up.x*vz.y - up.y*vz.x }; + + // Vector3Normalize(x) + v = vx; + length = sqrtf(v.x*v.x + v.y*v.y + v.z*v.z); + if (length == 0.0f) length = 1.0f; + ilength = 1.0f/length; + vx.x *= ilength; + vx.y *= ilength; + vx.z *= ilength; + + // Vector3CrossProduct(vz, vx) + Vector3 vy = { vz.y*vx.z - vz.z*vx.y, vz.z*vx.x - vz.x*vx.z, vz.x*vx.y - vz.y*vx.x }; + + result.m0 = vx.x; + result.m1 = vy.x; + result.m2 = vz.x; + result.m3 = 0.0f; + result.m4 = vx.y; + result.m5 = vy.y; + result.m6 = vz.y; + result.m7 = 0.0f; + result.m8 = vx.z; + result.m9 = vy.z; + result.m10 = vz.z; + result.m11 = 0.0f; + result.m12 = -(vx.x*eye.x + vx.y*eye.y + vx.z*eye.z); // Vector3DotProduct(vx, eye) + result.m13 = -(vy.x*eye.x + vy.y*eye.y + vy.z*eye.z); // Vector3DotProduct(vy, eye) + result.m14 = -(vz.x*eye.x + vz.y*eye.y + vz.z*eye.z); // Vector3DotProduct(vz, eye) + result.m15 = 1.0f; + + return result; +} + +// Get float array of matrix data +RMAPI float16 MatrixToFloatV(Matrix mat) +{ + float16 result = { 0 }; + + result.v[0] = mat.m0; + result.v[1] = mat.m1; + result.v[2] = mat.m2; + result.v[3] = mat.m3; + result.v[4] = mat.m4; + result.v[5] = mat.m5; + result.v[6] = mat.m6; + result.v[7] = mat.m7; + result.v[8] = mat.m8; + result.v[9] = mat.m9; + result.v[10] = mat.m10; + result.v[11] = mat.m11; + result.v[12] = mat.m12; + result.v[13] = mat.m13; + result.v[14] = mat.m14; + result.v[15] = mat.m15; + + return result; +} + +//---------------------------------------------------------------------------------- +// Module Functions Definition - Quaternion math +//---------------------------------------------------------------------------------- + +// Add two quaternions +RMAPI Quaternion QuaternionAdd(Quaternion q1, Quaternion q2) +{ + Quaternion result = {q1.x + q2.x, q1.y + q2.y, q1.z + q2.z, q1.w + q2.w}; + + return result; +} + +// Add quaternion and float value +RMAPI Quaternion QuaternionAddValue(Quaternion q, float add) +{ + Quaternion result = {q.x + add, q.y + add, q.z + add, q.w + add}; + + return result; +} + +// Subtract two quaternions +RMAPI Quaternion QuaternionSubtract(Quaternion q1, Quaternion q2) +{ + Quaternion result = {q1.x - q2.x, q1.y - q2.y, q1.z - q2.z, q1.w - q2.w}; + + return result; +} + +// Subtract quaternion and float value +RMAPI Quaternion QuaternionSubtractValue(Quaternion q, float sub) +{ + Quaternion result = {q.x - sub, q.y - sub, q.z - sub, q.w - sub}; + + return result; +} + +// Get identity quaternion +RMAPI Quaternion QuaternionIdentity(void) +{ + Quaternion result = { 0.0f, 0.0f, 0.0f, 1.0f }; + + return result; +} + +// Computes the length of a quaternion +RMAPI float QuaternionLength(Quaternion q) +{ + float result = sqrtf(q.x*q.x + q.y*q.y + q.z*q.z + q.w*q.w); + + return result; +} + +// Normalize provided quaternion +RMAPI Quaternion QuaternionNormalize(Quaternion q) +{ + Quaternion result = { 0 }; + + float length = sqrtf(q.x*q.x + q.y*q.y + q.z*q.z + q.w*q.w); + if (length == 0.0f) length = 1.0f; + float ilength = 1.0f/length; + + result.x = q.x*ilength; + result.y = q.y*ilength; + result.z = q.z*ilength; + result.w = q.w*ilength; + + return result; +} + +// Invert provided quaternion +RMAPI Quaternion QuaternionInvert(Quaternion q) +{ + Quaternion result = q; + + float lengthSq = q.x*q.x + q.y*q.y + q.z*q.z + q.w*q.w; + + if (lengthSq != 0.0f) + { + float invLength = 1.0f/lengthSq; + + result.x *= -invLength; + result.y *= -invLength; + result.z *= -invLength; + result.w *= invLength; + } + + return result; +} + +// Calculate two quaternion multiplication +RMAPI Quaternion QuaternionMultiply(Quaternion q1, Quaternion q2) +{ + Quaternion result = { 0 }; + + float qax = q1.x, qay = q1.y, qaz = q1.z, qaw = q1.w; + float qbx = q2.x, qby = q2.y, qbz = q2.z, qbw = q2.w; + + result.x = qax*qbw + qaw*qbx + qay*qbz - qaz*qby; + result.y = qay*qbw + qaw*qby + qaz*qbx - qax*qbz; + result.z = qaz*qbw + qaw*qbz + qax*qby - qay*qbx; + result.w = qaw*qbw - qax*qbx - qay*qby - qaz*qbz; + + return result; +} + +// Scale quaternion by float value +RMAPI Quaternion QuaternionScale(Quaternion q, float mul) +{ + Quaternion result = { 0 }; + + result.x = q.x*mul; + result.y = q.y*mul; + result.z = q.z*mul; + result.w = q.w*mul; + + return result; +} + +// Divide two quaternions +RMAPI Quaternion QuaternionDivide(Quaternion q1, Quaternion q2) +{ + Quaternion result = { q1.x/q2.x, q1.y/q2.y, q1.z/q2.z, q1.w/q2.w }; + + return result; +} + +// Calculate linear interpolation between two quaternions +RMAPI Quaternion QuaternionLerp(Quaternion q1, Quaternion q2, float amount) +{ + Quaternion result = { 0 }; + + result.x = q1.x + amount*(q2.x - q1.x); + result.y = q1.y + amount*(q2.y - q1.y); + result.z = q1.z + amount*(q2.z - q1.z); + result.w = q1.w + amount*(q2.w - q1.w); + + return result; +} + +// Calculate slerp-optimized interpolation between two quaternions +RMAPI Quaternion QuaternionNlerp(Quaternion q1, Quaternion q2, float amount) +{ + Quaternion result = { 0 }; + + // QuaternionLerp(q1, q2, amount) + result.x = q1.x + amount*(q2.x - q1.x); + result.y = q1.y + amount*(q2.y - q1.y); + result.z = q1.z + amount*(q2.z - q1.z); + result.w = q1.w + amount*(q2.w - q1.w); + + // QuaternionNormalize(q); + Quaternion q = result; + float length = sqrtf(q.x*q.x + q.y*q.y + q.z*q.z + q.w*q.w); + if (length == 0.0f) length = 1.0f; + float ilength = 1.0f/length; + + result.x = q.x*ilength; + result.y = q.y*ilength; + result.z = q.z*ilength; + result.w = q.w*ilength; + + return result; +} + +// Calculates spherical linear interpolation between two quaternions +RMAPI Quaternion QuaternionSlerp(Quaternion q1, Quaternion q2, float amount) +{ + Quaternion result = { 0 }; + +#if !defined(EPSILON) + #define EPSILON 0.000001f +#endif + + float cosHalfTheta = q1.x*q2.x + q1.y*q2.y + q1.z*q2.z + q1.w*q2.w; + + if (cosHalfTheta < 0) + { + q2.x = -q2.x; q2.y = -q2.y; q2.z = -q2.z; q2.w = -q2.w; + cosHalfTheta = -cosHalfTheta; + } + + if (fabsf(cosHalfTheta) >= 1.0f) result = q1; + else if (cosHalfTheta > 0.95f) result = QuaternionNlerp(q1, q2, amount); + else + { + float halfTheta = acosf(cosHalfTheta); + float sinHalfTheta = sqrtf(1.0f - cosHalfTheta*cosHalfTheta); + + if (fabsf(sinHalfTheta) < EPSILON) + { + result.x = (q1.x*0.5f + q2.x*0.5f); + result.y = (q1.y*0.5f + q2.y*0.5f); + result.z = (q1.z*0.5f + q2.z*0.5f); + result.w = (q1.w*0.5f + q2.w*0.5f); + } + else + { + float ratioA = sinf((1 - amount)*halfTheta)/sinHalfTheta; + float ratioB = sinf(amount*halfTheta)/sinHalfTheta; + + result.x = (q1.x*ratioA + q2.x*ratioB); + result.y = (q1.y*ratioA + q2.y*ratioB); + result.z = (q1.z*ratioA + q2.z*ratioB); + result.w = (q1.w*ratioA + q2.w*ratioB); + } + } + + return result; +} + +// Calculate quaternion cubic spline interpolation using Cubic Hermite Spline algorithm +// as described in the GLTF 2.0 specification: https://registry.khronos.org/glTF/specs/2.0/glTF-2.0.html#interpolation-cubic +RMAPI Quaternion QuaternionCubicHermiteSpline(Quaternion q1, Quaternion outTangent1, Quaternion q2, Quaternion inTangent2, float t) +{ + float t2 = t*t; + float t3 = t2*t; + float h00 = 2*t3 - 3*t2 + 1; + float h10 = t3 - 2*t2 + t; + float h01 = -2*t3 + 3*t2; + float h11 = t3 - t2; + + Quaternion p0 = QuaternionScale(q1, h00); + Quaternion m0 = QuaternionScale(outTangent1, h10); + Quaternion p1 = QuaternionScale(q2, h01); + Quaternion m1 = QuaternionScale(inTangent2, h11); + + Quaternion result = { 0 }; + + result = QuaternionAdd(p0, m0); + result = QuaternionAdd(result, p1); + result = QuaternionAdd(result, m1); + result = QuaternionNormalize(result); + + return result; +} + +// Calculate quaternion based on the rotation from one vector to another +RMAPI Quaternion QuaternionFromVector3ToVector3(Vector3 from, Vector3 to) +{ + Quaternion result = { 0 }; + + float cos2Theta = (from.x*to.x + from.y*to.y + from.z*to.z); // Vector3DotProduct(from, to) + Vector3 cross = { from.y*to.z - from.z*to.y, from.z*to.x - from.x*to.z, from.x*to.y - from.y*to.x }; // Vector3CrossProduct(from, to) + + result.x = cross.x; + result.y = cross.y; + result.z = cross.z; + result.w = sqrtf(cross.x*cross.x + cross.y*cross.y + cross.z*cross.z + cos2Theta*cos2Theta) + cos2Theta; + + // QuaternionNormalize(q); + // NOTE: Normalize to essentially nlerp the original and identity to 0.5 + Quaternion q = result; + float length = sqrtf(q.x*q.x + q.y*q.y + q.z*q.z + q.w*q.w); + if (length == 0.0f) length = 1.0f; + float ilength = 1.0f/length; + + result.x = q.x*ilength; + result.y = q.y*ilength; + result.z = q.z*ilength; + result.w = q.w*ilength; + + return result; +} + +// Get a quaternion for a given rotation matrix +RMAPI Quaternion QuaternionFromMatrix(Matrix mat) +{ + Quaternion result = { 0 }; + + float fourWSquaredMinus1 = mat.m0 + mat.m5 + mat.m10; + float fourXSquaredMinus1 = mat.m0 - mat.m5 - mat.m10; + float fourYSquaredMinus1 = mat.m5 - mat.m0 - mat.m10; + float fourZSquaredMinus1 = mat.m10 - mat.m0 - mat.m5; + + int biggestIndex = 0; + float fourBiggestSquaredMinus1 = fourWSquaredMinus1; + if (fourXSquaredMinus1 > fourBiggestSquaredMinus1) + { + fourBiggestSquaredMinus1 = fourXSquaredMinus1; + biggestIndex = 1; + } + + if (fourYSquaredMinus1 > fourBiggestSquaredMinus1) + { + fourBiggestSquaredMinus1 = fourYSquaredMinus1; + biggestIndex = 2; + } + + if (fourZSquaredMinus1 > fourBiggestSquaredMinus1) + { + fourBiggestSquaredMinus1 = fourZSquaredMinus1; + biggestIndex = 3; + } + + float biggestVal = sqrtf(fourBiggestSquaredMinus1 + 1.0f)*0.5f; + float mult = 0.25f/biggestVal; + + switch (biggestIndex) + { + case 0: + result.w = biggestVal; + result.x = (mat.m6 - mat.m9)*mult; + result.y = (mat.m8 - mat.m2)*mult; + result.z = (mat.m1 - mat.m4)*mult; + break; + case 1: + result.x = biggestVal; + result.w = (mat.m6 - mat.m9)*mult; + result.y = (mat.m1 + mat.m4)*mult; + result.z = (mat.m8 + mat.m2)*mult; + break; + case 2: + result.y = biggestVal; + result.w = (mat.m8 - mat.m2)*mult; + result.x = (mat.m1 + mat.m4)*mult; + result.z = (mat.m6 + mat.m9)*mult; + break; + case 3: + result.z = biggestVal; + result.w = (mat.m1 - mat.m4)*mult; + result.x = (mat.m8 + mat.m2)*mult; + result.y = (mat.m6 + mat.m9)*mult; + break; + } + + return result; +} + +// Get a matrix for a given quaternion +RMAPI Matrix QuaternionToMatrix(Quaternion q) +{ + Matrix result = { 1.0f, 0.0f, 0.0f, 0.0f, + 0.0f, 1.0f, 0.0f, 0.0f, + 0.0f, 0.0f, 1.0f, 0.0f, + 0.0f, 0.0f, 0.0f, 1.0f }; // MatrixIdentity() + + float a2 = q.x*q.x; + float b2 = q.y*q.y; + float c2 = q.z*q.z; + float ac = q.x*q.z; + float ab = q.x*q.y; + float bc = q.y*q.z; + float ad = q.w*q.x; + float bd = q.w*q.y; + float cd = q.w*q.z; + + result.m0 = 1 - 2*(b2 + c2); + result.m1 = 2*(ab + cd); + result.m2 = 2*(ac - bd); + + result.m4 = 2*(ab - cd); + result.m5 = 1 - 2*(a2 + c2); + result.m6 = 2*(bc + ad); + + result.m8 = 2*(ac + bd); + result.m9 = 2*(bc - ad); + result.m10 = 1 - 2*(a2 + b2); + + return result; +} + +// Get rotation quaternion for an angle and axis +// NOTE: Angle must be provided in radians +RMAPI Quaternion QuaternionFromAxisAngle(Vector3 axis, float angle) +{ + Quaternion result = { 0.0f, 0.0f, 0.0f, 1.0f }; + + float axisLength = sqrtf(axis.x*axis.x + axis.y*axis.y + axis.z*axis.z); + + if (axisLength != 0.0f) + { + angle *= 0.5f; + + float length = 0.0f; + float ilength = 0.0f; + + // Vector3Normalize(axis) + length = axisLength; + if (length == 0.0f) length = 1.0f; + ilength = 1.0f/length; + axis.x *= ilength; + axis.y *= ilength; + axis.z *= ilength; + + float sinres = sinf(angle); + float cosres = cosf(angle); + + result.x = axis.x*sinres; + result.y = axis.y*sinres; + result.z = axis.z*sinres; + result.w = cosres; + + // QuaternionNormalize(q); + Quaternion q = result; + length = sqrtf(q.x*q.x + q.y*q.y + q.z*q.z + q.w*q.w); + if (length == 0.0f) length = 1.0f; + ilength = 1.0f/length; + result.x = q.x*ilength; + result.y = q.y*ilength; + result.z = q.z*ilength; + result.w = q.w*ilength; + } + + return result; +} + +// Get the rotation angle and axis for a given quaternion +RMAPI void QuaternionToAxisAngle(Quaternion q, Vector3 *outAxis, float *outAngle) +{ + if (fabsf(q.w) > 1.0f) + { + // QuaternionNormalize(q); + float length = sqrtf(q.x*q.x + q.y*q.y + q.z*q.z + q.w*q.w); + if (length == 0.0f) length = 1.0f; + float ilength = 1.0f/length; + + q.x = q.x*ilength; + q.y = q.y*ilength; + q.z = q.z*ilength; + q.w = q.w*ilength; + } + + Vector3 resAxis = { 0.0f, 0.0f, 0.0f }; + float resAngle = 2.0f*acosf(q.w); + float den = sqrtf(1.0f - q.w*q.w); + + if (den > EPSILON) + { + resAxis.x = q.x/den; + resAxis.y = q.y/den; + resAxis.z = q.z/den; + } + else + { + // This occurs when the angle is zero + // Not a problem, set an arbitrary normalized axis + resAxis.x = 1.0f; + } + + *outAxis = resAxis; + *outAngle = resAngle; +} + +// Get the quaternion equivalent to Euler angles +// NOTE: Rotation order is ZYX +RMAPI Quaternion QuaternionFromEuler(float pitch, float yaw, float roll) +{ + Quaternion result = { 0 }; + + float x0 = cosf(pitch*0.5f); + float x1 = sinf(pitch*0.5f); + float y0 = cosf(yaw*0.5f); + float y1 = sinf(yaw*0.5f); + float z0 = cosf(roll*0.5f); + float z1 = sinf(roll*0.5f); + + result.x = x1*y0*z0 - x0*y1*z1; + result.y = x0*y1*z0 + x1*y0*z1; + result.z = x0*y0*z1 - x1*y1*z0; + result.w = x0*y0*z0 + x1*y1*z1; + + return result; +} + +// Get the Euler angles equivalent to quaternion (roll, pitch, yaw) +// NOTE: Angles are returned in a Vector3 struct in radians +RMAPI Vector3 QuaternionToEuler(Quaternion q) +{ + Vector3 result = { 0 }; + + // Roll (x-axis rotation) + float x0 = 2.0f*(q.w*q.x + q.y*q.z); + float x1 = 1.0f - 2.0f*(q.x*q.x + q.y*q.y); + result.x = atan2f(x0, x1); + + // Pitch (y-axis rotation) + float y0 = 2.0f*(q.w*q.y - q.z*q.x); + y0 = y0 > 1.0f ? 1.0f : y0; + y0 = y0 < -1.0f ? -1.0f : y0; + result.y = asinf(y0); + + // Yaw (z-axis rotation) + float z0 = 2.0f*(q.w*q.z + q.x*q.y); + float z1 = 1.0f - 2.0f*(q.y*q.y + q.z*q.z); + result.z = atan2f(z0, z1); + + return result; +} + +// Transform a quaternion given a transformation matrix +RMAPI Quaternion QuaternionTransform(Quaternion q, Matrix mat) +{ + Quaternion result = { 0 }; + + result.x = mat.m0*q.x + mat.m4*q.y + mat.m8*q.z + mat.m12*q.w; + result.y = mat.m1*q.x + mat.m5*q.y + mat.m9*q.z + mat.m13*q.w; + result.z = mat.m2*q.x + mat.m6*q.y + mat.m10*q.z + mat.m14*q.w; + result.w = mat.m3*q.x + mat.m7*q.y + mat.m11*q.z + mat.m15*q.w; + + return result; +} + +// Check whether two given quaternions are almost equal +RMAPI int QuaternionEquals(Quaternion p, Quaternion q) +{ +#if !defined(EPSILON) + #define EPSILON 0.000001f +#endif + + int result = (((fabsf(p.x - q.x)) <= (EPSILON*fmaxf(1.0f, fmaxf(fabsf(p.x), fabsf(q.x))))) && + ((fabsf(p.y - q.y)) <= (EPSILON*fmaxf(1.0f, fmaxf(fabsf(p.y), fabsf(q.y))))) && + ((fabsf(p.z - q.z)) <= (EPSILON*fmaxf(1.0f, fmaxf(fabsf(p.z), fabsf(q.z))))) && + ((fabsf(p.w - q.w)) <= (EPSILON*fmaxf(1.0f, fmaxf(fabsf(p.w), fabsf(q.w)))))) || + (((fabsf(p.x + q.x)) <= (EPSILON*fmaxf(1.0f, fmaxf(fabsf(p.x), fabsf(q.x))))) && + ((fabsf(p.y + q.y)) <= (EPSILON*fmaxf(1.0f, fmaxf(fabsf(p.y), fabsf(q.y))))) && + ((fabsf(p.z + q.z)) <= (EPSILON*fmaxf(1.0f, fmaxf(fabsf(p.z), fabsf(q.z))))) && + ((fabsf(p.w + q.w)) <= (EPSILON*fmaxf(1.0f, fmaxf(fabsf(p.w), fabsf(q.w)))))); + + return result; +} + +// Compose a transformation matrix from rotational, translational and scaling components +// TODO: This function is not following raymath conventions defined in header: NOT self-contained +RMAPI Matrix MatrixCompose(Vector3 translation, Quaternion rotation, Vector3 scale) +{ + // Initialize vectors + Vector3 right = { 1.0f, 0.0f, 0.0f }; + Vector3 up = { 0.0f, 1.0f, 0.0f }; + Vector3 forward = { 0.0f, 0.0f, 1.0f }; + + // Scale vectors + right = Vector3Scale(right, scale.x); + up = Vector3Scale(up, scale.y); + forward = Vector3Scale(forward , scale.z); + + // Rotate vectors + right = Vector3RotateByQuaternion(right, rotation); + up = Vector3RotateByQuaternion(up, rotation); + forward = Vector3RotateByQuaternion(forward, rotation); + + // Set result matrix output + Matrix result = { + right.x, up.x, forward.x, translation.x, + right.y, up.y, forward.y, translation.y, + right.z, up.z, forward.z, translation.z, + 0.0f, 0.0f, 0.0f, 1.0f + }; + + return result; +} + +// Decompose a transformation matrix into its rotational, translational and scaling components and remove shear +// TODO: This function is not following raymath conventions defined in header: NOT self-contained +RMAPI void MatrixDecompose(Matrix mat, Vector3 *translation, Quaternion *rotation, Vector3 *scale) +{ + float eps = (float)1e-9; + + // Extract Translation + translation->x = mat.m12; + translation->y = mat.m13; + translation->z = mat.m14; + + // Matrix Columns - Rotation will be extracted into here + Vector3 matColumns[3] = {{ mat.m0, mat.m4, mat.m8 }, + { mat.m1, mat.m5, mat.m9 }, + { mat.m2, mat.m6, mat.m10 }}; + + // Shear Parameters XY, XZ, and YZ (extract and ignored) + float shear[3] = { 0 }; + + // Normalized Scale Parameters + Vector3 scl = { 0 }; + + // Max-Normalizing helps numerical stability + float stabilizer = eps; + for (int i = 0; i < 3; i++) + { + stabilizer = fmaxf(stabilizer, fabsf(matColumns[i].x)); + stabilizer = fmaxf(stabilizer, fabsf(matColumns[i].y)); + stabilizer = fmaxf(stabilizer, fabsf(matColumns[i].z)); + } + matColumns[0] = Vector3Scale(matColumns[0], 1.0f / stabilizer); + matColumns[1] = Vector3Scale(matColumns[1], 1.0f / stabilizer); + matColumns[2] = Vector3Scale(matColumns[2], 1.0f / stabilizer); + + // X Scale + scl.x = Vector3Length(matColumns[0]); + if (scl.x > eps) matColumns[0] = Vector3Scale(matColumns[0], 1.0f / scl.x); + + // Compute XY shear and make col2 orthogonal + shear[0] = Vector3DotProduct(matColumns[0], matColumns[1]); + matColumns[1] = Vector3Subtract(matColumns[1], Vector3Scale(matColumns[0], shear[0])); + + // Y Scale + scl.y = Vector3Length(matColumns[1]); + if (scl.y > eps) + { + matColumns[1] = Vector3Scale(matColumns[1], 1.0f / scl.y); + shear[0] /= scl.y; // Correct XY shear + } + + // Compute XZ and YZ shears and make col3 orthogonal + shear[1] = Vector3DotProduct(matColumns[0], matColumns[2]); + matColumns[2] = Vector3Subtract(matColumns[2], Vector3Scale(matColumns[0], shear[1])); + shear[2] = Vector3DotProduct(matColumns[1], matColumns[2]); + matColumns[2] = Vector3Subtract(matColumns[2], Vector3Scale(matColumns[1], shear[2])); + + // Z Scale + scl.z = Vector3Length(matColumns[2]); + if (scl.z > eps) + { + matColumns[2] = Vector3Scale(matColumns[2], 1.0f / scl.z); + shear[1] /= scl.z; // Correct XZ shear + shear[2] /= scl.z; // Correct YZ shear + } + + // matColumns are now orthonormal in O(3). Now ensure its in SO(3) by enforcing det = 1 + if (Vector3DotProduct(matColumns[0], Vector3CrossProduct(matColumns[1], matColumns[2])) < 0) + { + scl = Vector3Negate(scl); + matColumns[0] = Vector3Negate(matColumns[0]); + matColumns[1] = Vector3Negate(matColumns[1]); + matColumns[2] = Vector3Negate(matColumns[2]); + } + + // Set Scale + *scale = Vector3Scale(scl, stabilizer); + + // Extract Rotation + Matrix rotationMatrix = { matColumns[0].x, matColumns[0].y, matColumns[0].z, 0, + matColumns[1].x, matColumns[1].y, matColumns[1].z, 0, + matColumns[2].x, matColumns[2].y, matColumns[2].z, 0, + 0, 0, 0, 1 }; + *rotation = QuaternionFromMatrix(rotationMatrix); +} + +#if defined(__cplusplus) && !defined(RAYMATH_DISABLE_CPP_OPERATORS) + +// Optional C++ math operators +//------------------------------------------------------------------------------- + +// Vector2 operators +static constexpr Vector2 Vector2Zeros = { 0, 0 }; +static constexpr Vector2 Vector2Ones = { 1, 1 }; +static constexpr Vector2 Vector2UnitX = { 1, 0 }; +static constexpr Vector2 Vector2UnitY = { 0, 1 }; + +inline Vector2 operator + (const Vector2& lhs, const Vector2& rhs) +{ + return Vector2Add(lhs, rhs); +} + +inline const Vector2& operator += (Vector2& lhs, const Vector2& rhs) +{ + lhs = Vector2Add(lhs, rhs); + return lhs; +} + +inline Vector2 operator - (const Vector2& lhs, const Vector2& rhs) +{ + return Vector2Subtract(lhs, rhs); +} + +inline const Vector2& operator -= (Vector2& lhs, const Vector2& rhs) +{ + lhs = Vector2Subtract(lhs, rhs); + return lhs; +} + +inline Vector2 operator * (const Vector2& lhs, const float& rhs) +{ + return Vector2Scale(lhs, rhs); +} + +inline const Vector2& operator *= (Vector2& lhs, const float& rhs) +{ + lhs = Vector2Scale(lhs, rhs); + return lhs; +} + +inline Vector2 operator * (const Vector2& lhs, const Vector2& rhs) +{ + return Vector2Multiply(lhs, rhs); +} + +inline const Vector2& operator *= (Vector2& lhs, const Vector2& rhs) +{ + lhs = Vector2Multiply(lhs, rhs); + return lhs; +} + +inline Vector2 operator * (const Vector2& lhs, const Matrix& rhs) +{ + return Vector2Transform(lhs, rhs); +} + +inline const Vector2& operator *= (Vector2& lhs, const Matrix& rhs) +{ + lhs = Vector2Transform(lhs, rhs); + return lhs; +} + +inline Vector2 operator / (const Vector2& lhs, const float& rhs) +{ + return Vector2Scale(lhs, 1.0f/rhs); +} + +inline const Vector2& operator /= (Vector2& lhs, const float& rhs) +{ + lhs = Vector2Scale(lhs, 1.0f/rhs); + return lhs; +} + +inline Vector2 operator / (const Vector2& lhs, const Vector2& rhs) +{ + return Vector2Divide(lhs, rhs); +} + +inline const Vector2& operator /= (Vector2& lhs, const Vector2& rhs) +{ + lhs = Vector2Divide(lhs, rhs); + return lhs; +} + +inline bool operator == (const Vector2& lhs, const Vector2& rhs) +{ + return FloatEquals(lhs.x, rhs.x) && FloatEquals(lhs.y, rhs.y); +} + +inline bool operator != (const Vector2& lhs, const Vector2& rhs) +{ + return !FloatEquals(lhs.x, rhs.x) || !FloatEquals(lhs.y, rhs.y); +} + +// Vector3 operators +static constexpr Vector3 Vector3Zeros = { 0, 0, 0 }; +static constexpr Vector3 Vector3Ones = { 1, 1, 1 }; +static constexpr Vector3 Vector3UnitX = { 1, 0, 0 }; +static constexpr Vector3 Vector3UnitY = { 0, 1, 0 }; +static constexpr Vector3 Vector3UnitZ = { 0, 0, 1 }; + +inline Vector3 operator + (const Vector3& lhs, const Vector3& rhs) +{ + return Vector3Add(lhs, rhs); +} + +inline const Vector3& operator += (Vector3& lhs, const Vector3& rhs) +{ + lhs = Vector3Add(lhs, rhs); + return lhs; +} + +inline Vector3 operator - (const Vector3& lhs, const Vector3& rhs) +{ + return Vector3Subtract(lhs, rhs); +} + +inline const Vector3& operator -= (Vector3& lhs, const Vector3& rhs) +{ + lhs = Vector3Subtract(lhs, rhs); + return lhs; +} + +inline Vector3 operator * (const Vector3& lhs, const float& rhs) +{ + return Vector3Scale(lhs, rhs); +} + +inline const Vector3& operator *= (Vector3& lhs, const float& rhs) +{ + lhs = Vector3Scale(lhs, rhs); + return lhs; +} + +inline Vector3 operator * (const Vector3& lhs, const Vector3& rhs) +{ + return Vector3Multiply(lhs, rhs); +} + +inline const Vector3& operator *= (Vector3& lhs, const Vector3& rhs) +{ + lhs = Vector3Multiply(lhs, rhs); + return lhs; +} + +inline Vector3 operator * (const Vector3& lhs, const Matrix& rhs) +{ + return Vector3Transform(lhs, rhs); +} + +inline const Vector3& operator *= (Vector3& lhs, const Matrix& rhs) +{ + lhs = Vector3Transform(lhs, rhs); + return lhs; +} + +inline Vector3 operator / (const Vector3& lhs, const float& rhs) +{ + return Vector3Scale(lhs, 1.0f/rhs); +} + +inline const Vector3& operator /= (Vector3& lhs, const float& rhs) +{ + lhs = Vector3Scale(lhs, 1.0f/rhs); + return lhs; +} + +inline Vector3 operator / (const Vector3& lhs, const Vector3& rhs) +{ + return Vector3Divide(lhs, rhs); +} + +inline const Vector3& operator /= (Vector3& lhs, const Vector3& rhs) +{ + lhs = Vector3Divide(lhs, rhs); + return lhs; +} + +inline bool operator == (const Vector3& lhs, const Vector3& rhs) +{ + return FloatEquals(lhs.x, rhs.x) && FloatEquals(lhs.y, rhs.y) && FloatEquals(lhs.z, rhs.z); +} + +inline bool operator != (const Vector3& lhs, const Vector3& rhs) +{ + return !FloatEquals(lhs.x, rhs.x) || !FloatEquals(lhs.y, rhs.y) || !FloatEquals(lhs.z, rhs.z); +} + +// Vector4 operators +static constexpr Vector4 Vector4Zeros = { 0, 0, 0, 0 }; +static constexpr Vector4 Vector4Ones = { 1, 1, 1, 1 }; +static constexpr Vector4 Vector4UnitX = { 1, 0, 0, 0 }; +static constexpr Vector4 Vector4UnitY = { 0, 1, 0, 0 }; +static constexpr Vector4 Vector4UnitZ = { 0, 0, 1, 0 }; +static constexpr Vector4 Vector4UnitW = { 0, 0, 0, 1 }; + +inline Vector4 operator + (const Vector4& lhs, const Vector4& rhs) +{ + return Vector4Add(lhs, rhs); +} + +inline const Vector4& operator += (Vector4& lhs, const Vector4& rhs) +{ + lhs = Vector4Add(lhs, rhs); + return lhs; +} + +inline Vector4 operator - (const Vector4& lhs, const Vector4& rhs) +{ + return Vector4Subtract(lhs, rhs); +} + +inline const Vector4& operator -= (Vector4& lhs, const Vector4& rhs) +{ + lhs = Vector4Subtract(lhs, rhs); + return lhs; +} + +inline Vector4 operator * (const Vector4& lhs, const float& rhs) +{ + return Vector4Scale(lhs, rhs); +} + +inline const Vector4& operator *= (Vector4& lhs, const float& rhs) +{ + lhs = Vector4Scale(lhs, rhs); + return lhs; +} + +inline Vector4 operator * (const Vector4& lhs, const Vector4& rhs) +{ + return Vector4Multiply(lhs, rhs); +} + +inline const Vector4& operator *= (Vector4& lhs, const Vector4& rhs) +{ + lhs = Vector4Multiply(lhs, rhs); + return lhs; +} + +inline Vector4 operator / (const Vector4& lhs, const float& rhs) +{ + return Vector4Scale(lhs, 1.0f/rhs); +} + +inline const Vector4& operator /= (Vector4& lhs, const float& rhs) +{ + lhs = Vector4Scale(lhs, 1.0f/rhs); + return lhs; +} + +inline Vector4 operator / (const Vector4& lhs, const Vector4& rhs) +{ + return Vector4Divide(lhs, rhs); +} + +inline const Vector4& operator /= (Vector4& lhs, const Vector4& rhs) +{ + lhs = Vector4Divide(lhs, rhs); + return lhs; +} + +inline bool operator == (const Vector4& lhs, const Vector4& rhs) +{ + return FloatEquals(lhs.x, rhs.x) && FloatEquals(lhs.y, rhs.y) && FloatEquals(lhs.z, rhs.z) && FloatEquals(lhs.w, rhs.w); +} + +inline bool operator != (const Vector4& lhs, const Vector4& rhs) +{ + return !FloatEquals(lhs.x, rhs.x) || !FloatEquals(lhs.y, rhs.y) || !FloatEquals(lhs.z, rhs.z) || !FloatEquals(lhs.w, rhs.w); +} + +// Quaternion operators +static constexpr Quaternion QuaternionZeros = { 0, 0, 0, 0 }; +static constexpr Quaternion QuaternionOnes = { 1, 1, 1, 1 }; +static constexpr Quaternion QuaternionUnitX = { 0, 0, 0, 1 }; + +inline Quaternion operator + (const Quaternion& lhs, const float& rhs) +{ + return QuaternionAddValue(lhs, rhs); +} + +inline const Quaternion& operator += (Quaternion& lhs, const float& rhs) +{ + lhs = QuaternionAddValue(lhs, rhs); + return lhs; +} + +inline Quaternion operator - (const Quaternion& lhs, const float& rhs) +{ + return QuaternionSubtractValue(lhs, rhs); +} + +inline const Quaternion& operator -= (Quaternion& lhs, const float& rhs) +{ + lhs = QuaternionSubtractValue(lhs, rhs); + return lhs; +} + +inline Quaternion operator * (const Quaternion& lhs, const Matrix& rhs) +{ + return QuaternionTransform(lhs, rhs); +} + +inline const Quaternion& operator *= (Quaternion& lhs, const Matrix& rhs) +{ + lhs = QuaternionTransform(lhs, rhs); + return lhs; +} + +// Matrix operators +static constexpr Matrix MatrixUnit = { 1, 0, 0, 0, + 0, 1, 0, 0, + 0, 0, 1, 0, + 0, 0, 0, 1 }; + +inline Matrix operator + (const Matrix& lhs, const Matrix& rhs) +{ + return MatrixAdd(lhs, rhs); +} + +inline const Matrix& operator += (Matrix& lhs, const Matrix& rhs) +{ + lhs = MatrixAdd(lhs, rhs); + return lhs; +} + +inline Matrix operator - (const Matrix& lhs, const Matrix& rhs) +{ + return MatrixSubtract(lhs, rhs); +} + +inline const Matrix& operator -= (Matrix& lhs, const Matrix& rhs) +{ + lhs = MatrixSubtract(lhs, rhs); + return lhs; +} + +inline Matrix operator * (const Matrix& lhs, const Matrix& rhs) +{ + return MatrixMultiply(lhs, rhs); +} + +inline const Matrix& operator *= (Matrix& lhs, const Matrix& rhs) +{ + lhs = MatrixMultiply(lhs, rhs); + return lhs; +} + +inline Matrix operator * (const Matrix& lhs, const float value) +{ + return MatrixMultiplyValue(lhs, value); +} + +inline const Matrix& operator *= (Matrix& lhs, const float value) +{ + lhs = MatrixMultiplyValue(lhs, value); + return lhs; +} + +//------------------------------------------------------------------------------- +#endif // C++ operators + +#endif // RAYMATH_H diff --git a/include/windows/rcamera.h b/include/windows/rcamera.h new file mode 100644 index 0000000..14616a7 --- /dev/null +++ b/include/windows/rcamera.h @@ -0,0 +1,562 @@ +/******************************************************************************************* +* +* rcamera - Basic camera system with support for multiple camera modes +* +* CONFIGURATION: +* #define RCAMERA_IMPLEMENTATION +* Generates the implementation of the library into the included file. +* If not defined, the library is in header only mode and can be included in other headers +* or source files without problems. But only ONE file should hold the implementation. +* +* #define RCAMERA_STANDALONE +* If defined, the library can be used as standalone as a camera system but some +* functions must be redefined to manage inputs accordingly. +* +* CONTRIBUTORS: +* Ramon Santamaria: Supervision, review, update and maintenance +* Christoph Wagner: Complete redesign, using raymath (2022) +* Marc Palau: Initial implementation (2014) +* +* +* LICENSE: zlib/libpng +* +* Copyright (c) 2022-2026 Christoph Wagner (@Crydsch) and 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. +* +**********************************************************************************************/ + +#ifndef RCAMERA_H +#define RCAMERA_H + +//---------------------------------------------------------------------------------- +// Defines and Macros +//---------------------------------------------------------------------------------- +// Function specifiers definition + +// Function specifiers in case library is build/used as a shared library (Windows) +// NOTE: Microsoft specifiers to tell compiler that symbols are imported/exported from a .dll +#if defined(_WIN32) + #if defined(BUILD_LIBTYPE_SHARED) + #if defined(__TINYC__) + #define __declspec(x) __attribute__((x)) + #endif + #define RLAPI __declspec(dllexport) // Building the library as a Win32 shared library (.dll) + #elif defined(USE_LIBTYPE_SHARED) + #define RLAPI __declspec(dllimport) // Using the library as a Win32 shared library (.dll) + #endif +#endif + +#ifndef RLAPI + #define RLAPI // Functions defined as 'extern' by default (implicit specifiers) +#endif + +#if defined(RCAMERA_STANDALONE) + #define CAMERA_CULL_DISTANCE_NEAR 0.05 + #define CAMERA_CULL_DISTANCE_FAR 4000.0 +#else + #define CAMERA_CULL_DISTANCE_NEAR RL_CULL_DISTANCE_NEAR + #define CAMERA_CULL_DISTANCE_FAR RL_CULL_DISTANCE_FAR +#endif + +//---------------------------------------------------------------------------------- +// Types and Structures Definition +// NOTE: Below types are required for standalone usage +//---------------------------------------------------------------------------------- +#if defined(RCAMERA_STANDALONE) + // Vector2, 2 components + typedef struct Vector2 { + float x; // Vector x component + float y; // Vector y component + } Vector2; + + // Vector3, 3 components + typedef struct Vector3 { + float x; // Vector x component + float y; // Vector y component + float z; // Vector z component + } Vector3; + + // Matrix, 4x4 components, column major, OpenGL style, right-handed + 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) + float m3, m7, m11, m15; // Matrix fourth row (4 components) + } Matrix; + + // Camera type, defines a camera position/orientation in 3d space + typedef struct Camera3D { + Vector3 position; // Camera position + Vector3 target; // Camera target it looks-at + Vector3 up; // Camera up vector (rotation over its axis) + float fovy; // Camera field-of-view apperture in Y (degrees) in perspective, used as near plane width in orthographic + int projection; // Camera projection type: CAMERA_PERSPECTIVE or CAMERA_ORTHOGRAPHIC + } Camera3D; + + typedef Camera3D Camera; // Camera type fallback, defaults to Camera3D + + // Camera projection + typedef enum { + CAMERA_PERSPECTIVE = 0, // Perspective projection + CAMERA_ORTHOGRAPHIC // Orthographic projection + } CameraProjection; + + // Camera system modes + 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 + CAMERA_FIRST_PERSON, // Camera first person + CAMERA_THIRD_PERSON // Camera third person + } CameraMode; +#endif + +//---------------------------------------------------------------------------------- +// Global Variables Definition +//---------------------------------------------------------------------------------- +//... + +//---------------------------------------------------------------------------------- +// Module Functions Declaration +//---------------------------------------------------------------------------------- + +#if defined(__cplusplus) +extern "C" { // Prevents name mangling of functions +#endif + +RLAPI Vector3 GetCameraForward(Camera *camera); +RLAPI Vector3 GetCameraUp(Camera *camera); +RLAPI Vector3 GetCameraRight(Camera *camera); + +// Camera movement +RLAPI void CameraMoveForward(Camera *camera, float distance, bool moveInWorldPlane); +RLAPI void CameraMoveUp(Camera *camera, float distance); +RLAPI void CameraMoveRight(Camera *camera, float distance, bool moveInWorldPlane); +RLAPI void CameraMoveToTarget(Camera *camera, float delta); + +// Camera rotation +RLAPI void CameraYaw(Camera *camera, float angle, bool rotateAroundTarget); +RLAPI void CameraPitch(Camera *camera, float angle, bool lockView, bool rotateAroundTarget, bool rotateUp); +RLAPI void CameraRoll(Camera *camera, float angle); + +RLAPI Matrix GetCameraViewMatrix(Camera *camera); +RLAPI Matrix GetCameraProjectionMatrix(Camera *camera, float aspect); + +#if defined(__cplusplus) +} +#endif + +#endif // RCAMERA_H + +/*********************************************************************************** +* +* CAMERA IMPLEMENTATION +* +************************************************************************************/ + +#if defined(RCAMERA_IMPLEMENTATION) + +#include "raymath.h" // Required for vector maths: + // Vector3Add() + // Vector3Subtract() + // Vector3Scale() + // Vector3Normalize() + // Vector3Distance() + // Vector3CrossProduct() + // Vector3RotateByAxisAngle() + // Vector3Angle() + // Vector3Negate() + // MatrixLookAt() + // MatrixPerspective() + // MatrixOrtho() + // MatrixIdentity() + +// raylib required functionality: + // GetMouseDelta() + // GetMouseWheelMove() + // IsKeyDown() + // IsKeyPressed() + // GetFrameTime() + +#include // Required for: fabsf() + +//---------------------------------------------------------------------------------- +// Defines and Macros +//---------------------------------------------------------------------------------- +#define CAMERA_MOVE_SPEED 5.4f // Units per second +#define CAMERA_ROTATION_SPEED 0.03f +#define CAMERA_PAN_SPEED 2.0f + +// Camera mouse movement sensitivity +#define CAMERA_MOUSE_MOVE_SENSITIVITY 0.003f + +// Camera orbital speed in CAMERA_ORBITAL mode +#define CAMERA_ORBITAL_SPEED 0.5f // Radians per second + +//---------------------------------------------------------------------------------- +// Types and Structures Definition +//---------------------------------------------------------------------------------- +//... + +//---------------------------------------------------------------------------------- +// Global Variables Definition +//---------------------------------------------------------------------------------- +//... + +//---------------------------------------------------------------------------------- +// Module Internal Functions Declaration +//---------------------------------------------------------------------------------- +//... + +//---------------------------------------------------------------------------------- +// Module Functions Definition +//---------------------------------------------------------------------------------- +// Returns the cameras forward vector (normalized) +Vector3 GetCameraForward(Camera *camera) +{ + return Vector3Normalize(Vector3Subtract(camera->target, camera->position)); +} + +// Returns the cameras up vector (normalized) +// Note: The up vector might not be perpendicular to the forward vector +Vector3 GetCameraUp(Camera *camera) +{ + return Vector3Normalize(camera->up); +} + +// Returns the cameras right vector (normalized) +Vector3 GetCameraRight(Camera *camera) +{ + Vector3 forward = GetCameraForward(camera); + Vector3 up = GetCameraUp(camera); + + return Vector3Normalize(Vector3CrossProduct(forward, up)); +} + +// Moves the camera in its forward direction +void CameraMoveForward(Camera *camera, float distance, bool moveInWorldPlane) +{ + Vector3 forward = GetCameraForward(camera); + + if (moveInWorldPlane) + { + // Project vector onto world plane (the plane defined by the up vector) + if (fabsf(camera->up.z) > 0.7071f) forward.z = 0; + else if (fabsf(camera->up.x) > 0.7071f) forward.x = 0; + else forward.y = 0; + + forward = Vector3Normalize(forward); + } + + // Scale by distance + forward = Vector3Scale(forward, distance); + + // Move position and target + camera->position = Vector3Add(camera->position, forward); + camera->target = Vector3Add(camera->target, forward); +} + +// Moves the camera in its up direction +void CameraMoveUp(Camera *camera, float distance) +{ + Vector3 up = GetCameraUp(camera); + + // Scale by distance + up = Vector3Scale(up, distance); + + // Move position and target + camera->position = Vector3Add(camera->position, up); + camera->target = Vector3Add(camera->target, up); +} + +// Moves the camera target in its current right direction +void CameraMoveRight(Camera *camera, float distance, bool moveInWorldPlane) +{ + Vector3 right = GetCameraRight(camera); + + if (moveInWorldPlane) + { + // Project vector onto world plane (the plane defined by the up vector) + if (fabsf(camera->up.z) > 0.7071f) right.z = 0; + else if (fabsf(camera->up.x) > 0.7071f) right.x = 0; + else right.y = 0; + + right = Vector3Normalize(right); + } + + // Scale by distance + right = Vector3Scale(right, distance); + + // Move position and target + camera->position = Vector3Add(camera->position, right); + camera->target = Vector3Add(camera->target, right); +} + +// Moves the camera position closer/farther to/from the camera target +void CameraMoveToTarget(Camera *camera, float delta) +{ + float distance = Vector3Distance(camera->position, camera->target); + + // Apply delta + distance += delta; + + // Distance must be greater than 0 + if (distance <= 0) distance = 0.001f; + + // Set new distance by moving the position along the forward vector + Vector3 forward = GetCameraForward(camera); + camera->position = Vector3Add(camera->target, Vector3Scale(forward, -distance)); +} + +// Rotates the camera around its up vector +// Yaw is "looking left and right" +// If rotateAroundTarget is false, the camera rotates around its position +// Note: angle must be provided in radians +void CameraYaw(Camera *camera, float angle, bool rotateAroundTarget) +{ + // Rotation axis + Vector3 up = GetCameraUp(camera); + + // View vector + Vector3 targetPosition = Vector3Subtract(camera->target, camera->position); + + // Rotate view vector around up axis + targetPosition = Vector3RotateByAxisAngle(targetPosition, up, angle); + + if (rotateAroundTarget) + { + // Move position relative to target + camera->position = Vector3Subtract(camera->target, targetPosition); + } + else // rotate around camera.position + { + // Move target relative to position + camera->target = Vector3Add(camera->position, targetPosition); + } +} + +// Rotates the camera around its right vector, pitch is "looking up and down" +// - lockView prevents camera overrotation (aka "somersaults") +// - rotateAroundTarget defines if rotation is around target or around its position +// - rotateUp rotates the up direction as well (typically only usefull in CAMERA_FREE) +// NOTE: [angle] must be provided in radians +void CameraPitch(Camera *camera, float angle, bool lockView, bool rotateAroundTarget, bool rotateUp) +{ + // Up direction + Vector3 up = GetCameraUp(camera); + + // View vector + Vector3 targetPosition = Vector3Subtract(camera->target, camera->position); + + if (lockView) + { + // In these camera modes, clamp the Pitch angle + // to allow only viewing straight up or down + + // Clamp view up + float maxAngleUp = Vector3Angle(up, targetPosition); + maxAngleUp -= 0.001f; // avoid numerical errors + if (angle > maxAngleUp) angle = maxAngleUp; + + // Clamp view down + float maxAngleDown = Vector3Angle(Vector3Negate(up), targetPosition); + maxAngleDown *= -1.0f; // downwards angle is negative + maxAngleDown += 0.001f; // avoid numerical errors + if (angle < maxAngleDown) angle = maxAngleDown; + } + + // Rotation axis + Vector3 right = GetCameraRight(camera); + + // Rotate view vector around right axis + targetPosition = Vector3RotateByAxisAngle(targetPosition, right, angle); + + if (rotateAroundTarget) + { + // Move position relative to target + camera->position = Vector3Subtract(camera->target, targetPosition); + } + else // Rotate around camera.position + { + // Move target relative to position + camera->target = Vector3Add(camera->position, targetPosition); + } + + if (rotateUp) + { + // Rotate up direction around right axis + camera->up = Vector3RotateByAxisAngle(camera->up, right, angle); + } +} + +// Rotates the camera around its forward vector +// Roll is "turning your head sideways to the left or right" +// Note: angle must be provided in radians +void CameraRoll(Camera *camera, float angle) +{ + // Rotation axis + Vector3 forward = GetCameraForward(camera); + + // Rotate up direction around forward axis + camera->up = Vector3RotateByAxisAngle(camera->up, forward, angle); +} + +// Returns the camera view matrix +Matrix GetCameraViewMatrix(Camera *camera) +{ + return MatrixLookAt(camera->position, camera->target, camera->up); +} + +// Returns the camera projection matrix +Matrix GetCameraProjectionMatrix(Camera *camera, float aspect) +{ + if (camera->projection == CAMERA_PERSPECTIVE) + { + return MatrixPerspective(camera->fovy*DEG2RAD, aspect, CAMERA_CULL_DISTANCE_NEAR, CAMERA_CULL_DISTANCE_FAR); + } + else if (camera->projection == CAMERA_ORTHOGRAPHIC) + { + double top = camera->fovy/2.0; + double right = top*aspect; + + return MatrixOrtho(-right, right, -top, top, CAMERA_CULL_DISTANCE_NEAR, CAMERA_CULL_DISTANCE_FAR); + } + + return MatrixIdentity(); +} + +#if !defined(RCAMERA_STANDALONE) +// Update camera position for selected mode +// Camera mode: CAMERA_FREE, CAMERA_FIRST_PERSON, CAMERA_THIRD_PERSON, CAMERA_ORBITAL or CUSTOM +void UpdateCamera(Camera *camera, int mode) +{ + Vector2 mousePositionDelta = GetMouseDelta(); + + bool moveInWorldPlane = ((mode == CAMERA_FIRST_PERSON) || (mode == CAMERA_THIRD_PERSON)); + bool rotateAroundTarget = ((mode == CAMERA_THIRD_PERSON) || (mode == CAMERA_ORBITAL)); + bool lockView = ((mode == CAMERA_FREE) || (mode == CAMERA_FIRST_PERSON) || (mode == CAMERA_THIRD_PERSON) || (mode == CAMERA_ORBITAL)); + bool rotateUp = false; + + // Camera speeds based on frame time + float cameraMoveSpeed = CAMERA_MOVE_SPEED*GetFrameTime(); + float cameraRotationSpeed = CAMERA_ROTATION_SPEED*GetFrameTime(); + float cameraPanSpeed = CAMERA_PAN_SPEED*GetFrameTime(); + float cameraOrbitalSpeed = CAMERA_ORBITAL_SPEED*GetFrameTime(); + + if (mode == CAMERA_CUSTOM) {} + else if (mode == CAMERA_ORBITAL) + { + Matrix rotation = MatrixRotate(GetCameraUp(camera), cameraOrbitalSpeed); + Vector3 view = Vector3Subtract(camera->position, camera->target); + view = Vector3Transform(view, rotation); + camera->position = Vector3Add(camera->target, view); + } + else + { + // Camera rotation + if (IsKeyDown(KEY_DOWN)) CameraPitch(camera, -cameraRotationSpeed, lockView, rotateAroundTarget, rotateUp); + if (IsKeyDown(KEY_UP)) CameraPitch(camera, cameraRotationSpeed, lockView, rotateAroundTarget, rotateUp); + if (IsKeyDown(KEY_RIGHT)) CameraYaw(camera, -cameraRotationSpeed, rotateAroundTarget); + if (IsKeyDown(KEY_LEFT)) CameraYaw(camera, cameraRotationSpeed, rotateAroundTarget); + if (IsKeyDown(KEY_Q)) CameraRoll(camera, -cameraRotationSpeed); + if (IsKeyDown(KEY_E)) CameraRoll(camera, cameraRotationSpeed); + + // Camera movement + // Camera pan (for CAMERA_FREE) + if ((mode == CAMERA_FREE) && (IsMouseButtonDown(MOUSE_BUTTON_MIDDLE))) + { + const Vector2 mouseDelta = GetMouseDelta(); + if (mouseDelta.x > 0.0f) CameraMoveRight(camera, cameraPanSpeed, moveInWorldPlane); + if (mouseDelta.x < 0.0f) CameraMoveRight(camera, -cameraPanSpeed, moveInWorldPlane); + if (mouseDelta.y > 0.0f) CameraMoveUp(camera, -cameraPanSpeed); + if (mouseDelta.y < 0.0f) CameraMoveUp(camera, cameraPanSpeed); + } + else + { + // Mouse support + CameraYaw(camera, -mousePositionDelta.x*CAMERA_MOUSE_MOVE_SENSITIVITY, rotateAroundTarget); + CameraPitch(camera, -mousePositionDelta.y*CAMERA_MOUSE_MOVE_SENSITIVITY, lockView, rotateAroundTarget, rotateUp); + } + + // Keyboard support + if (IsKeyDown(KEY_W)) CameraMoveForward(camera, cameraMoveSpeed, moveInWorldPlane); + if (IsKeyDown(KEY_A)) CameraMoveRight(camera, -cameraMoveSpeed, moveInWorldPlane); + if (IsKeyDown(KEY_S)) CameraMoveForward(camera, -cameraMoveSpeed, moveInWorldPlane); + if (IsKeyDown(KEY_D)) CameraMoveRight(camera, cameraMoveSpeed, moveInWorldPlane); + + // Gamepad movement + if (IsGamepadAvailable(0)) + { + // Gamepad controller support + CameraYaw(camera, -(GetGamepadAxisMovement(0, GAMEPAD_AXIS_RIGHT_X)*2)*CAMERA_MOUSE_MOVE_SENSITIVITY, rotateAroundTarget); + CameraPitch(camera, -(GetGamepadAxisMovement(0, GAMEPAD_AXIS_RIGHT_Y)*2)*CAMERA_MOUSE_MOVE_SENSITIVITY, lockView, rotateAroundTarget, rotateUp); + + if (GetGamepadAxisMovement(0, GAMEPAD_AXIS_LEFT_Y) <= -0.25f) CameraMoveForward(camera, cameraMoveSpeed, moveInWorldPlane); + if (GetGamepadAxisMovement(0, GAMEPAD_AXIS_LEFT_X) <= -0.25f) CameraMoveRight(camera, -cameraMoveSpeed, moveInWorldPlane); + if (GetGamepadAxisMovement(0, GAMEPAD_AXIS_LEFT_Y) >= 0.25f) CameraMoveForward(camera, -cameraMoveSpeed, moveInWorldPlane); + if (GetGamepadAxisMovement(0, GAMEPAD_AXIS_LEFT_X) >= 0.25f) CameraMoveRight(camera, cameraMoveSpeed, moveInWorldPlane); + } + + if (mode == CAMERA_FREE) + { + if (IsKeyDown(KEY_SPACE)) CameraMoveUp(camera, cameraMoveSpeed); + if (IsKeyDown(KEY_LEFT_CONTROL)) CameraMoveUp(camera, -cameraMoveSpeed); + } + } + + if ((mode == CAMERA_THIRD_PERSON) || (mode == CAMERA_ORBITAL) || (mode == CAMERA_FREE)) + { + // Zoom target distance + CameraMoveToTarget(camera, -GetMouseWheelMove()); + if (IsKeyPressed(KEY_KP_SUBTRACT)) CameraMoveToTarget(camera, 2.0f); + if (IsKeyPressed(KEY_KP_ADD)) CameraMoveToTarget(camera, -2.0f); + } +} +#endif // !RCAMERA_STANDALONE + +// Update camera movement, movement/rotation values should be provided by user +void UpdateCameraPro(Camera *camera, Vector3 movement, Vector3 rotation, float zoom) +{ + // Required values + // movement.x - Move forward/backward + // movement.y - Move right/left + // movement.z - Move up/down + // rotation.x - yaw + // rotation.y - pitch + // rotation.z - roll + // zoom - Move towards target + + bool lockView = true; + bool rotateAroundTarget = false; + bool rotateUp = false; + bool moveInWorldPlane = true; + + // Camera rotation + CameraPitch(camera, -rotation.y*DEG2RAD, lockView, rotateAroundTarget, rotateUp); + CameraYaw(camera, -rotation.x*DEG2RAD, rotateAroundTarget); + CameraRoll(camera, rotation.z*DEG2RAD); + + // Camera movement + CameraMoveForward(camera, movement.x, moveInWorldPlane); + CameraMoveRight(camera, movement.y, moveInWorldPlane); + CameraMoveUp(camera, movement.z); + + // Zoom target distance + CameraMoveToTarget(camera, zoom); +} + +#endif // RCAMERA_IMPLEMENTATION diff --git a/include/windows/rgestures.h b/include/windows/rgestures.h new file mode 100644 index 0000000..e6cb863 --- /dev/null +++ b/include/windows/rgestures.h @@ -0,0 +1,555 @@ +/********************************************************************************************** +* +* rgestures - Gestures system, gestures processing based on input events (touch/mouse) +* +* CONFIGURATION: +* #define RGESTURES_IMPLEMENTATION +* Generates the implementation of the library into the included file. +* If not defined, the library is in header only mode and can be included in other headers +* or source files without problems. But only ONE file should hold the implementation. +* +* #define RGESTURES_STANDALONE +* If defined, the library can be used as standalone to process gesture events with +* no external dependencies. +* +* CONTRIBUTORS: +* Marc Palau: Initial implementation (2014) +* Albert Martos: Complete redesign and testing (2015) +* Ian Eito: Complete redesign and testing (2015) +* Ramon Santamaria: Supervision, review, update and maintenance +* +* +* LICENSE: zlib/libpng +* +* Copyright (c) 2014-2026 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. +* +**********************************************************************************************/ + +#ifndef RGESTURES_H +#define RGESTURES_H + +#ifndef PI + #define PI 3.14159265358979323846 +#endif + +//---------------------------------------------------------------------------------- +// Defines and Macros +//---------------------------------------------------------------------------------- +#ifndef MAX_TOUCH_POINTS + #define MAX_TOUCH_POINTS 8 // Maximum number of touch points supported +#endif + +//---------------------------------------------------------------------------------- +// Types and Structures Definition +// NOTE: Below types are required for standalone usage +//---------------------------------------------------------------------------------- +// Boolean type +#if (defined(__STDC__) && __STDC_VERSION__ >= 199901L) || (defined(_MSC_VER) && _MSC_VER >= 1800) + #include +#elif !defined(__cplusplus) && !defined(bool) && !defined(RL_BOOL_TYPE) + typedef enum bool { false = 0, true = !false } bool; +#endif + +#if !defined(RL_VECTOR2_TYPE) +// Vector2 type +typedef struct Vector2 { + float x; + float y; +} Vector2; +#endif + +#if defined(RGESTURES_STANDALONE) +// Gestures type +// NOTE: It could be used as flags to enable only some gestures +typedef enum { + GESTURE_NONE = 0, + GESTURE_TAP = 1, + GESTURE_DOUBLETAP = 2, + GESTURE_HOLD = 4, + GESTURE_DRAG = 8, + GESTURE_SWIPE_RIGHT = 16, + GESTURE_SWIPE_LEFT = 32, + GESTURE_SWIPE_UP = 64, + GESTURE_SWIPE_DOWN = 128, + GESTURE_PINCH_IN = 256, + GESTURE_PINCH_OUT = 512 +} Gesture; +#endif + +typedef enum { + TOUCH_ACTION_UP = 0, + TOUCH_ACTION_DOWN, + TOUCH_ACTION_MOVE, + TOUCH_ACTION_CANCEL +} TouchAction; + +// Gesture event +typedef struct { + int touchAction; + int pointCount; + int pointId[MAX_TOUCH_POINTS]; + Vector2 position[MAX_TOUCH_POINTS]; +} GestureEvent; + +//---------------------------------------------------------------------------------- +// Global Variables Definition +//---------------------------------------------------------------------------------- +//... + +//---------------------------------------------------------------------------------- +// Module Functions Declaration +//---------------------------------------------------------------------------------- + +#if defined(__cplusplus) +extern "C" { // Prevents name mangling of functions +#endif + +void ProcessGestureEvent(GestureEvent event); // Process gesture event and translate it into gestures +void UpdateGestures(void); // Update gestures detected (must be called every frame) + +#if defined(RGESTURES_STANDALONE) +void SetGesturesEnabled(unsigned int flags); // Enable a set of gestures using flags +bool IsGestureDetected(int gesture); // Check if a gesture have been detected +int GetGestureDetected(void); // Get latest detected gesture + +float GetGestureHoldDuration(void); // Get gesture hold time in seconds +Vector2 GetGestureDragVector(void); // Get gesture drag vector +float GetGestureDragAngle(void); // Get gesture drag angle +Vector2 GetGesturePinchVector(void); // Get gesture pinch delta +float GetGesturePinchAngle(void); // Get gesture pinch angle +#endif + +#if defined(__cplusplus) +} +#endif + +#endif // RGESTURES_H + +/*********************************************************************************** +* +* RGESTURES IMPLEMENTATION +* +************************************************************************************/ + +#if defined(RGESTURES_IMPLEMENTATION) + +#if defined(RGESTURES_STANDALONE) +#if defined(_WIN32) + #if defined(__cplusplus) + extern "C" { // Prevents name mangling of functions + #endif + // Functions required to query time on Windows + int __stdcall QueryPerformanceCounter(unsigned long long int *lpPerformanceCount); + int __stdcall QueryPerformanceFrequency(unsigned long long int *lpFrequency); + #if defined(__cplusplus) + } + #endif +#elif defined(__linux__) + #if _POSIX_C_SOURCE < 199309L + #undef _POSIX_C_SOURCE + #define _POSIX_C_SOURCE 199309L // Required for CLOCK_MONOTONIC if compiled with c99 without gnu ext. + #endif + #include // Required for: timespec + #include // Required for: clock_gettime() + + #include // Required for: sqrtf(), atan2f() +#endif +#if defined(__APPLE__) // macOS also defines __MACH__ + #include // Required for: clock_get_time() + #include // Required for: mach_timespec_t +#endif +#endif + +//---------------------------------------------------------------------------------- +// Defines and Macros +//---------------------------------------------------------------------------------- +#define FORCE_TO_SWIPE 0.2f // Swipe force, measured in normalized screen units/time +#define MINIMUM_DRAG 0.015f // Drag minimum force, measured in normalized screen units (0.0f to 1.0f) +#define DRAG_TIMEOUT 0.3f // Drag minimum time for web, measured in seconds +#define MINIMUM_PINCH 0.005f // Pinch minimum force, measured in normalized screen units (0.0f to 1.0f) +#define TAP_TIMEOUT 0.3f // Tap minimum time, measured in seconds +#define PINCH_TIMEOUT 0.3f // Pinch minimum time, measured in seconds +#define DOUBLETAP_RANGE 0.03f // DoubleTap range, measured in normalized screen units (0.0f to 1.0f) + +//---------------------------------------------------------------------------------- +// Types and Structures Definition +//---------------------------------------------------------------------------------- + +// Gestures module state context [136 bytes] +typedef struct { + unsigned int current; // Current detected gesture + unsigned int enabledFlags; // Enabled gestures flags + struct { + int firstId; // Touch id for first touch point + int pointCount; // Touch points counter + double eventTime; // Time stamp when an event happened + Vector2 upPosition; // Touch up position + Vector2 downPositionA; // First touch down position + Vector2 downPositionB; // Second touch down position + Vector2 downDragPosition; // Touch drag position + Vector2 moveDownPositionA; // First touch down position on move + Vector2 moveDownPositionB; // Second touch down position on move + Vector2 previousPositionA; // Previous position A to compare for pinch gestures + Vector2 previousPositionB; // Previous position B to compare for pinch gestures + int tapCounter; // TAP counter (one tap implies TOUCH_ACTION_DOWN and TOUCH_ACTION_UP actions) + } Touch; + struct { + bool resetRequired; // HOLD reset to get first touch point again + double timeDuration; // HOLD duration in seconds + } Hold; + struct { + Vector2 vector; // DRAG vector (between initial and current position) + float angle; // DRAG angle (relative to x-axis) + float distance; // DRAG distance (from initial touch point to final) (normalized [0..1]) + float intensity; // DRAG intensity, how far why did the DRAG (pixels per frame) + } Drag; + struct { + double startTime; // SWIPE start time to calculate drag intensity + } Swipe; + struct { + Vector2 vector; // PINCH vector (between first and second touch points) + float angle; // PINCH angle (relative to x-axis) + float distance; // PINCH displacement distance (normalized [0..1]) + } Pinch; +} GesturesData; + +//---------------------------------------------------------------------------------- +// Global Variables Definition +//---------------------------------------------------------------------------------- +static GesturesData GESTURES = { + .current = GESTURE_NONE, // No current gesture detected + .Touch.firstId = -1, + .enabledFlags = 0b0000001111111111 // All gestures supported by default +}; + +//---------------------------------------------------------------------------------- +// Module Internal Functions Declaration +//---------------------------------------------------------------------------------- +static float rgVector2Angle(Vector2 initialPosition, Vector2 finalPosition); +static float rgVector2Distance(Vector2 v1, Vector2 v2); +static double rgGetCurrentTime(void); + +//---------------------------------------------------------------------------------- +// Module Functions Definition +//---------------------------------------------------------------------------------- + +// Enable only desired gestures to be detected +void SetGesturesEnabled(unsigned int flags) +{ + GESTURES.enabledFlags = flags; +} + +// Check if a gesture have been detected +bool IsGestureDetected(unsigned int gesture) +{ + if ((GESTURES.enabledFlags & GESTURES.current) == gesture) return true; + else return false; +} + +// Process gesture event and translate it into gestures +void ProcessGestureEvent(GestureEvent event) +{ + // Reset required variables + GESTURES.Touch.pointCount = event.pointCount; // Required on UpdateGestures() + + if (GESTURES.Touch.pointCount == 1) // One touch point + { + if (event.touchAction == TOUCH_ACTION_DOWN) + { + GESTURES.Touch.tapCounter++; // Tap counter + + // Detect GESTURE_DOUBLE_TAP + if ((GESTURES.current == GESTURE_NONE) && (GESTURES.Touch.tapCounter >= 2) && ((rgGetCurrentTime() - GESTURES.Touch.eventTime) < TAP_TIMEOUT) && (rgVector2Distance(GESTURES.Touch.downPositionA, event.position[0]) < DOUBLETAP_RANGE)) + { + GESTURES.current = GESTURE_DOUBLETAP; + GESTURES.Touch.tapCounter = 0; + } + else // Detect GESTURE_TAP + { + GESTURES.Touch.tapCounter = 1; + GESTURES.current = GESTURE_TAP; + } + + GESTURES.Touch.downPositionA = event.position[0]; + GESTURES.Touch.downDragPosition = event.position[0]; + + GESTURES.Touch.upPosition = GESTURES.Touch.downPositionA; + GESTURES.Touch.eventTime = rgGetCurrentTime(); + + GESTURES.Swipe.startTime = rgGetCurrentTime(); + + GESTURES.Drag.vector = (Vector2){ 0.0f, 0.0f }; + } + else if (event.touchAction == TOUCH_ACTION_UP) + { + // A swipe can happen while the current gesture is drag, but (specially for web) also hold, so set upPosition for both cases + if (GESTURES.current == GESTURE_DRAG || GESTURES.current == GESTURE_HOLD) GESTURES.Touch.upPosition = event.position[0]; + + // NOTE: GESTURES.Drag.intensity dependent on the resolution of the screen + GESTURES.Drag.distance = rgVector2Distance(GESTURES.Touch.downPositionA, GESTURES.Touch.upPosition); + GESTURES.Drag.intensity = GESTURES.Drag.distance/(float)((rgGetCurrentTime() - GESTURES.Swipe.startTime)); + + // Detect GESTURE_SWIPE + if ((GESTURES.Drag.intensity > FORCE_TO_SWIPE) && (GESTURES.current != GESTURE_DRAG)) + { + // NOTE: Angle should be inverted in Y + GESTURES.Drag.angle = 360.0f - rgVector2Angle(GESTURES.Touch.downPositionA, GESTURES.Touch.upPosition); + + if ((GESTURES.Drag.angle < 30) || (GESTURES.Drag.angle > 330)) GESTURES.current = GESTURE_SWIPE_RIGHT; // Right + else if ((GESTURES.Drag.angle >= 30) && (GESTURES.Drag.angle <= 150)) GESTURES.current = GESTURE_SWIPE_UP; // Up + else if ((GESTURES.Drag.angle > 150) && (GESTURES.Drag.angle < 210)) GESTURES.current = GESTURE_SWIPE_LEFT; // Left + else if ((GESTURES.Drag.angle >= 210) && (GESTURES.Drag.angle <= 330)) GESTURES.current = GESTURE_SWIPE_DOWN; // Down + else GESTURES.current = GESTURE_NONE; + } + else + { + GESTURES.Drag.distance = 0.0f; + GESTURES.Drag.intensity = 0.0f; + GESTURES.Drag.angle = 0.0f; + + GESTURES.current = GESTURE_NONE; + } + + GESTURES.Touch.downDragPosition = (Vector2){ 0.0f, 0.0f }; + GESTURES.Touch.pointCount = 0; + } + else if (event.touchAction == TOUCH_ACTION_MOVE) + { + GESTURES.Touch.moveDownPositionA = event.position[0]; + + if (GESTURES.current == GESTURE_HOLD) + { + if (GESTURES.Hold.resetRequired) GESTURES.Touch.downPositionA = event.position[0]; + + GESTURES.Hold.resetRequired = false; + + // Detect GESTURE_DRAG + if ((rgGetCurrentTime() - GESTURES.Touch.eventTime) > DRAG_TIMEOUT) + { + GESTURES.Touch.eventTime = rgGetCurrentTime(); + GESTURES.current = GESTURE_DRAG; + } + } + + GESTURES.Drag.vector.x = GESTURES.Touch.moveDownPositionA.x - GESTURES.Touch.downDragPosition.x; + GESTURES.Drag.vector.y = GESTURES.Touch.moveDownPositionA.y - GESTURES.Touch.downDragPosition.y; + } + } + else if (GESTURES.Touch.pointCount == 2) // Two touch points + { + if (event.touchAction == TOUCH_ACTION_DOWN) + { + GESTURES.Touch.downPositionA = event.position[0]; + GESTURES.Touch.downPositionB = event.position[1]; + + GESTURES.Touch.previousPositionA = GESTURES.Touch.downPositionA; + GESTURES.Touch.previousPositionB = GESTURES.Touch.downPositionB; + + //GESTURES.Pinch.distance = rgVector2Distance(GESTURES.Touch.downPositionA, GESTURES.Touch.downPositionB); + + GESTURES.Pinch.vector.x = GESTURES.Touch.downPositionB.x - GESTURES.Touch.downPositionA.x; + GESTURES.Pinch.vector.y = GESTURES.Touch.downPositionB.y - GESTURES.Touch.downPositionA.y; + + GESTURES.current = GESTURE_HOLD; + GESTURES.Hold.timeDuration = rgGetCurrentTime(); + } + else if (event.touchAction == TOUCH_ACTION_MOVE) + { + GESTURES.Pinch.distance = rgVector2Distance(GESTURES.Touch.moveDownPositionA, GESTURES.Touch.moveDownPositionB); + + GESTURES.Touch.moveDownPositionA = event.position[0]; + GESTURES.Touch.moveDownPositionB = event.position[1]; + + GESTURES.Pinch.vector.x = GESTURES.Touch.moveDownPositionB.x - GESTURES.Touch.moveDownPositionA.x; + GESTURES.Pinch.vector.y = GESTURES.Touch.moveDownPositionB.y - GESTURES.Touch.moveDownPositionA.y; + + if ((rgVector2Distance(GESTURES.Touch.previousPositionA, GESTURES.Touch.moveDownPositionA) >= MINIMUM_PINCH) || (rgVector2Distance(GESTURES.Touch.previousPositionB, GESTURES.Touch.moveDownPositionB) >= MINIMUM_PINCH)) + { + if ( rgVector2Distance(GESTURES.Touch.previousPositionA, GESTURES.Touch.previousPositionB) > rgVector2Distance(GESTURES.Touch.moveDownPositionA, GESTURES.Touch.moveDownPositionB) ) GESTURES.current = GESTURE_PINCH_IN; + else GESTURES.current = GESTURE_PINCH_OUT; + } + else + { + GESTURES.current = GESTURE_HOLD; + GESTURES.Hold.timeDuration = rgGetCurrentTime(); + } + + // NOTE: Angle should be inverted in Y + GESTURES.Pinch.angle = 360.0f - rgVector2Angle(GESTURES.Touch.moveDownPositionA, GESTURES.Touch.moveDownPositionB); + } + else if (event.touchAction == TOUCH_ACTION_UP) + { + GESTURES.Pinch.distance = 0.0f; + GESTURES.Pinch.angle = 0.0f; + GESTURES.Pinch.vector = (Vector2){ 0.0f, 0.0f }; + GESTURES.Touch.pointCount = 0; + + GESTURES.current = GESTURE_NONE; + } + } + else if (GESTURES.Touch.pointCount > 2) // More than two touch points + { + // TODO: Process gesture events for more than two points + } +} + +// Update gestures detected (must be called every frame) +void UpdateGestures(void) +{ + // NOTE: Gestures are processed through system callbacks on touch events + + // Detect GESTURE_HOLD + if (((GESTURES.current == GESTURE_TAP) || (GESTURES.current == GESTURE_DOUBLETAP)) && (GESTURES.Touch.pointCount < 2)) + { + GESTURES.current = GESTURE_HOLD; + GESTURES.Hold.timeDuration = rgGetCurrentTime(); + } + + // Detect GESTURE_NONE + if ((GESTURES.current == GESTURE_SWIPE_RIGHT) || (GESTURES.current == GESTURE_SWIPE_UP) || (GESTURES.current == GESTURE_SWIPE_LEFT) || (GESTURES.current == GESTURE_SWIPE_DOWN)) + { + GESTURES.current = GESTURE_NONE; + } +} + +// Get latest detected gesture +int GetGestureDetected(void) +{ + // Get current gesture only if enabled + return (GESTURES.enabledFlags & GESTURES.current); +} + +// Hold time measured in seconds +float GetGestureHoldDuration(void) +{ + // NOTE: time is calculated on current gesture HOLD + + double time = 0.0; + + if (GESTURES.current == GESTURE_HOLD) time = rgGetCurrentTime() - GESTURES.Hold.timeDuration; + + return (float)time; +} + +// Get drag vector (between initial touch point to current) +Vector2 GetGestureDragVector(void) +{ + // NOTE: drag vector is calculated on one touch points TOUCH_ACTION_MOVE + + return GESTURES.Drag.vector; +} + +// Get drag angle +// NOTE: Angle in degrees, horizontal-right is 0, counterclockwise +float GetGestureDragAngle(void) +{ + // NOTE: drag angle is calculated on one touch points TOUCH_ACTION_UP + + return GESTURES.Drag.angle; +} + +// Get distance between two pinch points +Vector2 GetGesturePinchVector(void) +{ + // NOTE: Pinch distance is calculated on two touch points TOUCH_ACTION_MOVE + + return GESTURES.Pinch.vector; +} + +// Get angle between two pinch points +// NOTE: Angle in degrees, horizontal-right is 0, counterclockwise +float GetGesturePinchAngle(void) +{ + // NOTE: pinch angle is calculated on two touch points TOUCH_ACTION_MOVE + + return GESTURES.Pinch.angle; +} + +//---------------------------------------------------------------------------------- +// Module Internal Functions Definition +//---------------------------------------------------------------------------------- +// Get angle from two-points vector with X-axis +static float rgVector2Angle(Vector2 v1, Vector2 v2) +{ + float angle = atan2f(v2.y - v1.y, v2.x - v1.x)*(180.0f/PI); + + if (angle < 0) angle += 360.0f; + + return angle; +} + +// Calculate distance between two Vector2 +static float rgVector2Distance(Vector2 v1, Vector2 v2) +{ + float result; + + float dx = v2.x - v1.x; + float dy = v2.y - v1.y; + + result = (float)sqrt(dx*dx + dy*dy); + + return result; +} + +// Time measure returned are seconds +static double rgGetCurrentTime(void) +{ + double time = 0; + +#if !defined(RGESTURES_STANDALONE) + time = GetTime(); +#else +#if defined(_WIN32) + unsigned long long int clockFrequency, currentTime; + + QueryPerformanceFrequency(&clockFrequency); // BE CAREFUL: Costly operation! + QueryPerformanceCounter(¤tTime); + + time = (double)currentTime/clockFrequency; // Time in seconds +#endif + +#if defined(__linux__) + // NOTE: Only for Linux-based systems + struct timespec now; + clock_gettime(CLOCK_MONOTONIC, &now); + unsigned long long int nowTime = (unsigned long long int)now.tv_sec*1000000000LLU + (unsigned long long int)now.tv_nsec; // Time in nanoseconds + + time = ((double)nowTime*1e-9); // Time in seconds +#endif + +#if defined(__APPLE__) + //#define CLOCK_REALTIME CALENDAR_CLOCK // returns UTC time since 1970-01-01 + //#define CLOCK_MONOTONIC SYSTEM_CLOCK // returns the time since boot time + + clock_serv_t cclock; + mach_timespec_t now; + host_get_clock_service(mach_host_self(), SYSTEM_CLOCK, &cclock); + + // NOTE: OS X does not have clock_gettime(), using clock_get_time() + clock_get_time(cclock, &now); + mach_port_deallocate(mach_task_self(), cclock); + unsigned long long int nowTime = (unsigned long long int)now.tv_sec*1000000000LLU + (unsigned long long int)now.tv_nsec; // Time in nanoseconds + + time = ((double)nowTime*1e-9); // Time in seconds +#endif +#endif + + return time; +} + +#endif // RGESTURES_IMPLEMENTATION diff --git a/include/windows/rlgl.h b/include/windows/rlgl.h new file mode 100644 index 0000000..b40b50b --- /dev/null +++ b/include/windows/rlgl.h @@ -0,0 +1,5405 @@ +/********************************************************************************************** +* +* rlgl v5.0 - A multi-OpenGL abstraction layer with an immediate-mode style API +* +* DESCRIPTION: +* An abstraction layer for multiple OpenGL versions (1.1, 2.1, 3.3 Core, 4.3 Core, ES 2.0, ES 3.0) +* that provides a pseudo-OpenGL 1.1 immediate-mode style API (rlVertex, rlTranslate, rlRotate...) +* +* ADDITIONAL NOTES: +* When choosing an OpenGL backend different than OpenGL 1.1, some internal buffer are +* initialized on rlglInit() to accumulate vertex data +* +* When an internal state change is required all the stored vertex data is rendered in batch, +* additionally, rlDrawRenderBatchActive() could be called to force flushing of the batch +* +* Some resources are also loaded for convenience, here the complete list: +* - Default batch (RLGL.defaultBatch): RenderBatch system to accumulate vertex data +* - Default texture (RLGL.defaultTextureId): 1x1 white pixel R8G8B8A8 +* - Default shader (RLGL.State.defaultShaderId, RLGL.State.defaultShaderLocs) +* +* Internal buffer (and resources) must be manually unloaded calling rlglClose() +* +* CONFIGURATION: +* #define GRAPHICS_API_OPENGL_11_SOFTWARE +* #define GRAPHICS_API_OPENGL_11 +* #define GRAPHICS_API_OPENGL_21 +* #define GRAPHICS_API_OPENGL_33 +* #define GRAPHICS_API_OPENGL_43 +* #define GRAPHICS_API_OPENGL_ES2 +* #define GRAPHICS_API_OPENGL_ES3 +* Use selected OpenGL graphics backend, should be supported by platform +* Those preprocessor defines are only used on rlgl module, if OpenGL version is +* required by any other module, use rlGetVersion() to check it +* +* #define RLGL_IMPLEMENTATION +* Generates the implementation of the library into the included file +* If not defined, the library is in header only mode and can be included in other headers +* or source files without problems. But only ONE file should hold the implementation +* +* #if RLGL_SHOW_GL_DETAILS_INFO +* Show OpenGL extensions and capabilities detailed logs on init +* +* #if RLGL_ENABLE_OPENGL_DEBUG_CONTEXT +* Enable debug context (only available on OpenGL 4.3) +* +* rlgl capabilities could be customized defining some internal +* values before library inclusion (default values listed): +* +* #define RL_DEFAULT_BATCH_BUFFER_ELEMENTS 8192 // Default internal render batch elements limits +* #define RL_DEFAULT_BATCH_BUFFERS 1 // Default number of batch buffers (multi-buffering) +* #define RL_DEFAULT_BATCH_DRAWCALLS 256 // Default number of batch draw calls (by state changes: mode, texture) +* #define RL_DEFAULT_BATCH_MAX_TEXTURE_UNITS 4 // Maximum number of textures units that can be activated on batch drawing (SetShaderValueTexture()) +* +* #define RL_MAX_MATRIX_STACK_SIZE 32 // Maximum size of internal Matrix stack +* #define RL_MAX_SHADER_LOCATIONS 32 // Maximum number of shader locations supported +* #define RL_CULL_DISTANCE_NEAR 0.05 // Default projection matrix near cull distance +* #define RL_CULL_DISTANCE_FAR 4000.0 // Default projection matrix far cull distance +* +* When loading a shader, the following vertex attributes and uniform +* location names are tried to be set automatically: +* +* #define RL_DEFAULT_SHADER_ATTRIB_NAME_POSITION "vertexPosition" // Bound by default to shader location: RL_DEFAULT_SHADER_ATTRIB_LOCATION_POSITION +* #define RL_DEFAULT_SHADER_ATTRIB_NAME_TEXCOORD "vertexTexCoord" // Bound by default to shader location: RL_DEFAULT_SHADER_ATTRIB_LOCATION_TEXCOORD +* #define RL_DEFAULT_SHADER_ATTRIB_NAME_NORMAL "vertexNormal" // Bound by default to shader location: RL_DEFAULT_SHADER_ATTRIB_LOCATION_NORMAL +* #define RL_DEFAULT_SHADER_ATTRIB_NAME_COLOR "vertexColor" // Bound by default to shader location: RL_DEFAULT_SHADER_ATTRIB_LOCATION_COLOR +* #define RL_DEFAULT_SHADER_ATTRIB_NAME_TANGENT "vertexTangent" // Bound by default to shader location: RL_DEFAULT_SHADER_ATTRIB_LOCATION_TANGENT +* #define RL_DEFAULT_SHADER_ATTRIB_NAME_TEXCOORD2 "vertexTexCoord2" // Bound by default to shader location: RL_DEFAULT_SHADER_ATTRIB_LOCATION_TEXCOORD2 +* #define RL_DEFAULT_SHADER_ATTRIB_NAME_BONEINDICES "vertexBoneIndices" // Bound by default to shader location: RL_DEFAULT_SHADER_ATTRIB_LOCATION_BONEINDICES +* #define RL_DEFAULT_SHADER_ATTRIB_NAME_BONEWEIGHTS "vertexBoneWeights" // Bound by default to shader location: RL_DEFAULT_SHADER_ATTRIB_LOCATION_BONEWEIGHTS +* #define RL_DEFAULT_SHADER_UNIFORM_NAME_MVP "mvp" // model-view-projection matrix +* #define RL_DEFAULT_SHADER_UNIFORM_NAME_VIEW "matView" // view matrix +* #define RL_DEFAULT_SHADER_UNIFORM_NAME_PROJECTION "matProjection" // projection matrix +* #define RL_DEFAULT_SHADER_UNIFORM_NAME_MODEL "matModel" // model matrix +* #define RL_DEFAULT_SHADER_UNIFORM_NAME_NORMAL "matNormal" // normal matrix (transpose(inverse(matModelView))) +* #define RL_DEFAULT_SHADER_UNIFORM_NAME_COLOR "colDiffuse" // color diffuse (base tint color, multiplied by texture color) +* #define RL_DEFAULT_SHADER_UNIFORM_NAME_BONEMATRICES "boneMatrices" // bone matrices +* #define RL_DEFAULT_SHADER_SAMPLER2D_NAME_TEXTURE0 "texture0" // texture0 (texture slot active 0) +* #define RL_DEFAULT_SHADER_SAMPLER2D_NAME_TEXTURE1 "texture1" // texture1 (texture slot active 1) +* #define RL_DEFAULT_SHADER_SAMPLER2D_NAME_TEXTURE2 "texture2" // texture2 (texture slot active 2) +* +* DEPENDENCIES: +* - OpenGL libraries (depending on platform and OpenGL version selected) +* - GLAD OpenGL extensions loading library (only for OpenGL 3.3 Core, 4.3 Core) +* +* +* LICENSE: zlib/libpng +* +* Copyright (c) 2014-2026 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. +* +**********************************************************************************************/ + +#ifndef RLGL_H +#define RLGL_H + +#define RLGL_VERSION "5.0" + +// Function specifiers in case library is build/used as a shared library +// NOTE: Microsoft specifiers to tell compiler that symbols are imported/exported from a .dll +// NOTE: visibility(default) attribute makes symbols "visible" when compiled with -fvisibility=hidden +#if defined(_WIN32) && defined(BUILD_LIBTYPE_SHARED) + #define RLAPI __declspec(dllexport) // Building the library as a Win32 shared library (.dll) +#elif defined(BUILD_LIBTYPE_SHARED) + #define RLAPI __attribute__((visibility("default"))) // Building the library as a Unix shared library (.so/.dylib) +#elif defined(_WIN32) && defined(USE_LIBTYPE_SHARED) + #define RLAPI __declspec(dllimport) // Using the library as a Win32 shared library (.dll) +#endif + +// Function specifiers definition +#ifndef RLAPI + #define RLAPI // Functions defined as 'extern' by default (implicit specifiers) +#endif + +// Support TRACELOG macros +#ifndef TRACELOG + #define TRACELOG(level, ...) (void)0 +#endif + +// Allow custom memory allocators +#ifndef RL_MALLOC + #define RL_MALLOC(sz) malloc(sz) +#endif +#ifndef RL_CALLOC + #define RL_CALLOC(n,sz) calloc(n,sz) +#endif +#ifndef RL_REALLOC + #define RL_REALLOC(n,sz) realloc(n,sz) +#endif +#ifndef RL_FREE + #define RL_FREE(p) free(p) +#endif + +// Security check in case no GRAPHICS_API_OPENGL_* defined +#if !defined(GRAPHICS_API_OPENGL_11_SOFTWARE) && \ + !defined(GRAPHICS_API_OPENGL_11) && \ + !defined(GRAPHICS_API_OPENGL_21) && \ + !defined(GRAPHICS_API_OPENGL_33) && \ + !defined(GRAPHICS_API_OPENGL_43) && \ + !defined(GRAPHICS_API_OPENGL_ES2) && \ + !defined(GRAPHICS_API_OPENGL_ES3) + #define GRAPHICS_API_OPENGL_33 +#endif + +// Security check in case multiple GRAPHICS_API_OPENGL_* defined +#if defined(GRAPHICS_API_OPENGL_11) || defined(GRAPHICS_API_OPENGL_11_SOFTWARE) + #if defined(GRAPHICS_API_OPENGL_21) + #undef GRAPHICS_API_OPENGL_21 + #endif + #if defined(GRAPHICS_API_OPENGL_33) + #undef GRAPHICS_API_OPENGL_33 + #endif + #if defined(GRAPHICS_API_OPENGL_43) + #undef GRAPHICS_API_OPENGL_43 + #endif + #if defined(GRAPHICS_API_OPENGL_ES2) + #undef GRAPHICS_API_OPENGL_ES2 + #endif +#endif + +// Software implementation uses OpenGL 1.1 functionality +#if defined(GRAPHICS_API_OPENGL_11_SOFTWARE) + #define GRAPHICS_API_OPENGL_11 +#endif + +// OpenGL 2.1 uses most of OpenGL 3.3 Core functionality +// WARNING: Specific parts are checked with #if defines +#if defined(GRAPHICS_API_OPENGL_21) + #define GRAPHICS_API_OPENGL_33 +#endif + +// OpenGL 4.3 uses OpenGL 3.3 Core functionality +#if defined(GRAPHICS_API_OPENGL_43) + #define GRAPHICS_API_OPENGL_33 +#endif + +// OpenGL ES 3.0 uses OpenGL ES 2.0 functionality (and more) +#if defined(GRAPHICS_API_OPENGL_ES3) + #define GRAPHICS_API_OPENGL_ES2 +#endif + +//---------------------------------------------------------------------------------- +// Defines and Macros +//---------------------------------------------------------------------------------- + +// Default internal render batch elements limits +#ifndef RL_DEFAULT_BATCH_BUFFER_ELEMENTS + #if defined(GRAPHICS_API_OPENGL_11) || defined(GRAPHICS_API_OPENGL_33) + // This is the maximum amount of elements (quads) per batch + // NOTE: Be careful with text, every letter maps to a quad + #define RL_DEFAULT_BATCH_BUFFER_ELEMENTS 8192 + #endif + #if defined(GRAPHICS_API_OPENGL_ES2) + // Reducing memory sizes for embedded systems (RPI and HTML5) + // NOTE: On HTML5 (emscripten) this is allocated on heap, + // by default heap is only 16MB!...just take care... + #define RL_DEFAULT_BATCH_BUFFER_ELEMENTS 2048 + #endif +#endif +#ifndef RL_DEFAULT_BATCH_BUFFERS + #define RL_DEFAULT_BATCH_BUFFERS 1 // Default number of batch buffers (multi-buffering) +#endif +#ifndef RL_DEFAULT_BATCH_DRAWCALLS + #define RL_DEFAULT_BATCH_DRAWCALLS 256 // Default number of batch draw calls (by state changes: mode, texture) +#endif +#ifndef RL_DEFAULT_BATCH_MAX_TEXTURE_UNITS + #define RL_DEFAULT_BATCH_MAX_TEXTURE_UNITS 4 // Maximum number of textures units that can be activated on batch drawing (SetShaderValueTexture()) +#endif + +// Internal Matrix stack +#ifndef RL_MAX_MATRIX_STACK_SIZE + #define RL_MAX_MATRIX_STACK_SIZE 32 // Maximum size of Matrix stack +#endif + +// Shader limits +#ifndef RL_MAX_SHADER_LOCATIONS + #define RL_MAX_SHADER_LOCATIONS 32 // Maximum number of shader locations supported +#endif + +// Projection matrix culling +#ifndef RL_CULL_DISTANCE_NEAR + #define RL_CULL_DISTANCE_NEAR 0.05 // Default near cull distance +#endif +#ifndef RL_CULL_DISTANCE_FAR + #define RL_CULL_DISTANCE_FAR 4000.0 // Default far cull distance +#endif + +// Texture parameters (equivalent to OpenGL defines) +#define RL_TEXTURE_WRAP_S 0x2802 // GL_TEXTURE_WRAP_S +#define RL_TEXTURE_WRAP_T 0x2803 // GL_TEXTURE_WRAP_T +#define RL_TEXTURE_MAG_FILTER 0x2800 // GL_TEXTURE_MAG_FILTER +#define RL_TEXTURE_MIN_FILTER 0x2801 // GL_TEXTURE_MIN_FILTER + +#define RL_TEXTURE_FILTER_NEAREST 0x2600 // GL_NEAREST +#define RL_TEXTURE_FILTER_LINEAR 0x2601 // GL_LINEAR +#define RL_TEXTURE_FILTER_MIP_NEAREST 0x2700 // GL_NEAREST_MIPMAP_NEAREST +#define RL_TEXTURE_FILTER_NEAREST_MIP_LINEAR 0x2702 // GL_NEAREST_MIPMAP_LINEAR +#define RL_TEXTURE_FILTER_LINEAR_MIP_NEAREST 0x2701 // GL_LINEAR_MIPMAP_NEAREST +#define RL_TEXTURE_FILTER_MIP_LINEAR 0x2703 // GL_LINEAR_MIPMAP_LINEAR +#define RL_TEXTURE_FILTER_ANISOTROPIC 0x3000 // Anisotropic filter (custom identifier) +#define RL_TEXTURE_MIPMAP_BIAS_RATIO 0x4000 // Texture mipmap bias, percentage ratio (custom identifier) + +#define RL_TEXTURE_WRAP_REPEAT 0x2901 // GL_REPEAT +#define RL_TEXTURE_WRAP_CLAMP 0x812F // GL_CLAMP_TO_EDGE +#define RL_TEXTURE_WRAP_MIRROR_REPEAT 0x8370 // GL_MIRRORED_REPEAT +#define RL_TEXTURE_WRAP_MIRROR_CLAMP 0x8742 // GL_MIRROR_CLAMP_EXT + +// Matrix modes (equivalent to OpenGL) +#define RL_MODELVIEW 0x1700 // GL_MODELVIEW +#define RL_PROJECTION 0x1701 // GL_PROJECTION +#define RL_TEXTURE 0x1702 // GL_TEXTURE + +// Primitive assembly draw modes +#define RL_LINES 0x0001 // GL_LINES +#define RL_TRIANGLES 0x0004 // GL_TRIANGLES +#define RL_QUADS 0x0007 // GL_QUADS + +// GL equivalent data types +#define RL_UNSIGNED_BYTE 0x1401 // GL_UNSIGNED_BYTE +#define RL_FLOAT 0x1406 // GL_FLOAT + +// GL buffer usage hint +#define RL_STREAM_DRAW 0x88E0 // GL_STREAM_DRAW +#define RL_STREAM_READ 0x88E1 // GL_STREAM_READ +#define RL_STREAM_COPY 0x88E2 // GL_STREAM_COPY +#define RL_STATIC_DRAW 0x88E4 // GL_STATIC_DRAW +#define RL_STATIC_READ 0x88E5 // GL_STATIC_READ +#define RL_STATIC_COPY 0x88E6 // GL_STATIC_COPY +#define RL_DYNAMIC_DRAW 0x88E8 // GL_DYNAMIC_DRAW +#define RL_DYNAMIC_READ 0x88E9 // GL_DYNAMIC_READ +#define RL_DYNAMIC_COPY 0x88EA // GL_DYNAMIC_COPY + +// GL Shader type +#define RL_FRAGMENT_SHADER 0x8B30 // GL_FRAGMENT_SHADER +#define RL_VERTEX_SHADER 0x8B31 // GL_VERTEX_SHADER +#define RL_COMPUTE_SHADER 0x91B9 // GL_COMPUTE_SHADER + +// GL blending factors +#define RL_ZERO 0 // GL_ZERO +#define RL_ONE 1 // GL_ONE +#define RL_SRC_COLOR 0x0300 // GL_SRC_COLOR +#define RL_ONE_MINUS_SRC_COLOR 0x0301 // GL_ONE_MINUS_SRC_COLOR +#define RL_SRC_ALPHA 0x0302 // GL_SRC_ALPHA +#define RL_ONE_MINUS_SRC_ALPHA 0x0303 // GL_ONE_MINUS_SRC_ALPHA +#define RL_DST_ALPHA 0x0304 // GL_DST_ALPHA +#define RL_ONE_MINUS_DST_ALPHA 0x0305 // GL_ONE_MINUS_DST_ALPHA +#define RL_DST_COLOR 0x0306 // GL_DST_COLOR +#define RL_ONE_MINUS_DST_COLOR 0x0307 // GL_ONE_MINUS_DST_COLOR +#define RL_SRC_ALPHA_SATURATE 0x0308 // GL_SRC_ALPHA_SATURATE +#define RL_CONSTANT_COLOR 0x8001 // GL_CONSTANT_COLOR +#define RL_ONE_MINUS_CONSTANT_COLOR 0x8002 // GL_ONE_MINUS_CONSTANT_COLOR +#define RL_CONSTANT_ALPHA 0x8003 // GL_CONSTANT_ALPHA +#define RL_ONE_MINUS_CONSTANT_ALPHA 0x8004 // GL_ONE_MINUS_CONSTANT_ALPHA + +// GL blending functions/equations +#define RL_FUNC_ADD 0x8006 // GL_FUNC_ADD +#define RL_MIN 0x8007 // GL_MIN +#define RL_MAX 0x8008 // GL_MAX +#define RL_FUNC_SUBTRACT 0x800A // GL_FUNC_SUBTRACT +#define RL_FUNC_REVERSE_SUBTRACT 0x800B // GL_FUNC_REVERSE_SUBTRACT +#define RL_BLEND_EQUATION 0x8009 // GL_BLEND_EQUATION +#define RL_BLEND_EQUATION_RGB 0x8009 // GL_BLEND_EQUATION_RGB // (Same as BLEND_EQUATION) +#define RL_BLEND_EQUATION_ALPHA 0x883D // GL_BLEND_EQUATION_ALPHA +#define RL_BLEND_DST_RGB 0x80C8 // GL_BLEND_DST_RGB +#define RL_BLEND_SRC_RGB 0x80C9 // GL_BLEND_SRC_RGB +#define RL_BLEND_DST_ALPHA 0x80CA // GL_BLEND_DST_ALPHA +#define RL_BLEND_SRC_ALPHA 0x80CB // GL_BLEND_SRC_ALPHA +#define RL_BLEND_COLOR 0x8005 // GL_BLEND_COLOR + +#define RL_READ_FRAMEBUFFER 0x8CA8 // GL_READ_FRAMEBUFFER +#define RL_DRAW_FRAMEBUFFER 0x8CA9 // GL_DRAW_FRAMEBUFFER + +// Default shader vertex attribute locations +#ifndef RL_DEFAULT_SHADER_ATTRIB_LOCATION_POSITION + #define RL_DEFAULT_SHADER_ATTRIB_LOCATION_POSITION 0 +#endif +#ifndef RL_DEFAULT_SHADER_ATTRIB_LOCATION_TEXCOORD + #define RL_DEFAULT_SHADER_ATTRIB_LOCATION_TEXCOORD 1 +#endif +#ifndef RL_DEFAULT_SHADER_ATTRIB_LOCATION_NORMAL + #define RL_DEFAULT_SHADER_ATTRIB_LOCATION_NORMAL 2 +#endif +#ifndef RL_DEFAULT_SHADER_ATTRIB_LOCATION_COLOR + #define RL_DEFAULT_SHADER_ATTRIB_LOCATION_COLOR 3 +#endif + #ifndef RL_DEFAULT_SHADER_ATTRIB_LOCATION_TANGENT +#define RL_DEFAULT_SHADER_ATTRIB_LOCATION_TANGENT 4 +#endif +#ifndef RL_DEFAULT_SHADER_ATTRIB_LOCATION_TEXCOORD2 + #define RL_DEFAULT_SHADER_ATTRIB_LOCATION_TEXCOORD2 5 +#endif +#ifndef RL_DEFAULT_SHADER_ATTRIB_LOCATION_INDICES + #define RL_DEFAULT_SHADER_ATTRIB_LOCATION_INDICES 6 +#endif +#ifndef RL_DEFAULT_SHADER_ATTRIB_LOCATION_BONEINDICES + #define RL_DEFAULT_SHADER_ATTRIB_LOCATION_BONEINDICES 7 +#endif +#ifndef RL_DEFAULT_SHADER_ATTRIB_LOCATION_BONEWEIGHTS + #define RL_DEFAULT_SHADER_ATTRIB_LOCATION_BONEWEIGHTS 8 +#endif +#ifndef RL_DEFAULT_SHADER_ATTRIB_LOCATION_INSTANCETRANSFORM + #define RL_DEFAULT_SHADER_ATTRIB_LOCATION_INSTANCETRANSFORM 9 +#endif + +//---------------------------------------------------------------------------------- +// Types and Structures Definition +//---------------------------------------------------------------------------------- +#if (defined(__STDC__) && __STDC_VERSION__ >= 199901L) || (defined(_MSC_VER) && _MSC_VER >= 1800) + #include +#elif !defined(__cplusplus) && !defined(bool) && !defined(RL_BOOL_TYPE) + // Boolean type +typedef enum bool { false = 0, true = !false } bool; +#endif + +#if !defined(RL_MATRIX_TYPE) +// Matrix, 4x4 components, column major, OpenGL style, right handed +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) + float m3, m7, m11, m15; // Matrix fourth row (4 components) +} Matrix; +#define RL_MATRIX_TYPE +#endif + +// Dynamic vertex buffers (position + texcoords + colors + indices arrays) +typedef struct rlVertexBuffer { + int elementCount; // Number of elements in the buffer (QUADS) + + float *vertices; // Vertex position (XYZ - 3 components per vertex) (shader-location = 0) + float *texcoords; // Vertex texture coordinates (UV - 2 components per vertex) (shader-location = 1) + float *normals; // Vertex normal (XYZ - 3 components per vertex) (shader-location = 2) + unsigned char *colors; // Vertex colors (RGBA - 4 components per vertex) (shader-location = 3) +#if defined(GRAPHICS_API_OPENGL_11) || defined(GRAPHICS_API_OPENGL_33) + unsigned int *indices; // Vertex indices (in case vertex data comes indexed) (6 indices per quad) +#endif +#if defined(GRAPHICS_API_OPENGL_ES2) + unsigned short *indices; // Vertex indices (in case vertex data comes indexed) (6 indices per quad) +#endif + unsigned int vaoId; // OpenGL Vertex Array Object id + unsigned int vboId[5]; // OpenGL Vertex Buffer Objects id (5 types of vertex data) +} rlVertexBuffer; + +// Draw call type +// NOTE: Only texture changes register a new draw, other state-change-related elements are not +// used at this moment (vaoId, shaderId, matrices), raylib forces a batch draw call if any +// of those state-change happens (this is done in core module) +typedef struct rlDrawCall { + int mode; // Drawing mode: LINES, TRIANGLES, QUADS + int vertexCount; // Number of vertex of the draw + int vertexAlignment; // Number of vertex required for index alignment (LINES, TRIANGLES) + //unsigned int vaoId; // Vertex array id to be used on the draw -> Using RLGL.currentBatch->vertexBuffer.vaoId + //unsigned int shaderId; // Shader id to be used on the draw -> Using RLGL.currentShaderId + unsigned int textureId; // Texture id to be used on the draw -> Use to create new draw call if changes + + //Matrix projection; // Projection matrix for this draw -> Using RLGL.projection by default + //Matrix modelview; // Modelview matrix for this draw -> Using RLGL.modelview by default +} rlDrawCall; + +// rlRenderBatch type +typedef struct rlRenderBatch { + int bufferCount; // Number of vertex buffers (multi-buffering support) + int currentBuffer; // Current buffer tracking in case of multi-buffering + rlVertexBuffer *vertexBuffer; // Dynamic buffer(s) for vertex data + + rlDrawCall *draws; // Draw calls array, depends on textureId + int drawCounter; // Draw calls counter + float currentDepth; // Current depth value for next draw +} rlRenderBatch; + +// OpenGL version +typedef enum { + RL_OPENGL_11_SOFTWARE = 0, // Software rendering + RL_OPENGL_11, // OpenGL 1.1 + RL_OPENGL_21, // OpenGL 2.1 (GLSL 120) + RL_OPENGL_33, // OpenGL 3.3 (GLSL 330) + RL_OPENGL_43, // OpenGL 4.3 (using GLSL 330) + RL_OPENGL_ES_20, // OpenGL ES 2.0 (GLSL 100) + RL_OPENGL_ES_30 // OpenGL ES 3.0 (GLSL 300 es) +} rlGlVersion; + +// Trace log level +// NOTE: Organized by priority level +typedef enum { + RL_LOG_ALL = 0, // Display all logs + RL_LOG_TRACE, // Trace logging, intended for internal use only + RL_LOG_DEBUG, // Debug logging, used for internal debugging, it should be disabled on release builds + RL_LOG_INFO, // Info logging, used for program execution info + RL_LOG_WARNING, // Warning logging, used on recoverable failures + RL_LOG_ERROR, // Error logging, used on unrecoverable failures + RL_LOG_FATAL, // Fatal logging, used to abort program: exit(EXIT_FAILURE) + RL_LOG_NONE // Disable logging +} rlTraceLogLevel; + +// Texture pixel formats +// NOTE: Support depends on OpenGL version +typedef enum { + RL_PIXELFORMAT_UNCOMPRESSED_GRAYSCALE = 1, // 8 bit per pixel (no alpha) + RL_PIXELFORMAT_UNCOMPRESSED_GRAY_ALPHA, // 8*2 bpp (2 channels) + RL_PIXELFORMAT_UNCOMPRESSED_R5G6B5, // 16 bpp + RL_PIXELFORMAT_UNCOMPRESSED_R8G8B8, // 24 bpp + RL_PIXELFORMAT_UNCOMPRESSED_R5G5B5A1, // 16 bpp (1 bit alpha) + RL_PIXELFORMAT_UNCOMPRESSED_R4G4B4A4, // 16 bpp (4 bit alpha) + RL_PIXELFORMAT_UNCOMPRESSED_R8G8B8A8, // 32 bpp + RL_PIXELFORMAT_UNCOMPRESSED_R32, // 32 bpp (1 channel - float) + RL_PIXELFORMAT_UNCOMPRESSED_R32G32B32, // 32*3 bpp (3 channels - float) + RL_PIXELFORMAT_UNCOMPRESSED_R32G32B32A32, // 32*4 bpp (4 channels - float) + RL_PIXELFORMAT_UNCOMPRESSED_R16, // 16 bpp (1 channel - half float) + RL_PIXELFORMAT_UNCOMPRESSED_R16G16B16, // 16*3 bpp (3 channels - half float) + RL_PIXELFORMAT_UNCOMPRESSED_R16G16B16A16, // 16*4 bpp (4 channels - half float) + RL_PIXELFORMAT_COMPRESSED_DXT1_RGB, // 4 bpp (no alpha) + RL_PIXELFORMAT_COMPRESSED_DXT1_RGBA, // 4 bpp (1 bit alpha) + RL_PIXELFORMAT_COMPRESSED_DXT3_RGBA, // 8 bpp + RL_PIXELFORMAT_COMPRESSED_DXT5_RGBA, // 8 bpp + RL_PIXELFORMAT_COMPRESSED_ETC1_RGB, // 4 bpp + RL_PIXELFORMAT_COMPRESSED_ETC2_RGB, // 4 bpp + RL_PIXELFORMAT_COMPRESSED_ETC2_EAC_RGBA, // 8 bpp + RL_PIXELFORMAT_COMPRESSED_PVRT_RGB, // 4 bpp + RL_PIXELFORMAT_COMPRESSED_PVRT_RGBA, // 4 bpp + RL_PIXELFORMAT_COMPRESSED_ASTC_4x4_RGBA, // 8 bpp + RL_PIXELFORMAT_COMPRESSED_ASTC_8x8_RGBA // 2 bpp +} rlPixelFormat; + +// 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 { + RL_TEXTURE_FILTER_POINT = 0, // No filter, pixel approximation + RL_TEXTURE_FILTER_BILINEAR, // Linear filtering + RL_TEXTURE_FILTER_TRILINEAR, // Trilinear filtering (linear with mipmaps) + RL_TEXTURE_FILTER_ANISOTROPIC_4X, // Anisotropic filtering 4x + RL_TEXTURE_FILTER_ANISOTROPIC_8X, // Anisotropic filtering 8x + RL_TEXTURE_FILTER_ANISOTROPIC_16X, // Anisotropic filtering 16x +} rlTextureFilter; + +// Color blending modes (pre-defined) +typedef enum { + RL_BLEND_ALPHA = 0, // Blend textures considering alpha (default) + RL_BLEND_ADDITIVE, // Blend textures adding colors + RL_BLEND_MULTIPLIED, // Blend textures multiplying colors + RL_BLEND_ADD_COLORS, // Blend textures adding colors (alternative) + RL_BLEND_SUBTRACT_COLORS, // Blend textures subtracting colors (alternative) + RL_BLEND_ALPHA_PREMULTIPLY, // Blend premultiplied textures considering alpha + RL_BLEND_CUSTOM, // Blend textures using custom src/dst factors (use rlSetBlendFactors()) + RL_BLEND_CUSTOM_SEPARATE // Blend textures using custom src/dst factors (use rlSetBlendFactorsSeparate()) +} rlBlendMode; + +// Shader location point type +typedef enum { + RL_SHADER_LOC_VERTEX_POSITION = 0, // Shader location: vertex attribute: position + RL_SHADER_LOC_VERTEX_TEXCOORD01, // Shader location: vertex attribute: texcoord01 + RL_SHADER_LOC_VERTEX_TEXCOORD02, // Shader location: vertex attribute: texcoord02 + RL_SHADER_LOC_VERTEX_NORMAL, // Shader location: vertex attribute: normal + RL_SHADER_LOC_VERTEX_TANGENT, // Shader location: vertex attribute: tangent + RL_SHADER_LOC_VERTEX_COLOR, // Shader location: vertex attribute: color + RL_SHADER_LOC_MATRIX_MVP, // Shader location: matrix uniform: model-view-projection + RL_SHADER_LOC_MATRIX_VIEW, // Shader location: matrix uniform: view (camera transform) + RL_SHADER_LOC_MATRIX_PROJECTION, // Shader location: matrix uniform: projection + RL_SHADER_LOC_MATRIX_MODEL, // Shader location: matrix uniform: model (transform) + RL_SHADER_LOC_MATRIX_NORMAL, // Shader location: matrix uniform: normal + RL_SHADER_LOC_VECTOR_VIEW, // Shader location: vector uniform: view + RL_SHADER_LOC_COLOR_DIFFUSE, // Shader location: vector uniform: diffuse color + RL_SHADER_LOC_COLOR_SPECULAR, // Shader location: vector uniform: specular color + RL_SHADER_LOC_COLOR_AMBIENT, // Shader location: vector uniform: ambient color + RL_SHADER_LOC_MAP_ALBEDO, // Shader location: sampler2d texture: albedo (same as: RL_SHADER_LOC_MAP_DIFFUSE) + RL_SHADER_LOC_MAP_METALNESS, // Shader location: sampler2d texture: metalness (same as: RL_SHADER_LOC_MAP_SPECULAR) + RL_SHADER_LOC_MAP_NORMAL, // Shader location: sampler2d texture: normal + RL_SHADER_LOC_MAP_ROUGHNESS, // Shader location: sampler2d texture: roughness + RL_SHADER_LOC_MAP_OCCLUSION, // Shader location: sampler2d texture: occlusion + RL_SHADER_LOC_MAP_EMISSION, // Shader location: sampler2d texture: emission + RL_SHADER_LOC_MAP_HEIGHT, // Shader location: sampler2d texture: height + RL_SHADER_LOC_MAP_CUBEMAP, // Shader location: samplerCube texture: cubemap + RL_SHADER_LOC_MAP_IRRADIANCE, // Shader location: samplerCube texture: irradiance + RL_SHADER_LOC_MAP_PREFILTER, // Shader location: samplerCube texture: prefilter + RL_SHADER_LOC_MAP_BRDF // Shader location: sampler2d texture: brdf +} rlShaderLocationIndex; + +#define RL_SHADER_LOC_MAP_DIFFUSE RL_SHADER_LOC_MAP_ALBEDO +#define RL_SHADER_LOC_MAP_SPECULAR RL_SHADER_LOC_MAP_METALNESS + +// Shader uniform data type +typedef enum { + RL_SHADER_UNIFORM_FLOAT = 0, // Shader uniform type: float + RL_SHADER_UNIFORM_VEC2, // Shader uniform type: vec2 (2 float) + RL_SHADER_UNIFORM_VEC3, // Shader uniform type: vec3 (3 float) + RL_SHADER_UNIFORM_VEC4, // Shader uniform type: vec4 (4 float) + RL_SHADER_UNIFORM_INT, // Shader uniform type: int + RL_SHADER_UNIFORM_IVEC2, // Shader uniform type: ivec2 (2 int) + RL_SHADER_UNIFORM_IVEC3, // Shader uniform type: ivec3 (3 int) + RL_SHADER_UNIFORM_IVEC4, // Shader uniform type: ivec4 (4 int) + RL_SHADER_UNIFORM_UINT, // Shader uniform type: unsigned int + RL_SHADER_UNIFORM_UIVEC2, // Shader uniform type: uivec2 (2 unsigned int) + RL_SHADER_UNIFORM_UIVEC3, // Shader uniform type: uivec3 (3 unsigned int) + RL_SHADER_UNIFORM_UIVEC4, // Shader uniform type: uivec4 (4 unsigned int) + RL_SHADER_UNIFORM_SAMPLER2D // Shader uniform type: sampler2d +} rlShaderUniformDataType; + +// Shader attribute data types +typedef enum { + RL_SHADER_ATTRIB_FLOAT = 0, // Shader attribute type: float + RL_SHADER_ATTRIB_VEC2, // Shader attribute type: vec2 (2 float) + RL_SHADER_ATTRIB_VEC3, // Shader attribute type: vec3 (3 float) + RL_SHADER_ATTRIB_VEC4 // Shader attribute type: vec4 (4 float) +} rlShaderAttributeDataType; + +// Framebuffer attachment type +// NOTE: By default up to 8 color channels defined, but it can be more +typedef enum { + RL_ATTACHMENT_COLOR_CHANNEL0 = 0, // Framebuffer attachment type: color 0 + RL_ATTACHMENT_COLOR_CHANNEL1 = 1, // Framebuffer attachment type: color 1 + RL_ATTACHMENT_COLOR_CHANNEL2 = 2, // Framebuffer attachment type: color 2 + RL_ATTACHMENT_COLOR_CHANNEL3 = 3, // Framebuffer attachment type: color 3 + RL_ATTACHMENT_COLOR_CHANNEL4 = 4, // Framebuffer attachment type: color 4 + RL_ATTACHMENT_COLOR_CHANNEL5 = 5, // Framebuffer attachment type: color 5 + RL_ATTACHMENT_COLOR_CHANNEL6 = 6, // Framebuffer attachment type: color 6 + RL_ATTACHMENT_COLOR_CHANNEL7 = 7, // Framebuffer attachment type: color 7 + RL_ATTACHMENT_DEPTH = 100, // Framebuffer attachment type: depth + RL_ATTACHMENT_STENCIL = 200, // Framebuffer attachment type: stencil +} rlFramebufferAttachType; + +// Framebuffer texture attachment type +typedef enum { + RL_ATTACHMENT_CUBEMAP_POSITIVE_X = 0, // Framebuffer texture attachment type: cubemap, +X side + RL_ATTACHMENT_CUBEMAP_NEGATIVE_X = 1, // Framebuffer texture attachment type: cubemap, -X side + RL_ATTACHMENT_CUBEMAP_POSITIVE_Y = 2, // Framebuffer texture attachment type: cubemap, +Y side + RL_ATTACHMENT_CUBEMAP_NEGATIVE_Y = 3, // Framebuffer texture attachment type: cubemap, -Y side + RL_ATTACHMENT_CUBEMAP_POSITIVE_Z = 4, // Framebuffer texture attachment type: cubemap, +Z side + RL_ATTACHMENT_CUBEMAP_NEGATIVE_Z = 5, // Framebuffer texture attachment type: cubemap, -Z side + RL_ATTACHMENT_TEXTURE2D = 100, // Framebuffer texture attachment type: texture2d + RL_ATTACHMENT_RENDERBUFFER = 200, // Framebuffer texture attachment type: renderbuffer +} rlFramebufferAttachTextureType; + +// Face culling mode +typedef enum { + RL_CULL_FACE_FRONT = 0, + RL_CULL_FACE_BACK +} rlCullMode; + +//------------------------------------------------------------------------------------ +// Functions Declaration - Matrix operations +//------------------------------------------------------------------------------------ + +#if defined(__cplusplus) +extern "C" { // Prevents name mangling of functions +#endif + +RLAPI void rlMatrixMode(int mode); // Choose the current matrix to be transformed +RLAPI void rlPushMatrix(void); // Push the current matrix to stack +RLAPI void rlPopMatrix(void); // Pop latest inserted matrix from stack +RLAPI void rlLoadIdentity(void); // Reset current matrix to identity matrix +RLAPI void rlTranslatef(float x, float y, float z); // Multiply the current matrix by a translation matrix +RLAPI void rlRotatef(float angle, float x, float y, float z); // Multiply the current matrix by a rotation matrix +RLAPI void rlScalef(float x, float y, float z); // Multiply the current matrix by a scaling matrix +RLAPI void rlMultMatrixf(const float *matf); // Multiply the current matrix by another matrix +RLAPI void rlFrustum(double left, double right, double bottom, double top, double znear, double zfar); +RLAPI void rlOrtho(double left, double right, double bottom, double top, double znear, double zfar); +RLAPI void rlViewport(int x, int y, int width, int height); // Set the viewport area +RLAPI void rlSetClipPlanes(double nearPlane, double farPlane); // Set clip planes distances +RLAPI double rlGetCullDistanceNear(void); // Get cull plane distance near +RLAPI double rlGetCullDistanceFar(void); // Get cull plane distance far + +//------------------------------------------------------------------------------------ +// Functions Declaration - Vertex level operations +//------------------------------------------------------------------------------------ +RLAPI void rlBegin(int mode); // Initialize drawing mode (how to organize vertex) +RLAPI void rlEnd(void); // Finish vertex providing +RLAPI void rlVertex2i(int x, int y); // Define one vertex (position) - 2 int +RLAPI void rlVertex2f(float x, float y); // Define one vertex (position) - 2 float +RLAPI void rlVertex3f(float x, float y, float z); // Define one vertex (position) - 3 float +RLAPI void rlTexCoord2f(float x, float y); // Define one vertex (texture coordinate) - 2 float +RLAPI void rlNormal3f(float x, float y, float z); // Define one vertex (normal) - 3 float +RLAPI void rlColor4ub(unsigned char r, unsigned char g, unsigned char b, unsigned char a); // Define one vertex (color) - 4 byte +RLAPI void rlColor3f(float x, float y, float z); // Define one vertex (color) - 3 float +RLAPI void rlColor4f(float x, float y, float z, float w); // Define one vertex (color) - 4 float + +//------------------------------------------------------------------------------------ +// Functions Declaration - OpenGL style functions (common to 1.1, 3.3+, ES2) +// NOTE: This functions are used to completely abstract raylib code from OpenGL layer, +// some of them are direct wrappers over OpenGL calls, some others are custom +//------------------------------------------------------------------------------------ + +// Vertex buffers state +RLAPI bool rlEnableVertexArray(unsigned int vaoId); // Enable vertex array (VAO, if supported) +RLAPI void rlDisableVertexArray(void); // Disable vertex array (VAO, if supported) +RLAPI void rlEnableVertexBuffer(unsigned int id); // Enable vertex buffer (VBO) +RLAPI void rlDisableVertexBuffer(void); // Disable vertex buffer (VBO) +RLAPI void rlEnableVertexBufferElement(unsigned int id); // Enable vertex buffer element (VBO element) +RLAPI void rlDisableVertexBufferElement(void); // Disable vertex buffer element (VBO element) +RLAPI void rlEnableVertexAttribute(unsigned int index); // Enable vertex attribute index +RLAPI void rlDisableVertexAttribute(unsigned int index); // Disable vertex attribute index +RLAPI void rlEnableStatePointer(int vertexAttribType, void *buffer); // Enable attribute state pointer +RLAPI void rlDisableStatePointer(int vertexAttribType); // Disable attribute state pointer + +// Textures state +RLAPI void rlActiveTextureSlot(int slot); // Select and active a texture slot +RLAPI void rlEnableTexture(unsigned int id); // Enable texture +RLAPI void rlDisableTexture(void); // Disable texture +RLAPI void rlEnableTextureCubemap(unsigned int id); // Enable texture cubemap +RLAPI void rlDisableTextureCubemap(void); // Disable texture cubemap +RLAPI void rlTextureParameters(unsigned int id, int param, int value); // Set texture parameters (filter, wrap) +RLAPI void rlCubemapParameters(unsigned int id, int param, int value); // Set cubemap parameters (filter, wrap) + +// Shader state +RLAPI void rlEnableShader(unsigned int id); // Enable shader program +RLAPI void rlDisableShader(void); // Disable shader program + +// Framebuffer state +RLAPI void rlEnableFramebuffer(unsigned int id); // Enable render texture (fbo) +RLAPI void rlDisableFramebuffer(void); // Disable render texture (fbo), return to default framebuffer +RLAPI unsigned int rlGetActiveFramebuffer(void); // Get the currently active render texture (fbo), 0 for default framebuffer +RLAPI void rlActiveDrawBuffers(int count); // Activate multiple draw color buffers +RLAPI void rlBlitFramebuffer(int srcX, int srcY, int srcWidth, int srcHeight, int dstX, int dstY, int dstWidth, int dstHeight, int bufferMask); // Blit active framebuffer to main framebuffer +RLAPI void rlBindFramebuffer(unsigned int target, unsigned int framebuffer); // Bind framebuffer (FBO) + +// General render state +RLAPI void rlEnableColorBlend(void); // Enable color blending +RLAPI void rlDisableColorBlend(void); // Disable color blending +RLAPI void rlEnableDepthTest(void); // Enable depth test +RLAPI void rlDisableDepthTest(void); // Disable depth test +RLAPI void rlEnableDepthMask(void); // Enable depth write +RLAPI void rlDisableDepthMask(void); // Disable depth write +RLAPI void rlEnableBackfaceCulling(void); // Enable backface culling +RLAPI void rlDisableBackfaceCulling(void); // Disable backface culling +RLAPI void rlColorMask(bool r, bool g, bool b, bool a); // Color mask control +RLAPI void rlSetCullFace(int mode); // Set face culling mode +RLAPI void rlEnableScissorTest(void); // Enable scissor test +RLAPI void rlDisableScissorTest(void); // Disable scissor test +RLAPI void rlScissor(int x, int y, int width, int height); // Scissor test +RLAPI void rlEnablePointMode(void); // Enable point mode +RLAPI void rlDisablePointMode(void); // Disable point mode +RLAPI void rlSetPointSize(float size); // Set the point drawing size +RLAPI float rlGetPointSize(void); // Get the point drawing size +RLAPI void rlEnableWireMode(void); // Enable wire mode +RLAPI void rlDisableWireMode(void); // Disable wire mode +RLAPI void rlSetLineWidth(float width); // Set the line drawing width +RLAPI float rlGetLineWidth(void); // Get the line drawing width +RLAPI void rlEnableSmoothLines(void); // Enable line aliasing +RLAPI void rlDisableSmoothLines(void); // Disable line aliasing +RLAPI void rlEnableStereoRender(void); // Enable stereo rendering +RLAPI void rlDisableStereoRender(void); // Disable stereo rendering +RLAPI bool rlIsStereoRenderEnabled(void); // Check if stereo render is enabled + +RLAPI void rlClearColor(unsigned char r, unsigned char g, unsigned char b, unsigned char a); // Clear color buffer with color +RLAPI void rlClearScreenBuffers(void); // Clear used screen buffers (color and depth) +RLAPI void rlCheckErrors(void); // Check and log OpenGL error codes +RLAPI void rlSetBlendMode(int mode); // Set blending mode +RLAPI void rlSetBlendFactors(int glSrcFactor, int glDstFactor, int glEquation); // Set blending mode factor and equation (using OpenGL factors) +RLAPI void rlSetBlendFactorsSeparate(int glSrcRGB, int glDstRGB, int glSrcAlpha, int glDstAlpha, int glEqRGB, int glEqAlpha); // Set blending mode factors and equations separately (using OpenGL factors) + +//------------------------------------------------------------------------------------ +// Functions Declaration - rlgl functionality +//------------------------------------------------------------------------------------ +// rlgl initialization functions +RLAPI void rlglInit(int width, int height); // Initialize rlgl (buffers, shaders, textures, states) +RLAPI void rlglClose(void); // De-initialize rlgl (buffers, shaders, textures) +RLAPI void rlLoadExtensions(void *loader); // Load OpenGL extensions (loader function required) +RLAPI void *rlGetProcAddress(const char *procName); // Get OpenGL procedure address +RLAPI int rlGetVersion(void); // Get current OpenGL version +RLAPI void rlSetFramebufferWidth(int width); // Set current framebuffer width +RLAPI int rlGetFramebufferWidth(void); // Get default framebuffer width +RLAPI void rlSetFramebufferHeight(int height); // Set current framebuffer height +RLAPI int rlGetFramebufferHeight(void); // Get default framebuffer height + +RLAPI unsigned int rlGetTextureIdDefault(void); // Get default texture id +RLAPI unsigned int rlGetShaderIdDefault(void); // Get default shader id +RLAPI int *rlGetShaderLocsDefault(void); // Get default shader locations + +// Render batch management +// NOTE: rlgl provides a default render batch to behave like OpenGL 1.1 immediate mode +// but this render batch API is exposed in case of custom batches are required +RLAPI rlRenderBatch rlLoadRenderBatch(int numBuffers, int bufferElements); // Load a render batch system +RLAPI void rlUnloadRenderBatch(rlRenderBatch batch); // Unload render batch system +RLAPI void rlDrawRenderBatch(rlRenderBatch *batch); // Draw render batch data (Update->Draw->Reset) +RLAPI void rlSetRenderBatchActive(rlRenderBatch *batch); // Set the active render batch for rlgl (NULL for default internal) +RLAPI void rlDrawRenderBatchActive(void); // Update and draw internal render batch +RLAPI bool rlCheckRenderBatchLimit(int vCount); // Check internal buffer overflow for a given number of vertex + +RLAPI void rlSetTexture(unsigned int id); // Set current texture for render batch and check buffers limits + +//------------------------------------------------------------------------------------------------------------------------ + +// Vertex buffers management +RLAPI unsigned int rlLoadVertexArray(void); // Load vertex array (vao) if supported +RLAPI unsigned int rlLoadVertexBuffer(const void *buffer, int size, bool dynamic); // Load a vertex buffer object +RLAPI unsigned int rlLoadVertexBufferElement(const void *buffer, int size, bool dynamic); // Load vertex buffer elements object +RLAPI void rlUpdateVertexBuffer(unsigned int bufferId, const void *data, int dataSize, int offset); // Update vertex buffer object data on GPU buffer +RLAPI void rlUpdateVertexBufferElements(unsigned int id, const void *data, int dataSize, int offset); // Update vertex buffer elements data on GPU buffer +RLAPI void rlUnloadVertexArray(unsigned int vaoId); // Unload vertex array (vao) +RLAPI void rlUnloadVertexBuffer(unsigned int vboId); // Unload vertex buffer object +RLAPI void rlSetVertexAttribute(unsigned int index, int compSize, int type, bool normalized, int stride, int offset); // Set vertex attribute data configuration +RLAPI void rlSetVertexAttributeDivisor(unsigned int index, int divisor); // Set vertex attribute data divisor +RLAPI void rlSetVertexAttributeDefault(int locIndex, const void *value, int attribType, int count); // Set vertex attribute default value, when attribute to provided +RLAPI void rlDrawVertexArray(int offset, int count); // Draw vertex array (currently active vao) +RLAPI void rlDrawVertexArrayElements(int offset, int count, const void *buffer); // Draw vertex array elements +RLAPI void rlDrawVertexArrayInstanced(int offset, int count, int instances); // Draw vertex array (currently active vao) with instancing +RLAPI void rlDrawVertexArrayElementsInstanced(int offset, int count, const void *buffer, int instances); // Draw vertex array elements with instancing + +// Textures management +RLAPI unsigned int rlLoadTexture(const void *data, int width, int height, int format, int mipmapCount); // Load texture data +RLAPI unsigned int rlLoadTextureDepth(int width, int height, bool useRenderBuffer); // Load depth texture/renderbuffer (to be attached to fbo) +RLAPI unsigned int rlLoadTextureCubemap(const void *data, int size, int format, int mipmapCount); // Load texture cubemap data +RLAPI void rlUpdateTexture(unsigned int id, int offsetX, int offsetY, int width, int height, int format, const void *data); // Update texture with new data on GPU +RLAPI void rlGetGlTextureFormats(int format, unsigned int *glInternalFormat, unsigned int *glFormat, unsigned int *glType); // Get OpenGL internal formats +RLAPI const char *rlGetPixelFormatName(unsigned int format); // Get name string for pixel format +RLAPI void rlUnloadTexture(unsigned int id); // Unload texture from GPU memory +RLAPI void rlGenTextureMipmaps(unsigned int id, int width, int height, int format, int *mipmaps); // Generate mipmap data for selected texture +RLAPI void *rlReadTexturePixels(unsigned int id, int width, int height, int format); // Read texture pixel data +RLAPI unsigned char *rlReadScreenPixels(int width, int height); // Read screen pixel data (color buffer) + +// Framebuffer management (fbo) +RLAPI unsigned int rlLoadFramebuffer(void); // Load an empty framebuffer +RLAPI void rlFramebufferAttach(unsigned int id, unsigned int texId, int attachType, int texType, int mipLevel); // Attach texture/renderbuffer to a framebuffer +RLAPI bool rlFramebufferComplete(unsigned int id); // Verify framebuffer is complete +RLAPI void rlUnloadFramebuffer(unsigned int id); // Delete framebuffer from GPU +// WARNING: Copy and resize framebuffer functionality only defined for software backend +RLAPI void rlCopyFramebuffer(int x, int y, int width, int height, int format, void *pixels); // Copy framebuffer pixel data to internal buffer +RLAPI void rlResizeFramebuffer(int width, int height); // Resize internal framebuffer + +// Shaders management +RLAPI unsigned int rlLoadShader(const char *code, int type); // Load (compile) shader and return shader id (type: RL_VERTEX_SHADER, RL_FRAGMENT_SHADER, RL_COMPUTE_SHADER) +RLAPI unsigned int rlLoadShaderProgram(const char *vsCode, const char *fsCode); // Load shader from code strings +RLAPI unsigned int rlLoadShaderProgramEx(unsigned int vsId, unsigned int fsId); // Load shader program, using already loaded shader ids +RLAPI unsigned int rlLoadShaderProgramCompute(unsigned int csId); // Load compute shader program +RLAPI void rlUnloadShader(unsigned int id); // Unload shader, loaded with rlLoadShader() +RLAPI void rlUnloadShaderProgram(unsigned int id); // Unload shader program +RLAPI int rlGetLocationUniform(unsigned int id, const char *uniformName); // Get shader location uniform, requires shader program id +RLAPI int rlGetLocationAttrib(unsigned int id, const char *attribName); // Get shader location attribute, requires shader program id +RLAPI void rlSetUniform(int locIndex, const void *value, int uniformType, int count); // Set shader value uniform +RLAPI void rlSetUniformMatrix(int locIndex, Matrix mat); // Set shader value matrix +RLAPI void rlSetUniformMatrices(int locIndex, const Matrix *mat, int count); // Set shader value matrices +RLAPI void rlSetUniformSampler(int locIndex, unsigned int textureId); // Set shader value sampler +RLAPI void rlSetShader(unsigned int id, int *locs); // Set shader currently active (id and locations) + +// Compute shader management +RLAPI void rlComputeShaderDispatch(unsigned int groupX, unsigned int groupY, unsigned int groupZ); // Dispatch compute shader (equivalent to *draw* for graphics pipeline) + +// Shader buffer storage object management (ssbo) +RLAPI unsigned int rlLoadShaderBuffer(unsigned int size, const void *data, int usageHint); // Load shader storage buffer object (SSBO) +RLAPI void rlUnloadShaderBuffer(unsigned int ssboId); // Unload shader storage buffer object (SSBO) +RLAPI void rlUpdateShaderBuffer(unsigned int id, const void *data, unsigned int dataSize, unsigned int offset); // Update SSBO buffer data +RLAPI void rlBindShaderBuffer(unsigned int id, unsigned int index); // Bind SSBO buffer +RLAPI void rlReadShaderBuffer(unsigned int id, void *dest, unsigned int count, unsigned int offset); // Read SSBO buffer data (GPU->CPU) +RLAPI void rlCopyShaderBuffer(unsigned int destId, unsigned int srcId, unsigned int destOffset, unsigned int srcOffset, unsigned int count); // Copy SSBO data between buffers +RLAPI unsigned int rlGetShaderBufferSize(unsigned int id); // Get SSBO buffer size + +// Buffer management +RLAPI void rlBindImageTexture(unsigned int id, unsigned int index, int format, bool readonly); // Bind image texture + +// Matrix state management +RLAPI Matrix rlGetMatrixModelview(void); // Get internal modelview matrix +RLAPI Matrix rlGetMatrixProjection(void); // Get internal projection matrix +RLAPI Matrix rlGetMatrixTransform(void); // Get internal accumulated transform matrix +RLAPI Matrix rlGetMatrixProjectionStereo(int eye); // Get internal projection matrix for stereo render (selected eye) +RLAPI Matrix rlGetMatrixViewOffsetStereo(int eye); // Get internal view offset matrix for stereo render (selected eye) +RLAPI void rlSetMatrixProjection(Matrix proj); // Set a custom projection matrix (replaces internal projection matrix) +RLAPI void rlSetMatrixModelview(Matrix view); // Set a custom modelview matrix (replaces internal modelview matrix) +RLAPI void rlSetMatrixProjectionStereo(Matrix right, Matrix left); // Set eyes projection matrices for stereo rendering +RLAPI void rlSetMatrixViewOffsetStereo(Matrix right, Matrix left); // Set eyes view offsets matrices for stereo rendering + +// Quick and dirty cube/quad buffers load->draw->unload +RLAPI void rlLoadDrawCube(void); // Load and draw a cube +RLAPI void rlLoadDrawQuad(void); // Load and draw a quad + +#if defined(__cplusplus) +} +#endif + +#endif // RLGL_H + +/*********************************************************************************** +* +* RLGL IMPLEMENTATION +* +************************************************************************************/ + +#if defined(RLGL_IMPLEMENTATION) + +// Expose OpenGL functions from glad in raylib +#if defined(BUILD_LIBTYPE_SHARED) + #define GLAD_API_CALL_EXPORT + #define GLAD_API_CALL_EXPORT_BUILD +#endif + +#if defined(GRAPHICS_API_OPENGL_11) + #if defined(GRAPHICS_API_OPENGL_11_SOFTWARE) + #define RLSW_IMPLEMENTATION + #define SW_MALLOC(sz) RL_MALLOC(sz) + #define SW_REALLOC(ptr, newSz) RL_REALLOC(ptr, newSz) + #define SW_FREE(ptr) RL_FREE(ptr) + #include "external/rlsw.h" // OpenGL 1.1 software implementation + #else + #if defined(__APPLE__) + #include // OpenGL 1.1 library for OSX + #include // OpenGL extensions library + #else + // APIENTRY for OpenGL function pointer declarations is required + #if !defined(APIENTRY) + #if defined(_WIN32) + #define APIENTRY __stdcall + #else + #define APIENTRY + #endif + #endif + // WINGDIAPI definition. Some Windows OpenGL headers need it + #if !defined(WINGDIAPI) && defined(_WIN32) + #define WINGDIAPI __declspec(dllimport) + #endif + + #include // OpenGL 1.1 library + #endif + #endif +#endif + +#if defined(GRAPHICS_API_OPENGL_33) + #define GLAD_MALLOC RL_MALLOC + #define GLAD_FREE RL_FREE + + #define GLAD_GL_IMPLEMENTATION + #include "external/glad.h" // GLAD extensions loading library, includes OpenGL headers +#endif + +#if defined(GRAPHICS_API_OPENGL_ES3) + #include // OpenGL ES 3.0 library + #define GL_GLEXT_PROTOTYPES + #include // OpenGL ES 2.0 extensions library +#elif defined(GRAPHICS_API_OPENGL_ES2) + // NOTE: OpenGL ES 2.0 can be enabled on Desktop platforms, + // in that case, functions are loaded from a custom glad for OpenGL ES 2.0 + // TODO: OpenGL ES 2.0 support shouldn't be platform-dependant, neither require GLAD + #if defined(PLATFORM_DESKTOP_GLFW) || defined(PLATFORM_DESKTOP_SDL) + #define GLAD_GLES2_IMPLEMENTATION + #include "external/glad_gles2.h" + #else + #define GL_GLEXT_PROTOTYPES + //#include // EGL library -> not required, platform layer + #include // OpenGL ES 2.0 library + #include // OpenGL ES 2.0 extensions library + #endif + + // It seems OpenGL ES 2.0 instancing entry points are not defined on Raspberry Pi + // provided headers (despite being defined in official Khronos GLES2 headers) + // TODO: Avoid raylib platform-dependant code on rlgl, it should be a completely portable library + #if defined(PLATFORM_DRM) + typedef void (GL_APIENTRYP PFNGLDRAWARRAYSINSTANCEDEXTPROC) (GLenum mode, GLint start, GLsizei count, GLsizei primcount); + typedef void (GL_APIENTRYP PFNGLDRAWELEMENTSINSTANCEDEXTPROC) (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei primcount); + typedef void (GL_APIENTRYP PFNGLVERTEXATTRIBDIVISOREXTPROC) (GLuint index, GLuint divisor); + #endif +#endif + +#include // Required for: calloc(), free() +#include // Required for: strcmp(), strlen() [Used in rlglInit(), on extensions loading] +#include // Required for: sqrtf(), sinf(), cosf(), floor(), log() + +//---------------------------------------------------------------------------------- +// Defines and Macros +//---------------------------------------------------------------------------------- +#ifndef PI + #define PI 3.14159265358979323846f +#endif +#ifndef DEG2RAD + #define DEG2RAD (PI/180.0f) +#endif +#ifndef RAD2DEG + #define RAD2DEG (180.0f/PI) +#endif + +#ifndef GL_SHADING_LANGUAGE_VERSION + #define GL_SHADING_LANGUAGE_VERSION 0x8B8C +#endif + +#ifndef GL_COMPRESSED_RGB_S3TC_DXT1_EXT + #define GL_COMPRESSED_RGB_S3TC_DXT1_EXT 0x83F0 +#endif +#ifndef GL_COMPRESSED_RGBA_S3TC_DXT1_EXT + #define GL_COMPRESSED_RGBA_S3TC_DXT1_EXT 0x83F1 +#endif +#ifndef GL_COMPRESSED_RGBA_S3TC_DXT3_EXT + #define GL_COMPRESSED_RGBA_S3TC_DXT3_EXT 0x83F2 +#endif +#ifndef GL_COMPRESSED_RGBA_S3TC_DXT5_EXT + #define GL_COMPRESSED_RGBA_S3TC_DXT5_EXT 0x83F3 +#endif +#ifndef GL_ETC1_RGB8_OES + #define GL_ETC1_RGB8_OES 0x8D64 +#endif +#ifndef GL_COMPRESSED_RGB8_ETC2 + #define GL_COMPRESSED_RGB8_ETC2 0x9274 +#endif +#ifndef GL_COMPRESSED_RGBA8_ETC2_EAC + #define GL_COMPRESSED_RGBA8_ETC2_EAC 0x9278 +#endif +#ifndef GL_COMPRESSED_RGB_PVRTC_4BPPV1_IMG + #define GL_COMPRESSED_RGB_PVRTC_4BPPV1_IMG 0x8C00 +#endif +#ifndef GL_COMPRESSED_RGBA_PVRTC_4BPPV1_IMG + #define GL_COMPRESSED_RGBA_PVRTC_4BPPV1_IMG 0x8C02 +#endif +#ifndef GL_COMPRESSED_RGBA_ASTC_4x4_KHR + #define GL_COMPRESSED_RGBA_ASTC_4x4_KHR 0x93b0 +#endif +#ifndef GL_COMPRESSED_RGBA_ASTC_8x8_KHR + #define GL_COMPRESSED_RGBA_ASTC_8x8_KHR 0x93b7 +#endif + +#ifndef GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT + #define GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT 0x84FF +#endif +#ifndef GL_TEXTURE_MAX_ANISOTROPY_EXT + #define GL_TEXTURE_MAX_ANISOTROPY_EXT 0x84FE +#endif + +#ifndef GL_PROGRAM_POINT_SIZE + #define GL_PROGRAM_POINT_SIZE 0x8642 +#endif + +#ifndef GL_LINE_WIDTH + #define GL_LINE_WIDTH 0x0B21 +#endif + +#if defined(GRAPHICS_API_OPENGL_11) + #define GL_UNSIGNED_SHORT_5_6_5 0x8363 + #define GL_UNSIGNED_SHORT_5_5_5_1 0x8034 + #define GL_UNSIGNED_SHORT_4_4_4_4 0x8033 +#endif + +#if defined(GRAPHICS_API_OPENGL_21) + #define GL_LUMINANCE 0x1909 + #define GL_LUMINANCE_ALPHA 0x190A +#endif + +#if defined(GRAPHICS_API_OPENGL_ES2) + #define glClearDepth glClearDepthf + #if !defined(GRAPHICS_API_OPENGL_ES3) + #define GL_READ_FRAMEBUFFER GL_FRAMEBUFFER + #define GL_DRAW_FRAMEBUFFER GL_FRAMEBUFFER + #endif +#endif + +// Default shader vertex attribute names to set location points +#ifndef RL_DEFAULT_SHADER_ATTRIB_NAME_POSITION + #define RL_DEFAULT_SHADER_ATTRIB_NAME_POSITION "vertexPosition" // Bound by default to shader location: RL_DEFAULT_SHADER_ATTRIB_LOCATION_POSITION +#endif +#ifndef RL_DEFAULT_SHADER_ATTRIB_NAME_TEXCOORD + #define RL_DEFAULT_SHADER_ATTRIB_NAME_TEXCOORD "vertexTexCoord" // Bound by default to shader location: RL_DEFAULT_SHADER_ATTRIB_LOCATION_TEXCOORD +#endif +#ifndef RL_DEFAULT_SHADER_ATTRIB_NAME_NORMAL + #define RL_DEFAULT_SHADER_ATTRIB_NAME_NORMAL "vertexNormal" // Bound by default to shader location: RL_DEFAULT_SHADER_ATTRIB_LOCATION_NORMAL +#endif +#ifndef RL_DEFAULT_SHADER_ATTRIB_NAME_COLOR + #define RL_DEFAULT_SHADER_ATTRIB_NAME_COLOR "vertexColor" // Bound by default to shader location: RL_DEFAULT_SHADER_ATTRIB_LOCATION_COLOR +#endif +#ifndef RL_DEFAULT_SHADER_ATTRIB_NAME_TANGENT + #define RL_DEFAULT_SHADER_ATTRIB_NAME_TANGENT "vertexTangent" // Bound by default to shader location: RL_DEFAULT_SHADER_ATTRIB_LOCATION_TANGENT +#endif +#ifndef RL_DEFAULT_SHADER_ATTRIB_NAME_TEXCOORD2 + #define RL_DEFAULT_SHADER_ATTRIB_NAME_TEXCOORD2 "vertexTexCoord2" // Bound by default to shader location: RL_DEFAULT_SHADER_ATTRIB_LOCATION_TEXCOORD2 +#endif +#ifndef RL_DEFAULT_SHADER_ATTRIB_NAME_BONEINDICES + #define RL_DEFAULT_SHADER_ATTRIB_NAME_BONEINDICES "vertexBoneIndices" // Bound by default to shader location: RL_DEFAULT_SHADER_ATTRIB_LOCATION_BONEINDICES +#endif +#ifndef RL_DEFAULT_SHADER_ATTRIB_NAME_BONEWEIGHTS + #define RL_DEFAULT_SHADER_ATTRIB_NAME_BONEWEIGHTS "vertexBoneWeights" // Bound by default to shader location: RL_DEFAULT_SHADER_ATTRIB_LOCATION_BONEWEIGHTS +#endif +#ifndef RL_DEFAULT_SHADER_UNIFORM_NAME_BONEMATRICES + #define RL_DEFAULT_SHADER_UNIFORM_NAME_BONEMATRICES "boneMatrices" // Bound by default to shader location: RL_DEFAULT_SHADER_ATTRIB_LOCATION_BONEMATRICES +#endif +#ifndef RL_DEFAULT_SHADER_ATTRIB_NAME_INSTANCETRANSFORM + #define RL_DEFAULT_SHADER_ATTRIB_NAME_INSTANCETRANSFORM "instanceTransform" // Bound by default to shader location: RL_DEFAULT_SHADER_ATTRIB_LOCATION_INSTANCETRANSFORM +#endif + +#ifndef RL_DEFAULT_SHADER_UNIFORM_NAME_MVP + #define RL_DEFAULT_SHADER_UNIFORM_NAME_MVP "mvp" // model-view-projection matrix +#endif +#ifndef RL_DEFAULT_SHADER_UNIFORM_NAME_VIEW + #define RL_DEFAULT_SHADER_UNIFORM_NAME_VIEW "matView" // view matrix +#endif +#ifndef RL_DEFAULT_SHADER_UNIFORM_NAME_PROJECTION + #define RL_DEFAULT_SHADER_UNIFORM_NAME_PROJECTION "matProjection" // projection matrix +#endif +#ifndef RL_DEFAULT_SHADER_UNIFORM_NAME_MODEL + #define RL_DEFAULT_SHADER_UNIFORM_NAME_MODEL "matModel" // model matrix +#endif +#ifndef RL_DEFAULT_SHADER_UNIFORM_NAME_NORMAL + #define RL_DEFAULT_SHADER_UNIFORM_NAME_NORMAL "matNormal" // normal matrix (transpose(inverse(matModelView)) +#endif +#ifndef RL_DEFAULT_SHADER_UNIFORM_NAME_COLOR + #define RL_DEFAULT_SHADER_UNIFORM_NAME_COLOR "colDiffuse" // color diffuse (base tint color, multiplied by texture color) +#endif +#ifndef RL_DEFAULT_SHADER_SAMPLER2D_NAME_TEXTURE0 + #define RL_DEFAULT_SHADER_SAMPLER2D_NAME_TEXTURE0 "texture0" // texture0 (texture slot active 0) +#endif +#ifndef RL_DEFAULT_SHADER_SAMPLER2D_NAME_TEXTURE1 + #define RL_DEFAULT_SHADER_SAMPLER2D_NAME_TEXTURE1 "texture1" // texture1 (texture slot active 1) +#endif +#ifndef RL_DEFAULT_SHADER_SAMPLER2D_NAME_TEXTURE2 + #define RL_DEFAULT_SHADER_SAMPLER2D_NAME_TEXTURE2 "texture2" // texture2 (texture slot active 2) +#endif +#ifndef RL_DEFAULT_SHADER_UNIFORM_NAME_BONEMATRICES + #define RL_DEFAULT_SHADER_UNIFORM_NAME_BONEMATRICES "boneMatrices" // bone matrices (required for GPU skinning) +#endif + +//---------------------------------------------------------------------------------- +// Module Types and Structures Definition +//---------------------------------------------------------------------------------- +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + +typedef void *(*rlglLoadProc)(const char *name); // OpenGL extension functions loader signature (same as GLADloadproc) + +typedef struct rlglData { + rlRenderBatch *currentBatch; // Current render batch + rlRenderBatch defaultBatch; // Default internal render batch + + rlglLoadProc loader; // OpenGL function loader + + struct { + int vertexCounter; // Current active render batch vertex counter (generic, used for all batches) + float texcoordx, texcoordy; // Current active texture coordinate (added on glVertex*()) + float normalx, normaly, normalz; // Current active normal (added on glVertex*()) + unsigned char colorr, colorg, colorb, colora; // Current active color (added on glVertex*()) + + int currentMatrixMode; // Current matrix mode + Matrix *currentMatrix; // Current matrix pointer + Matrix modelview; // Default modelview matrix + Matrix projection; // Default projection matrix + Matrix transform; // Transform matrix to be used with rlTranslate, rlRotate, rlScale + bool transformRequired; // Require transform matrix application to current draw-call vertex (if required) + Matrix stack[RL_MAX_MATRIX_STACK_SIZE];// Matrix stack for push/pop + int stackCounter; // Matrix stack counter + + unsigned int currentTextureId; // Current texture id to be used on glBegin + unsigned int defaultTextureId; // Default texture used on shapes/poly drawing (required by shader) + unsigned int activeTextureId[RL_DEFAULT_BATCH_MAX_TEXTURE_UNITS]; // Active texture ids to be enabled on batch drawing (0 active by default) + unsigned int defaultVShaderId; // Default vertex shader id (used by default shader program) + unsigned int defaultFShaderId; // Default fragment shader id (used by default shader program) + unsigned int defaultShaderId; // Default shader program id, supports vertex color and diffuse texture + int *defaultShaderLocs; // Default shader locations pointer to be used on rendering + unsigned int currentShaderId; // Current shader id to be used on rendering (by default, defaultShaderId) + int *currentShaderLocs; // Current shader locations pointer to be used on rendering (by default, defaultShaderLocs) + + bool stereoRender; // Stereo rendering flag + Matrix projectionStereo[2]; // VR stereo rendering eyes projection matrices + Matrix viewOffsetStereo[2]; // VR stereo rendering eyes view offset matrices + + // Blending variables + int currentBlendMode; // Blending mode active + int glBlendSrcFactor; // Blending source factor + int glBlendDstFactor; // Blending destination factor + int glBlendEquation; // Blending equation + int glBlendSrcFactorRGB; // Blending source RGB factor + int glBlendDestFactorRGB; // Blending destination RGB factor + int glBlendSrcFactorAlpha; // Blending source alpha factor + int glBlendDestFactorAlpha; // Blending destination alpha factor + int glBlendEquationRGB; // Blending equation for RGB + int glBlendEquationAlpha; // Blending equation for alpha + bool glCustomBlendModeModified; // Custom blending factor and equation modification status + + int framebufferWidth; // Current framebuffer width + int framebufferHeight; // Current framebuffer height + + } State; // Renderer state + struct { + bool vao; // VAO support (OpenGL ES2 could not support VAO extension) (GL_ARB_vertex_array_object) + bool instancing; // Instancing supported (GL_ANGLE_instanced_arrays, GL_EXT_draw_instanced + GL_EXT_instanced_arrays) + bool texNPOT; // NPOT textures full support (GL_ARB_texture_non_power_of_two, GL_OES_texture_npot) + bool texDepth; // Depth textures supported (GL_ARB_depth_texture, GL_OES_depth_texture) + bool texDepthWebGL; // Depth textures supported WebGL specific (GL_WEBGL_depth_texture) + bool texFloat32; // float textures support (32 bit per channel) (GL_OES_texture_float) + bool texFloat16; // half float textures support (16 bit per channel) (GL_OES_texture_half_float) + bool texCompDXT; // DDS texture compression support (GL_EXT_texture_compression_s3tc, GL_WEBGL_compressed_texture_s3tc, GL_WEBKIT_WEBGL_compressed_texture_s3tc) + bool texCompETC1; // ETC1 texture compression support (GL_OES_compressed_ETC1_RGB8_texture, GL_WEBGL_compressed_texture_etc1) + bool texCompETC2; // ETC2/EAC texture compression support (GL_ARB_ES3_compatibility) + bool texCompPVRT; // PVR texture compression support (GL_IMG_texture_compression_pvrtc) + bool texCompASTC; // ASTC texture compression support (GL_KHR_texture_compression_astc_hdr, GL_KHR_texture_compression_astc_ldr) + bool texMirrorClamp; // Clamp mirror wrap mode supported (GL_EXT_texture_mirror_clamp) + bool texAnisoFilter; // Anisotropic texture filtering support (GL_EXT_texture_filter_anisotropic) + bool computeShader; // Compute shaders support (GL_ARB_compute_shader) + bool ssbo; // Shader storage buffer object support (GL_ARB_shader_storage_buffer_object) + + float maxAnisotropyLevel; // Maximum anisotropy level supported (minimum is 2.0f) + int maxDepthBits; // Maximum bits for depth component + + } ExtSupported; // Extensions supported flags +} rlglData; + +#endif // GRAPHICS_API_OPENGL_33 || GRAPHICS_API_OPENGL_ES2 + +//---------------------------------------------------------------------------------- +// Global Variables Definition +//---------------------------------------------------------------------------------- +static double rlCullDistanceNear = RL_CULL_DISTANCE_NEAR; +static double rlCullDistanceFar = RL_CULL_DISTANCE_FAR; + +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) +static rlglData RLGL = { 0 }; +#endif // GRAPHICS_API_OPENGL_33 || GRAPHICS_API_OPENGL_ES2 +static bool isGpuReady = false; + +#if defined(GRAPHICS_API_OPENGL_ES2) && !defined(GRAPHICS_API_OPENGL_ES3) +// NOTE: VAO functionality is exposed through extensions (OES) +static PFNGLGENVERTEXARRAYSOESPROC glGenVertexArrays = NULL; +static PFNGLBINDVERTEXARRAYOESPROC glBindVertexArray = NULL; +static PFNGLDELETEVERTEXARRAYSOESPROC glDeleteVertexArrays = NULL; + +// NOTE: Instancing functionality could also be available through extension +static PFNGLDRAWARRAYSINSTANCEDEXTPROC glDrawArraysInstanced = NULL; +static PFNGLDRAWELEMENTSINSTANCEDEXTPROC glDrawElementsInstanced = NULL; +static PFNGLVERTEXATTRIBDIVISOREXTPROC glVertexAttribDivisor = NULL; +#endif + +//---------------------------------------------------------------------------------- +// Module Functions Declaration +//---------------------------------------------------------------------------------- +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) +static void rlLoadShaderDefault(void); // Load default shader +static void rlUnloadShaderDefault(void); // Unload default shader +#if RLGL_SHOW_GL_DETAILS_INFO +static const char *rlGetCompressedFormatName(int format); // Get compressed format official GL identifier name +#endif +#endif + +static int rlGetPixelDataSize(int width, int height, int format); // Get pixel data size in bytes (image or texture) + +static Matrix rlMatrixIdentity(void); // Get identity matrix +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) +// Auxiliar matrix math functions +typedef struct rl_float16 { float v[16]; } rl_float16; +static rl_float16 rlMatrixToFloatV(Matrix mat); // Get float array of matrix data +#define rlMatrixToFloat(mat) (rlMatrixToFloatV(mat).v) // Get float vector for Matrix +static Matrix rlMatrixMultiply(Matrix left, Matrix right); // Multiply two matrices +static Matrix rlMatrixTranspose(Matrix mat); // Transposes provided matrix +static Matrix rlMatrixInvert(Matrix mat); // Invert provided matrix +#endif + +//---------------------------------------------------------------------------------- +// Module Functions Definition - Matrix operations +//---------------------------------------------------------------------------------- + +#if defined(GRAPHICS_API_OPENGL_11) +// Fallback to OpenGL 1.1 function calls +//--------------------------------------- +void rlMatrixMode(int mode) +{ + switch (mode) + { + case RL_PROJECTION: glMatrixMode(GL_PROJECTION); break; + case RL_MODELVIEW: glMatrixMode(GL_MODELVIEW); break; + case RL_TEXTURE: glMatrixMode(GL_TEXTURE); break; + default: break; + } +} + +void rlFrustum(double left, double right, double bottom, double top, double znear, double zfar) +{ + glFrustum(left, right, bottom, top, znear, zfar); +} + +void rlOrtho(double left, double right, double bottom, double top, double znear, double zfar) +{ + glOrtho(left, right, bottom, top, znear, zfar); +} + +void rlPushMatrix(void) { glPushMatrix(); } +void rlPopMatrix(void) { glPopMatrix(); } +void rlLoadIdentity(void) { glLoadIdentity(); } +void rlTranslatef(float x, float y, float z) { glTranslatef(x, y, z); } +void rlRotatef(float angle, float x, float y, float z) { glRotatef(angle, x, y, z); } +void rlScalef(float x, float y, float z) { glScalef(x, y, z); } +void rlMultMatrixf(const float *matf) { glMultMatrixf(matf); } +#endif +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) +// Choose the current matrix to be transformed +void rlMatrixMode(int mode) +{ + if (mode == RL_PROJECTION) RLGL.State.currentMatrix = &RLGL.State.projection; + else if (mode == RL_MODELVIEW) RLGL.State.currentMatrix = &RLGL.State.modelview; + //else if (mode == RL_TEXTURE) // Not supported + + RLGL.State.currentMatrixMode = mode; +} + +// Push the current matrix into RLGL.State.stack +void rlPushMatrix(void) +{ + if (RLGL.State.stackCounter >= RL_MAX_MATRIX_STACK_SIZE) TRACELOG(RL_LOG_ERROR, "RLGL: Matrix stack overflow (RL_MAX_MATRIX_STACK_SIZE)"); + + if (RLGL.State.currentMatrixMode == RL_MODELVIEW) + { + RLGL.State.transformRequired = true; + RLGL.State.currentMatrix = &RLGL.State.transform; + } + + RLGL.State.stack[RLGL.State.stackCounter] = *RLGL.State.currentMatrix; + RLGL.State.stackCounter++; +} + +// Pop latest inserted matrix from RLGL.State.stack +void rlPopMatrix(void) +{ + if (RLGL.State.stackCounter > 0) + { + Matrix mat = RLGL.State.stack[RLGL.State.stackCounter - 1]; + *RLGL.State.currentMatrix = mat; + RLGL.State.stackCounter--; + } + + if ((RLGL.State.stackCounter == 0) && (RLGL.State.currentMatrixMode == RL_MODELVIEW)) + { + RLGL.State.currentMatrix = &RLGL.State.modelview; + RLGL.State.transformRequired = false; + } +} + +// Reset current matrix to identity matrix +void rlLoadIdentity(void) +{ + *RLGL.State.currentMatrix = rlMatrixIdentity(); +} + +// Multiply the current matrix by a translation matrix +void rlTranslatef(float x, float y, float z) +{ + Matrix matTranslation = rlMatrixIdentity(); + + // Set translation component of matrix + matTranslation.m12 = x; + matTranslation.m13 = y; + matTranslation.m14 = z; + + // NOTE: Transposing matrix by multiplication order + *RLGL.State.currentMatrix = rlMatrixMultiply(matTranslation, *RLGL.State.currentMatrix); +} + +// Multiply the current matrix by a rotation matrix +// NOTE: The provided angle must be in degrees +void rlRotatef(float angle, float x, float y, float z) +{ + Matrix matRotation = rlMatrixIdentity(); + + // Axis vector (x, y, z) normalization + float lengthSquared = x*x + y*y + z*z; + if ((lengthSquared != 1.0f) && (lengthSquared != 0.0f)) + { + float inverseLength = 1.0f/sqrtf(lengthSquared); + x *= inverseLength; + y *= inverseLength; + z *= inverseLength; + } + + // Rotation matrix generation + float sinres = sinf(DEG2RAD*angle); + float cosres = cosf(DEG2RAD*angle); + float t = 1.0f - cosres; + + matRotation.m0 = x*x*t + cosres; + matRotation.m1 = y*x*t + z*sinres; + matRotation.m2 = z*x*t - y*sinres; + matRotation.m3 = 0.0f; + + matRotation.m4 = x*y*t - z*sinres; + matRotation.m5 = y*y*t + cosres; + matRotation.m6 = z*y*t + x*sinres; + matRotation.m7 = 0.0f; + + matRotation.m8 = x*z*t + y*sinres; + matRotation.m9 = y*z*t - x*sinres; + matRotation.m10 = z*z*t + cosres; + matRotation.m11 = 0.0f; + + matRotation.m12 = 0.0f; + matRotation.m13 = 0.0f; + matRotation.m14 = 0.0f; + matRotation.m15 = 1.0f; + + // NOTE: Transposing matrix by multiplication order + *RLGL.State.currentMatrix = rlMatrixMultiply(matRotation, *RLGL.State.currentMatrix); +} + +// Multiply the current matrix by a scaling matrix +void rlScalef(float x, float y, float z) +{ + Matrix matScale = rlMatrixIdentity(); + + // Set scale component of matrix + matScale.m0 = x; + matScale.m5 = y; + matScale.m10 = z; + + // NOTE: Transposing matrix by multiplication order + *RLGL.State.currentMatrix = rlMatrixMultiply(matScale, *RLGL.State.currentMatrix); +} + +// Multiply the current matrix by another matrix +void rlMultMatrixf(const float *matf) +{ + // Matrix creation from array + // Conversion from column-major to row-major memory order + Matrix mat = { matf[0], matf[4], matf[8], matf[12], + matf[1], matf[5], matf[9], matf[13], + matf[2], matf[6], matf[10], matf[14], + matf[3], matf[7], matf[11], matf[15] }; + + *RLGL.State.currentMatrix = rlMatrixMultiply(mat, *RLGL.State.currentMatrix); +} + +// Multiply the current matrix by a perspective matrix generated by parameters +void rlFrustum(double left, double right, double bottom, double top, double znear, double zfar) +{ + Matrix matFrustum = { 0 }; + + float rl = (float)(right - left); + float tb = (float)(top - bottom); + float fn = (float)(zfar - znear); + + matFrustum.m0 = ((float) znear*2.0f)/rl; + matFrustum.m1 = 0.0f; + matFrustum.m2 = 0.0f; + matFrustum.m3 = 0.0f; + + matFrustum.m4 = 0.0f; + matFrustum.m5 = ((float) znear*2.0f)/tb; + matFrustum.m6 = 0.0f; + matFrustum.m7 = 0.0f; + + matFrustum.m8 = ((float)right + (float)left)/rl; + matFrustum.m9 = ((float)top + (float)bottom)/tb; + matFrustum.m10 = -((float)zfar + (float)znear)/fn; + matFrustum.m11 = -1.0f; + + matFrustum.m12 = 0.0f; + matFrustum.m13 = 0.0f; + matFrustum.m14 = -((float)zfar*(float)znear*2.0f)/fn; + matFrustum.m15 = 0.0f; + + *RLGL.State.currentMatrix = rlMatrixMultiply(*RLGL.State.currentMatrix, matFrustum); +} + +// Multiply the current matrix by an orthographic matrix generated by parameters +void rlOrtho(double left, double right, double bottom, double top, double znear, double zfar) +{ + // NOTE: If left-right and top-botton values are equal it could create a division by zero, + // response to it is platform/compiler dependant + Matrix matOrtho = { 0 }; + + float rl = (float)(right - left); + float tb = (float)(top - bottom); + float fn = (float)(zfar - znear); + + matOrtho.m0 = 2.0f/rl; + matOrtho.m1 = 0.0f; + matOrtho.m2 = 0.0f; + matOrtho.m3 = 0.0f; + matOrtho.m4 = 0.0f; + matOrtho.m5 = 2.0f/tb; + matOrtho.m6 = 0.0f; + matOrtho.m7 = 0.0f; + matOrtho.m8 = 0.0f; + matOrtho.m9 = 0.0f; + matOrtho.m10 = -2.0f/fn; + matOrtho.m11 = 0.0f; + matOrtho.m12 = -((float)left + (float)right)/rl; + matOrtho.m13 = -((float)top + (float)bottom)/tb; + matOrtho.m14 = -((float)zfar + (float)znear)/fn; + matOrtho.m15 = 1.0f; + + *RLGL.State.currentMatrix = rlMatrixMultiply(*RLGL.State.currentMatrix, matOrtho); +} +#endif + +// Set the viewport area (transformation from normalized device coordinates to window coordinates) +void rlViewport(int x, int y, int width, int height) +{ + glViewport(x, y, width, height); +} + +// Set clip planes distances +void rlSetClipPlanes(double nearPlane, double farPlane) +{ + rlCullDistanceNear = nearPlane; + rlCullDistanceFar = farPlane; +} + +// Get cull plane distance near +double rlGetCullDistanceNear(void) +{ + return rlCullDistanceNear; +} + +// Get cull plane distance far +double rlGetCullDistanceFar(void) +{ + return rlCullDistanceFar; +} + +//---------------------------------------------------------------------------------- +// Module Functions Definition - Vertex level operations +//---------------------------------------------------------------------------------- +#if defined(GRAPHICS_API_OPENGL_11) +// Fallback to OpenGL 1.1 function calls +//--------------------------------------- +void rlBegin(int mode) +{ + switch (mode) + { + case RL_LINES: glBegin(GL_LINES); break; + case RL_TRIANGLES: glBegin(GL_TRIANGLES); break; + case RL_QUADS: glBegin(GL_QUADS); break; + default: break; + } +} + +void rlEnd(void) { glEnd(); } +void rlVertex2i(int x, int y) { glVertex2i(x, y); } +void rlVertex2f(float x, float y) { glVertex2f(x, y); } +void rlVertex3f(float x, float y, float z) { glVertex3f(x, y, z); } +void rlTexCoord2f(float x, float y) { glTexCoord2f(x, y); } +void rlNormal3f(float x, float y, float z) { glNormal3f(x, y, z); } +void rlColor4ub(unsigned char r, unsigned char g, unsigned char b, unsigned char a) { glColor4ub(r, g, b, a); } +void rlColor3f(float x, float y, float z) { glColor3f(x, y, z); } +void rlColor4f(float x, float y, float z, float w) { glColor4f(x, y, z, w); } +#endif +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) +// Initialize drawing mode (how to organize vertex) +void rlBegin(int mode) +{ + // Draw mode can be RL_LINES, RL_TRIANGLES and RL_QUADS + // NOTE: In all three cases, vertex are accumulated over default internal vertex buffer + if (RLGL.currentBatch->draws[RLGL.currentBatch->drawCounter - 1].mode != mode) + { + if (RLGL.currentBatch->draws[RLGL.currentBatch->drawCounter - 1].vertexCount > 0) + { + // Make sure current RLGL.currentBatch->draws[i].vertexCount is aligned a multiple of 4, + // that way, following QUADS drawing will keep aligned with index processing + // It implies adding some extra alignment vertex at the end of the draw, + // those vertex are not processed but they are considered as an additional offset + // for the next set of vertex to be drawn + if (RLGL.currentBatch->draws[RLGL.currentBatch->drawCounter - 1].mode == RL_LINES) RLGL.currentBatch->draws[RLGL.currentBatch->drawCounter - 1].vertexAlignment = ((RLGL.currentBatch->draws[RLGL.currentBatch->drawCounter - 1].vertexCount < 4)? RLGL.currentBatch->draws[RLGL.currentBatch->drawCounter - 1].vertexCount : RLGL.currentBatch->draws[RLGL.currentBatch->drawCounter - 1].vertexCount%4); + else if (RLGL.currentBatch->draws[RLGL.currentBatch->drawCounter - 1].mode == RL_TRIANGLES) RLGL.currentBatch->draws[RLGL.currentBatch->drawCounter - 1].vertexAlignment = ((RLGL.currentBatch->draws[RLGL.currentBatch->drawCounter - 1].vertexCount < 4)? 1 : (4 - (RLGL.currentBatch->draws[RLGL.currentBatch->drawCounter - 1].vertexCount%4))); + else RLGL.currentBatch->draws[RLGL.currentBatch->drawCounter - 1].vertexAlignment = 0; + + if (!rlCheckRenderBatchLimit(RLGL.currentBatch->draws[RLGL.currentBatch->drawCounter - 1].vertexAlignment)) + { + RLGL.State.vertexCounter += RLGL.currentBatch->draws[RLGL.currentBatch->drawCounter - 1].vertexAlignment; + RLGL.currentBatch->drawCounter++; + } + } + + if (RLGL.currentBatch->drawCounter >= RL_DEFAULT_BATCH_DRAWCALLS) rlDrawRenderBatch(RLGL.currentBatch); + + RLGL.currentBatch->draws[RLGL.currentBatch->drawCounter - 1].mode = mode; + RLGL.currentBatch->draws[RLGL.currentBatch->drawCounter - 1].textureId = RLGL.State.currentTextureId; + RLGL.State.currentTextureId = RLGL.State.defaultTextureId; + } +} + +// Finish vertex providing +void rlEnd(void) +{ + // NOTE: Depth increment is dependant on rlOrtho(): z-near and z-far values, + // as well as depth buffer bit-depth (16bit or 24bit or 32bit) + // Correct increment formula would be: depthInc = (zfar - znear)/pow(2, bits) + RLGL.currentBatch->currentDepth += (1.0f/20000.0f); +} + +// Define one vertex (position) +// NOTE: Vertex position data is the basic information required for drawing +void rlVertex3f(float x, float y, float z) +{ + float tx = x; + float ty = y; + float tz = z; + + // Transform provided vector if required + if (RLGL.State.transformRequired) + { + tx = RLGL.State.transform.m0*x + RLGL.State.transform.m4*y + RLGL.State.transform.m8*z + RLGL.State.transform.m12; + ty = RLGL.State.transform.m1*x + RLGL.State.transform.m5*y + RLGL.State.transform.m9*z + RLGL.State.transform.m13; + tz = RLGL.State.transform.m2*x + RLGL.State.transform.m6*y + RLGL.State.transform.m10*z + RLGL.State.transform.m14; + } + + // WARNING: Be careful with primitives breaking when launching a new batch! + // RL_LINES comes in pairs, RL_TRIANGLES come in groups of 3 vertices and RL_QUADS come in groups of 4 vertices + // Checking current draw.mode when a new vertex is required and finish the batch only if the draw.mode draw.vertexCount is %2, %3 or %4 + if (RLGL.State.vertexCounter > (RLGL.currentBatch->vertexBuffer[RLGL.currentBatch->currentBuffer].elementCount*4 - 4)) + { + if ((RLGL.currentBatch->draws[RLGL.currentBatch->drawCounter - 1].mode == RL_LINES) && + (RLGL.currentBatch->draws[RLGL.currentBatch->drawCounter - 1].vertexCount%2 == 0)) + { + // Reached the maximum number of vertices for RL_LINES drawing + // Launch a draw call but keep current state for next vertices comming + // NOTE: Adding +1 vertex to the check for some safety + rlCheckRenderBatchLimit(2 + 1); + } + else if ((RLGL.currentBatch->draws[RLGL.currentBatch->drawCounter - 1].mode == RL_TRIANGLES) && + (RLGL.currentBatch->draws[RLGL.currentBatch->drawCounter - 1].vertexCount%3 == 0)) + { + rlCheckRenderBatchLimit(3 + 1); + } + else if ((RLGL.currentBatch->draws[RLGL.currentBatch->drawCounter - 1].mode == RL_QUADS) && + (RLGL.currentBatch->draws[RLGL.currentBatch->drawCounter - 1].vertexCount%4 == 0)) + { + rlCheckRenderBatchLimit(4 + 1); + } + } + + // Add vertices + RLGL.currentBatch->vertexBuffer[RLGL.currentBatch->currentBuffer].vertices[3*RLGL.State.vertexCounter] = tx; + RLGL.currentBatch->vertexBuffer[RLGL.currentBatch->currentBuffer].vertices[3*RLGL.State.vertexCounter + 1] = ty; + RLGL.currentBatch->vertexBuffer[RLGL.currentBatch->currentBuffer].vertices[3*RLGL.State.vertexCounter + 2] = tz; + + // Add current texcoord + RLGL.currentBatch->vertexBuffer[RLGL.currentBatch->currentBuffer].texcoords[2*RLGL.State.vertexCounter] = RLGL.State.texcoordx; + RLGL.currentBatch->vertexBuffer[RLGL.currentBatch->currentBuffer].texcoords[2*RLGL.State.vertexCounter + 1] = RLGL.State.texcoordy; + + // Add current normal + RLGL.currentBatch->vertexBuffer[RLGL.currentBatch->currentBuffer].normals[3*RLGL.State.vertexCounter] = RLGL.State.normalx; + RLGL.currentBatch->vertexBuffer[RLGL.currentBatch->currentBuffer].normals[3*RLGL.State.vertexCounter + 1] = RLGL.State.normaly; + RLGL.currentBatch->vertexBuffer[RLGL.currentBatch->currentBuffer].normals[3*RLGL.State.vertexCounter + 2] = RLGL.State.normalz; + + // Add current color + RLGL.currentBatch->vertexBuffer[RLGL.currentBatch->currentBuffer].colors[4*RLGL.State.vertexCounter] = RLGL.State.colorr; + RLGL.currentBatch->vertexBuffer[RLGL.currentBatch->currentBuffer].colors[4*RLGL.State.vertexCounter + 1] = RLGL.State.colorg; + RLGL.currentBatch->vertexBuffer[RLGL.currentBatch->currentBuffer].colors[4*RLGL.State.vertexCounter + 2] = RLGL.State.colorb; + RLGL.currentBatch->vertexBuffer[RLGL.currentBatch->currentBuffer].colors[4*RLGL.State.vertexCounter + 3] = RLGL.State.colora; + + RLGL.State.vertexCounter++; + RLGL.currentBatch->draws[RLGL.currentBatch->drawCounter - 1].vertexCount++; +} + +// Define one vertex (position) +void rlVertex2f(float x, float y) +{ + rlVertex3f(x, y, RLGL.currentBatch->currentDepth); +} + +// Define one vertex (position) +void rlVertex2i(int x, int y) +{ + rlVertex3f((float)x, (float)y, RLGL.currentBatch->currentDepth); +} + +// Define one vertex (texture coordinate) +// NOTE: Texture coordinates are limited to QUADS only +void rlTexCoord2f(float x, float y) +{ + RLGL.State.texcoordx = x; + RLGL.State.texcoordy = y; +} + +// Define one vertex (normal) +// NOTE: Normals limited to TRIANGLES only? +void rlNormal3f(float x, float y, float z) +{ + float normalx = x; + float normaly = y; + float normalz = z; + if (RLGL.State.transformRequired) + { + normalx = RLGL.State.transform.m0*x + RLGL.State.transform.m4*y + RLGL.State.transform.m8*z; + normaly = RLGL.State.transform.m1*x + RLGL.State.transform.m5*y + RLGL.State.transform.m9*z; + normalz = RLGL.State.transform.m2*x + RLGL.State.transform.m6*y + RLGL.State.transform.m10*z; + } + float length = sqrtf(normalx*normalx + normaly*normaly + normalz*normalz); + if (length != 0.0f) + { + float ilength = 1.0f/length; + normalx *= ilength; + normaly *= ilength; + normalz *= ilength; + } + RLGL.State.normalx = normalx; + RLGL.State.normaly = normaly; + RLGL.State.normalz = normalz; +} + +// Define one vertex (color) +void rlColor4ub(unsigned char x, unsigned char y, unsigned char z, unsigned char w) +{ + RLGL.State.colorr = x; + RLGL.State.colorg = y; + RLGL.State.colorb = z; + RLGL.State.colora = w; +} + +// Define one vertex (color) +void rlColor4f(float r, float g, float b, float a) +{ + rlColor4ub((unsigned char)(r*255), (unsigned char)(g*255), (unsigned char)(b*255), (unsigned char)(a*255)); +} + +// Define one vertex (color) +void rlColor3f(float x, float y, float z) +{ + rlColor4ub((unsigned char)(x*255), (unsigned char)(y*255), (unsigned char)(z*255), 255); +} + +#endif + +//-------------------------------------------------------------------------------------- +// Module Functions Definition - OpenGL style functions (common to 1.1, 3.3+, ES2) +//-------------------------------------------------------------------------------------- + +// Set current texture to use +void rlSetTexture(unsigned int id) +{ + if (id == 0) + { +#if defined(GRAPHICS_API_OPENGL_11) + rlDisableTexture(); +#else + // NOTE: If quads batch limit is reached, force a draw call and next batch starts + if (RLGL.State.vertexCounter >= + RLGL.currentBatch->vertexBuffer[RLGL.currentBatch->currentBuffer].elementCount*4) + { + rlDrawRenderBatch(RLGL.currentBatch); + } + RLGL.State.currentTextureId = RLGL.State.defaultTextureId; +#endif + } + else + { +#if defined(GRAPHICS_API_OPENGL_11) + rlEnableTexture(id); +#else + RLGL.State.currentTextureId = id; + if (RLGL.currentBatch->draws[RLGL.currentBatch->drawCounter - 1].textureId != id) + { + if (RLGL.currentBatch->draws[RLGL.currentBatch->drawCounter - 1].vertexCount > 0) + { + // Make sure current RLGL.currentBatch->draws[i].vertexCount is aligned a multiple of 4, + // that way, following QUADS drawing will keep aligned with index processing + // It implies adding some extra alignment vertex at the end of the draw, + // those vertex are not processed but they are considered as an additional offset + // for the next set of vertex to be drawn + if (RLGL.currentBatch->draws[RLGL.currentBatch->drawCounter - 1].mode == RL_LINES) RLGL.currentBatch->draws[RLGL.currentBatch->drawCounter - 1].vertexAlignment = ((RLGL.currentBatch->draws[RLGL.currentBatch->drawCounter - 1].vertexCount < 4)? RLGL.currentBatch->draws[RLGL.currentBatch->drawCounter - 1].vertexCount : RLGL.currentBatch->draws[RLGL.currentBatch->drawCounter - 1].vertexCount%4); + else if (RLGL.currentBatch->draws[RLGL.currentBatch->drawCounter - 1].mode == RL_TRIANGLES) RLGL.currentBatch->draws[RLGL.currentBatch->drawCounter - 1].vertexAlignment = ((RLGL.currentBatch->draws[RLGL.currentBatch->drawCounter - 1].vertexCount < 4)? 1 : (4 - (RLGL.currentBatch->draws[RLGL.currentBatch->drawCounter - 1].vertexCount%4))); + else RLGL.currentBatch->draws[RLGL.currentBatch->drawCounter - 1].vertexAlignment = 0; + + if (!rlCheckRenderBatchLimit(RLGL.currentBatch->draws[RLGL.currentBatch->drawCounter - 1].vertexAlignment)) + { + RLGL.State.vertexCounter += RLGL.currentBatch->draws[RLGL.currentBatch->drawCounter - 1].vertexAlignment; + + RLGL.currentBatch->drawCounter++; + + RLGL.currentBatch->draws[RLGL.currentBatch->drawCounter - 1].mode = RLGL.currentBatch->draws[RLGL.currentBatch->drawCounter - 2].mode; + + } + } + + if (RLGL.currentBatch->drawCounter >= RL_DEFAULT_BATCH_DRAWCALLS) rlDrawRenderBatch(RLGL.currentBatch); + + RLGL.currentBatch->draws[RLGL.currentBatch->drawCounter - 1].textureId = id; + RLGL.currentBatch->draws[RLGL.currentBatch->drawCounter - 1].vertexCount = 0; + } +#endif + } +} + +// Select and active a texture slot +void rlActiveTextureSlot(int slot) +{ +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + glActiveTexture(GL_TEXTURE0 + slot); +#endif +} + +// Enable texture +void rlEnableTexture(unsigned int id) +{ +#if defined(GRAPHICS_API_OPENGL_11) + glEnable(GL_TEXTURE_2D); +#endif + glBindTexture(GL_TEXTURE_2D, id); +} + +// Disable texture +void rlDisableTexture(void) +{ +#if defined(GRAPHICS_API_OPENGL_11) + glDisable(GL_TEXTURE_2D); +#endif + glBindTexture(GL_TEXTURE_2D, 0); +} + +// Enable texture cubemap +void rlEnableTextureCubemap(unsigned int id) +{ +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + glBindTexture(GL_TEXTURE_CUBE_MAP, id); +#endif +} + +// Disable texture cubemap +void rlDisableTextureCubemap(void) +{ +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + glBindTexture(GL_TEXTURE_CUBE_MAP, 0); +#endif +} + +// Set texture parameters (wrap mode/filter mode) +void rlTextureParameters(unsigned int id, int param, int value) +{ + glBindTexture(GL_TEXTURE_2D, id); + + switch (param) + { + case RL_TEXTURE_WRAP_S: + case RL_TEXTURE_WRAP_T: + { + if (value == RL_TEXTURE_WRAP_MIRROR_CLAMP) + { +#if !defined(GRAPHICS_API_OPENGL_11) + if (RLGL.ExtSupported.texMirrorClamp) glTexParameteri(GL_TEXTURE_2D, param, value); + else TRACELOG(RL_LOG_WARNING, "GL: Clamp mirror wrap mode not supported (GL_MIRROR_CLAMP_EXT)"); +#endif + } + else glTexParameteri(GL_TEXTURE_2D, param, value); + } break; + case RL_TEXTURE_MAG_FILTER: + case RL_TEXTURE_MIN_FILTER: glTexParameteri(GL_TEXTURE_2D, param, value); break; + case RL_TEXTURE_FILTER_ANISOTROPIC: + { +#if !defined(GRAPHICS_API_OPENGL_11) + // Reset anisotropy filter, in case it was set + glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_MAX_ANISOTROPY_EXT, 1.0f); + + if (value <= RLGL.ExtSupported.maxAnisotropyLevel) glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_MAX_ANISOTROPY_EXT, (float)value); + else if (RLGL.ExtSupported.maxAnisotropyLevel > 0.0f) + { + TRACELOG(RL_LOG_WARNING, "GL: Maximum anisotropic filter level supported is %iX", id, (int)RLGL.ExtSupported.maxAnisotropyLevel); + glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_MAX_ANISOTROPY_EXT, (float)value); + } + else TRACELOG(RL_LOG_WARNING, "GL: Anisotropic filtering not supported"); +#endif + } break; +#if defined(GRAPHICS_API_OPENGL_33) + case RL_TEXTURE_MIPMAP_BIAS_RATIO: glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_LOD_BIAS, value/100.0f); +#endif + default: break; + } + + glBindTexture(GL_TEXTURE_2D, 0); +} + +// Set cubemap parameters (wrap mode/filter mode) +void rlCubemapParameters(unsigned int id, int param, int value) +{ +#if !defined(GRAPHICS_API_OPENGL_11) + glBindTexture(GL_TEXTURE_CUBE_MAP, id); + + // Reset anisotropy filter, in case it was set + glTexParameterf(GL_TEXTURE_CUBE_MAP, GL_TEXTURE_MAX_ANISOTROPY_EXT, 1.0f); + + switch (param) + { + case RL_TEXTURE_WRAP_S: + case RL_TEXTURE_WRAP_T: + { + if (value == RL_TEXTURE_WRAP_MIRROR_CLAMP) + { + if (RLGL.ExtSupported.texMirrorClamp) glTexParameteri(GL_TEXTURE_CUBE_MAP, param, value); + else TRACELOG(RL_LOG_WARNING, "GL: Clamp mirror wrap mode not supported (GL_MIRROR_CLAMP_EXT)"); + } + else glTexParameteri(GL_TEXTURE_CUBE_MAP, param, value); + } break; + case RL_TEXTURE_MAG_FILTER: + case RL_TEXTURE_MIN_FILTER: glTexParameteri(GL_TEXTURE_CUBE_MAP, param, value); break; + case RL_TEXTURE_FILTER_ANISOTROPIC: + { + if (value <= RLGL.ExtSupported.maxAnisotropyLevel) glTexParameterf(GL_TEXTURE_CUBE_MAP, GL_TEXTURE_MAX_ANISOTROPY_EXT, (float)value); + else if (RLGL.ExtSupported.maxAnisotropyLevel > 0.0f) + { + TRACELOG(RL_LOG_WARNING, "GL: Maximum anisotropic filter level supported is %iX", id, (int)RLGL.ExtSupported.maxAnisotropyLevel); + glTexParameterf(GL_TEXTURE_CUBE_MAP, GL_TEXTURE_MAX_ANISOTROPY_EXT, (float)value); + } + else TRACELOG(RL_LOG_WARNING, "GL: Anisotropic filtering not supported"); + } break; +#if defined(GRAPHICS_API_OPENGL_33) + case RL_TEXTURE_MIPMAP_BIAS_RATIO: glTexParameterf(GL_TEXTURE_CUBE_MAP, GL_TEXTURE_LOD_BIAS, value/100.0f); +#endif + default: break; + } + + glBindTexture(GL_TEXTURE_CUBE_MAP, 0); +#endif +} + +// Enable shader program +void rlEnableShader(unsigned int id) +{ +#if (defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2)) + glUseProgram(id); +#endif +} + +// Disable shader program +void rlDisableShader(void) +{ +#if (defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2)) + glUseProgram(0); +#endif +} + +// Enable rendering to texture (fbo) +void rlEnableFramebuffer(unsigned int id) +{ +#if (defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2)) + glBindFramebuffer(GL_FRAMEBUFFER, id); +#endif +} + +// return the active render texture (fbo) +unsigned int rlGetActiveFramebuffer(void) +{ + GLint fboId = 0; +#if (defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES3)) + glGetIntegerv(GL_DRAW_FRAMEBUFFER_BINDING, &fboId); +#endif + return fboId; +} + +// Disable rendering to texture +void rlDisableFramebuffer(void) +{ +#if (defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2)) + glBindFramebuffer(GL_FRAMEBUFFER, 0); +#endif +} + +// Blit active framebuffer to main framebuffer +void rlBlitFramebuffer(int srcX, int srcY, int srcWidth, int srcHeight, int dstX, int dstY, int dstWidth, int dstHeight, int bufferMask) +{ +#if (defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES3)) + glBlitFramebuffer(srcX, srcY, srcWidth, srcHeight, dstX, dstY, dstWidth, dstHeight, bufferMask, GL_NEAREST); +#endif +} + +// Bind framebuffer object (fbo) +void rlBindFramebuffer(unsigned int target, unsigned int framebuffer) +{ +#if (defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2)) + glBindFramebuffer(target, framebuffer); +#endif +} + +// Activate multiple draw color buffers +// NOTE: One color buffer is always active by default +void rlActiveDrawBuffers(int count) +{ +#if (defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES3)) + // NOTE: Maximum number of draw buffers supported is implementation dependant, + // it can be queried with glGet*() but it must be at least 8 + //GLint maxDrawBuffers = 0; + //glGetIntegerv(GL_MAX_DRAW_BUFFERS, &maxDrawBuffers); + + if (count > 0) + { + if (count > 8) TRACELOG(RL_LOG_WARNING, "GL: Max color buffers limited to 8"); + else + { + unsigned int buffers[8] = { + GL_COLOR_ATTACHMENT0, + GL_COLOR_ATTACHMENT1, + GL_COLOR_ATTACHMENT2, + GL_COLOR_ATTACHMENT3, + GL_COLOR_ATTACHMENT4, + GL_COLOR_ATTACHMENT5, + GL_COLOR_ATTACHMENT6, + GL_COLOR_ATTACHMENT7, + }; + + glDrawBuffers(count, buffers); + } + } + else TRACELOG(RL_LOG_WARNING, "GL: One color buffer active by default"); +#endif +} + +//---------------------------------------------------------------------------------- +// General render state configuration +//---------------------------------------------------------------------------------- + +// Enable color blending +void rlEnableColorBlend(void) { glEnable(GL_BLEND); } + +// Disable color blending +void rlDisableColorBlend(void) { glDisable(GL_BLEND); } + +// Enable depth test +void rlEnableDepthTest(void) { glEnable(GL_DEPTH_TEST); } + +// Disable depth test +void rlDisableDepthTest(void) { glDisable(GL_DEPTH_TEST); } + +// Enable depth write +void rlEnableDepthMask(void) { glDepthMask(GL_TRUE); } + +// Disable depth write +void rlDisableDepthMask(void) { glDepthMask(GL_FALSE); } + +// Enable backface culling +void rlEnableBackfaceCulling(void) { glEnable(GL_CULL_FACE); } + +// Disable backface culling +void rlDisableBackfaceCulling(void) { glDisable(GL_CULL_FACE); } + +// Set color mask active for screen read/draw +void rlColorMask(bool r, bool g, bool b, bool a) { glColorMask(r, g, b, a); } + +// Set face culling mode +void rlSetCullFace(int mode) +{ + switch (mode) + { + case RL_CULL_FACE_BACK: glCullFace(GL_BACK); break; + case RL_CULL_FACE_FRONT: glCullFace(GL_FRONT); break; + default: break; + } +} + +// Enable scissor test +void rlEnableScissorTest(void) { glEnable(GL_SCISSOR_TEST); } + +// Disable scissor test +void rlDisableScissorTest(void) { glDisable(GL_SCISSOR_TEST); } + +// Scissor test +void rlScissor(int x, int y, int width, int height) { glScissor(x, y, width, height); } + +// Enable wire mode +void rlEnableWireMode(void) +{ +#if defined(GRAPHICS_API_OPENGL_11) || defined(GRAPHICS_API_OPENGL_33) + // NOTE: glPolygonMode() not available on OpenGL ES + glPolygonMode(GL_FRONT_AND_BACK, GL_LINE); +#endif +} + +// Disable wire mode +void rlDisableWireMode(void) +{ +#if defined(GRAPHICS_API_OPENGL_11) || defined(GRAPHICS_API_OPENGL_33) + // NOTE: glPolygonMode() not available on OpenGL ES + glPolygonMode(GL_FRONT_AND_BACK, GL_FILL); +#endif +} + +// Enable point mode +void rlEnablePointMode(void) +{ +#if defined(GRAPHICS_API_OPENGL_11) || defined(GRAPHICS_API_OPENGL_33) + // NOTE: glPolygonMode() not available on OpenGL ES + glPolygonMode(GL_FRONT_AND_BACK, GL_POINT); + glEnable(GL_PROGRAM_POINT_SIZE); +#endif +} + +// Disable point mode +void rlDisablePointMode(void) +{ +#if defined(GRAPHICS_API_OPENGL_11) || defined(GRAPHICS_API_OPENGL_33) + // NOTE: glPolygonMode() not available on OpenGL ES + glPolygonMode(GL_FRONT_AND_BACK, GL_FILL); +#endif +} + +// Set the line drawing width +void rlSetLineWidth(float width) { glLineWidth(width); } + +// Get the line drawing width +float rlGetLineWidth(void) +{ + float width = 0; + glGetFloatv(GL_LINE_WIDTH, &width); + return width; +} + +// Set the point drawing size +void rlSetPointSize(float size) +{ +#if defined(GRAPHICS_API_OPENGL_11) + glPointSize(size); +#endif +} + +// Get the point drawing size +float rlGetPointSize(void) +{ + float size = 1; +#if defined(GRAPHICS_API_OPENGL_11) + glGetFloatv(GL_POINT_SIZE, &size); +#endif + return size; + +} + +// Enable line aliasing +void rlEnableSmoothLines(void) +{ +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_11) + glEnable(GL_LINE_SMOOTH); +#endif +} + +// Disable line aliasing +void rlDisableSmoothLines(void) +{ +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_11) + glDisable(GL_LINE_SMOOTH); +#endif +} + +// Enable stereo rendering +void rlEnableStereoRender(void) +{ +#if (defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2)) + RLGL.State.stereoRender = true; +#endif +} + +// Disable stereo rendering +void rlDisableStereoRender(void) +{ +#if (defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2)) + RLGL.State.stereoRender = false; +#endif +} + +// Check if stereo render is enabled +bool rlIsStereoRenderEnabled(void) +{ +#if (defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2)) + return RLGL.State.stereoRender; +#else + return false; +#endif +} + +// Clear color buffer with color +void rlClearColor(unsigned char r, unsigned char g, unsigned char b, unsigned char a) +{ + // Color values clamp to 0.0f(0) and 1.0f(255) + float cr = (float)r/255; + float cg = (float)g/255; + float cb = (float)b/255; + float ca = (float)a/255; + + glClearColor(cr, cg, cb, ca); +} + +// Clear used screen buffers (color and depth) +void rlClearScreenBuffers(void) +{ + glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); // Clear used buffers: Color and Depth (Depth is used for 3D) + //glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT | GL_STENCIL_BUFFER_BIT); // Stencil buffer not used... +} + +// Check and log OpenGL error codes +void rlCheckErrors(void) +{ +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + int check = 1; + while (check) + { + const GLenum err = glGetError(); + switch (err) + { + case GL_NO_ERROR: check = 0; break; + case 0x0500: TRACELOG(RL_LOG_WARNING, "GL: Error detected: GL_INVALID_ENUM"); break; + case 0x0501: TRACELOG(RL_LOG_WARNING, "GL: Error detected: GL_INVALID_VALUE"); break; + case 0x0502: TRACELOG(RL_LOG_WARNING, "GL: Error detected: GL_INVALID_OPERATION"); break; + case 0x0503: TRACELOG(RL_LOG_WARNING, "GL: Error detected: GL_STACK_OVERFLOW"); break; + case 0x0504: TRACELOG(RL_LOG_WARNING, "GL: Error detected: GL_STACK_UNDERFLOW"); break; + case 0x0505: TRACELOG(RL_LOG_WARNING, "GL: Error detected: GL_OUT_OF_MEMORY"); break; + case 0x0506: TRACELOG(RL_LOG_WARNING, "GL: Error detected: GL_INVALID_FRAMEBUFFER_OPERATION"); break; + default: TRACELOG(RL_LOG_WARNING, "GL: Error detected: Unknown error code: %x", err); break; + } + } +#endif +} + +// Set blend mode +void rlSetBlendMode(int mode) +{ +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + if ((RLGL.State.currentBlendMode != mode) || ((mode == RL_BLEND_CUSTOM || mode == RL_BLEND_CUSTOM_SEPARATE) && RLGL.State.glCustomBlendModeModified)) + { + rlDrawRenderBatch(RLGL.currentBatch); + + switch (mode) + { + case RL_BLEND_ALPHA: glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); glBlendEquation(GL_FUNC_ADD); break; + case RL_BLEND_ADDITIVE: glBlendFunc(GL_SRC_ALPHA, GL_ONE); glBlendEquation(GL_FUNC_ADD); break; + case RL_BLEND_MULTIPLIED: glBlendFunc(GL_DST_COLOR, GL_ONE_MINUS_SRC_ALPHA); glBlendEquation(GL_FUNC_ADD); break; + case RL_BLEND_ADD_COLORS: glBlendFunc(GL_ONE, GL_ONE); glBlendEquation(GL_FUNC_ADD); break; + case RL_BLEND_SUBTRACT_COLORS: glBlendFunc(GL_ONE, GL_ONE); glBlendEquation(GL_FUNC_SUBTRACT); break; + case RL_BLEND_ALPHA_PREMULTIPLY: glBlendFunc(GL_ONE, GL_ONE_MINUS_SRC_ALPHA); glBlendEquation(GL_FUNC_ADD); break; + case RL_BLEND_CUSTOM: + { + // NOTE: Using GL blend src/dst factors and GL equation configured with rlSetBlendFactors() + glBlendFunc(RLGL.State.glBlendSrcFactor, RLGL.State.glBlendDstFactor); glBlendEquation(RLGL.State.glBlendEquation); + } break; + case RL_BLEND_CUSTOM_SEPARATE: + { + // NOTE: Using GL blend src/dst factors and GL equation configured with rlSetBlendFactorsSeparate() + glBlendFuncSeparate(RLGL.State.glBlendSrcFactorRGB, RLGL.State.glBlendDestFactorRGB, RLGL.State.glBlendSrcFactorAlpha, RLGL.State.glBlendDestFactorAlpha); + glBlendEquationSeparate(RLGL.State.glBlendEquationRGB, RLGL.State.glBlendEquationAlpha); + } break; + default: break; + } + + RLGL.State.currentBlendMode = mode; + RLGL.State.glCustomBlendModeModified = false; + } +#endif +} + +// Set blending mode factor and equation +void rlSetBlendFactors(int glSrcFactor, int glDstFactor, int glEquation) +{ +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + if ((RLGL.State.glBlendSrcFactor != glSrcFactor) || + (RLGL.State.glBlendDstFactor != glDstFactor) || + (RLGL.State.glBlendEquation != glEquation)) + { + RLGL.State.glBlendSrcFactor = glSrcFactor; + RLGL.State.glBlendDstFactor = glDstFactor; + RLGL.State.glBlendEquation = glEquation; + + RLGL.State.glCustomBlendModeModified = true; + } +#endif +} + +// Set blending mode factor and equation separately for RGB and alpha +void rlSetBlendFactorsSeparate(int glSrcRGB, int glDstRGB, int glSrcAlpha, int glDstAlpha, int glEqRGB, int glEqAlpha) +{ +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + if ((RLGL.State.glBlendSrcFactorRGB != glSrcRGB) || + (RLGL.State.glBlendDestFactorRGB != glDstRGB) || + (RLGL.State.glBlendSrcFactorAlpha != glSrcAlpha) || + (RLGL.State.glBlendDestFactorAlpha != glDstAlpha) || + (RLGL.State.glBlendEquationRGB != glEqRGB) || + (RLGL.State.glBlendEquationAlpha != glEqAlpha)) + { + RLGL.State.glBlendSrcFactorRGB = glSrcRGB; + RLGL.State.glBlendDestFactorRGB = glDstRGB; + RLGL.State.glBlendSrcFactorAlpha = glSrcAlpha; + RLGL.State.glBlendDestFactorAlpha = glDstAlpha; + RLGL.State.glBlendEquationRGB = glEqRGB; + RLGL.State.glBlendEquationAlpha = glEqAlpha; + + RLGL.State.glCustomBlendModeModified = true; + } +#endif +} + +//---------------------------------------------------------------------------------- +// Module Functions Definition - OpenGL Debug +//---------------------------------------------------------------------------------- +#if defined(GRAPHICS_API_OPENGL_43) && RLGL_ENABLE_OPENGL_DEBUG_CONTEXT +static void GLAPIENTRY rlDebugMessageCallback(GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar *message, const void *userParam) +{ + // Ignore non-significant error/warning codes (NVidia drivers) + // NOTE: Here there are the details with a sample output: + // - #131169 - Framebuffer detailed info: The driver allocated storage for renderbuffer 2. (severity: low) + // - #131185 - Buffer detailed info: Buffer object 1 (bound to GL_ELEMENT_ARRAY_BUFFER_ARB, usage hint is GL_ENUM_88e4) + // will use VIDEO memory as the source for buffer object operations. (severity: low) + // - #131218 - Program/shader state performance warning: Vertex shader in program 7 is being recompiled based on GL state. (severity: medium) + // - #131204 - Texture state usage warning: The texture object (0) bound to texture image unit 0 does not have + // a defined base level and cannot be used for texture mapping. (severity: low) + if ((id == 131169) || (id == 131185) || (id == 131218) || (id == 131204)) return; + + const char *msgSource = NULL; + switch (source) + { + case GL_DEBUG_SOURCE_API: msgSource = "API"; break; + case GL_DEBUG_SOURCE_WINDOW_SYSTEM: msgSource = "WINDOW_SYSTEM"; break; + case GL_DEBUG_SOURCE_SHADER_COMPILER: msgSource = "SHADER_COMPILER"; break; + case GL_DEBUG_SOURCE_THIRD_PARTY: msgSource = "THIRD_PARTY"; break; + case GL_DEBUG_SOURCE_APPLICATION: msgSource = "APPLICATION"; break; + case GL_DEBUG_SOURCE_OTHER: msgSource = "OTHER"; break; + default: break; + } + + const char *msgType = NULL; + switch (type) + { + case GL_DEBUG_TYPE_ERROR: msgType = "ERROR"; break; + case GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR: msgType = "DEPRECATED_BEHAVIOR"; break; + case GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR: msgType = "UNDEFINED_BEHAVIOR"; break; + case GL_DEBUG_TYPE_PORTABILITY: msgType = "PORTABILITY"; break; + case GL_DEBUG_TYPE_PERFORMANCE: msgType = "PERFORMANCE"; break; + case GL_DEBUG_TYPE_MARKER: msgType = "MARKER"; break; + case GL_DEBUG_TYPE_PUSH_GROUP: msgType = "PUSH_GROUP"; break; + case GL_DEBUG_TYPE_POP_GROUP: msgType = "POP_GROUP"; break; + case GL_DEBUG_TYPE_OTHER: msgType = "OTHER"; break; + default: break; + } + + const char *msgSeverity = "DEFAULT"; + switch (severity) + { + case GL_DEBUG_SEVERITY_LOW: msgSeverity = "LOW"; break; + case GL_DEBUG_SEVERITY_MEDIUM: msgSeverity = "MEDIUM"; break; + case GL_DEBUG_SEVERITY_HIGH: msgSeverity = "HIGH"; break; + case GL_DEBUG_SEVERITY_NOTIFICATION: msgSeverity = "NOTIFICATION"; break; + default: break; + } + + TRACELOG(RL_LOG_WARNING, "GL: OpenGL debug message: %s", message); + TRACELOG(RL_LOG_WARNING, " > Type: %s", msgType); + TRACELOG(RL_LOG_WARNING, " > Source = %s", msgSource); + TRACELOG(RL_LOG_WARNING, " > Severity = %s", msgSeverity); +} +#endif + +//---------------------------------------------------------------------------------- +// Module Functions Definition - rlgl functionality +//---------------------------------------------------------------------------------- + +// Initialize rlgl: OpenGL extensions, default buffers/shaders/textures, OpenGL states +void rlglInit(int width, int height) +{ + isGpuReady = true; + + // Enable OpenGL debug context if requested (and supported) +#if defined(GRAPHICS_API_OPENGL_43) && RLGL_ENABLE_OPENGL_DEBUG_CONTEXT + if ((glDebugMessageCallback != NULL) && (glDebugMessageControl != NULL)) + { + glDebugMessageCallback(rlDebugMessageCallback, 0); + // glDebugMessageControl(GL_DEBUG_SOURCE_API, GL_DEBUG_TYPE_ERROR, GL_DEBUG_SEVERITY_HIGH, 0, 0, GL_TRUE); + + // Debug context options: + // - GL_DEBUG_OUTPUT - Faster version but not useful for breakpoints + // - GL_DEBUG_OUTPUT_SYNCHRONUS - Callback is in sync with errors, so a breakpoint can be placed on the callback in order to get a stacktrace for the GL error + glEnable(GL_DEBUG_OUTPUT); + glEnable(GL_DEBUG_OUTPUT_SYNCHRONOUS); + } +#endif + +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + // Init default white texture + unsigned char pixels[4] = { 255, 255, 255, 255 }; // 1 pixel RGBA (4 bytes) + RLGL.State.defaultTextureId = rlLoadTexture(pixels, 1, 1, RL_PIXELFORMAT_UNCOMPRESSED_R8G8B8A8, 1); + RLGL.State.currentTextureId = RLGL.State.defaultTextureId; + + if (RLGL.State.defaultTextureId != 0) TRACELOG(RL_LOG_INFO, "TEXTURE: [ID %i] Default texture loaded successfully", RLGL.State.defaultTextureId); + else TRACELOG(RL_LOG_WARNING, "TEXTURE: Failed to load default texture"); + + // Init default Shader (customized for GL 3.3 and ES2) + // Loaded: RLGL.State.defaultShaderId + RLGL.State.defaultShaderLocs + rlLoadShaderDefault(); + RLGL.State.currentShaderId = RLGL.State.defaultShaderId; + RLGL.State.currentShaderLocs = RLGL.State.defaultShaderLocs; + + // Init default vertex arrays buffers + // Simulate that the default shader has the location RL_SHADER_LOC_VERTEX_NORMAL to bind the normal buffer for the default render batch + RLGL.State.currentShaderLocs[RL_SHADER_LOC_VERTEX_NORMAL] = RL_DEFAULT_SHADER_ATTRIB_LOCATION_NORMAL; + RLGL.defaultBatch = rlLoadRenderBatch(RL_DEFAULT_BATCH_BUFFERS, RL_DEFAULT_BATCH_BUFFER_ELEMENTS); + RLGL.State.currentShaderLocs[RL_SHADER_LOC_VERTEX_NORMAL] = -1; + RLGL.currentBatch = &RLGL.defaultBatch; + + // Init stack matrices (emulating OpenGL 1.1) + for (int i = 0; i < RL_MAX_MATRIX_STACK_SIZE; i++) RLGL.State.stack[i] = rlMatrixIdentity(); + + // Init internal matrices + RLGL.State.transform = rlMatrixIdentity(); + RLGL.State.projection = rlMatrixIdentity(); + RLGL.State.modelview = rlMatrixIdentity(); + RLGL.State.currentMatrix = &RLGL.State.modelview; +#endif // GRAPHICS_API_OPENGL_33 || GRAPHICS_API_OPENGL_ES2 + +#if defined(GRAPHICS_API_OPENGL_11_SOFTWARE) + // Initialize software renderer backend + int result = swInit(width, height); + if (result == 0) + { + TRACELOG(RL_LOG_ERROR, "RLSW: Software renderer initialization failed!"); + exit(-1); + } +#endif + + // Initialize OpenGL default states + //---------------------------------------------------------- + // Init state: Depth test + glDepthFunc(GL_LEQUAL); // Type of depth testing to apply + glDisable(GL_DEPTH_TEST); // Disable depth testing for 2D (only used for 3D) + + // Init state: Blending mode + glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); // Color blending function (how colors are mixed) + glEnable(GL_BLEND); // Enable color blending (required to work with transparencies) + + // Init state: Culling + // NOTE: All shapes/models triangles are drawn CCW + glCullFace(GL_BACK); // Cull the back face (default) + glFrontFace(GL_CCW); // Front face are defined counter clockwise (default) + glEnable(GL_CULL_FACE); // Enable backface culling + +#if defined(GRAPHICS_API_OPENGL_11) + // Init state: Color hints (deprecated in OpenGL 3.0+) + glHint(GL_PERSPECTIVE_CORRECTION_HINT, GL_NICEST); // Improve quality of color and texture coordinate interpolation + glShadeModel(GL_SMOOTH); // Smooth shading between vertex (vertex colors interpolation) +#endif +#if defined(GRAPHICS_API_OPENGL_33) + // Init state: Cubemap seamless + glEnable(GL_TEXTURE_CUBE_MAP_SEAMLESS); // Seamless cubemaps (not supported on OpenGL ES 2.0) +#endif +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + // Store screen size into global variables + RLGL.State.framebufferWidth = width; + RLGL.State.framebufferHeight = height; +#endif + + // Init state: Color/Depth buffers clear + glClearColor(0.0f, 0.0f, 0.0f, 1.0f); // Set clear color (black) + glClearDepth(1.0f); // Set clear depth value (default) + glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); // Clear color and depth buffers (depth buffer required for 3D) + + TRACELOG(RL_LOG_INFO, "RLGL: Default OpenGL state initialized successfully"); + //---------------------------------------------------------- +} + +// Vertex Buffer Object deinitialization (memory free) +void rlglClose(void) +{ +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + rlUnloadRenderBatch(RLGL.defaultBatch); + + rlUnloadShaderDefault(); // Unload default shader + + glDeleteTextures(1, &RLGL.State.defaultTextureId); // Unload default texture + TRACELOG(RL_LOG_INFO, "TEXTURE: [ID %i] Default texture unloaded successfully", RLGL.State.defaultTextureId); +#endif + +#if defined(GRAPHICS_API_OPENGL_11_SOFTWARE) + swClose(); // Unload sofware renderer resources +#endif + isGpuReady = false; +} + +// Load OpenGL extensions +// NOTE: External loader function must be provided +void rlLoadExtensions(void *loader) +{ +#if defined(GRAPHICS_API_OPENGL_33) // Also defined for GRAPHICS_API_OPENGL_21 + // NOTE: glad is generated and contains only required OpenGL 3.3 Core extensions (and lower versions) + if (gladLoadGL((GLADloadfunc)loader) == 0) TRACELOG(RL_LOG_WARNING, "GLAD: Cannot load OpenGL extensions"); + else TRACELOG(RL_LOG_INFO, "GLAD: OpenGL extensions loaded successfully"); + + // Get number of supported extensions + GLint numExt = 0; + glGetIntegerv(GL_NUM_EXTENSIONS, &numExt); + TRACELOG(RL_LOG_INFO, "GL: Supported extensions count: %i", numExt); + +#if RLGL_SHOW_GL_DETAILS_INFO + // Get supported extensions list + // WARNING: glGetStringi() not available on OpenGL 2.1 + TRACELOG(RL_LOG_INFO, "GL: OpenGL extensions:"); + for (int i = 0; i < numExt; i++) TRACELOG(RL_LOG_INFO, " %s", glGetStringi(GL_EXTENSIONS, i)); +#endif + +#if defined(GRAPHICS_API_OPENGL_21) + // Register supported extensions flags + // Optional OpenGL 2.1 extensions + RLGL.ExtSupported.vao = GLAD_GL_ARB_vertex_array_object; + RLGL.ExtSupported.instancing = (GLAD_GL_EXT_draw_instanced && GLAD_GL_ARB_instanced_arrays); + RLGL.ExtSupported.texNPOT = GLAD_GL_ARB_texture_non_power_of_two; + RLGL.ExtSupported.texFloat32 = GLAD_GL_ARB_texture_float; + RLGL.ExtSupported.texFloat16 = GLAD_GL_ARB_texture_float; + RLGL.ExtSupported.texDepth = GLAD_GL_ARB_depth_texture; + RLGL.ExtSupported.maxDepthBits = 32; + RLGL.ExtSupported.texAnisoFilter = GLAD_GL_EXT_texture_filter_anisotropic; + RLGL.ExtSupported.texMirrorClamp = GLAD_GL_EXT_texture_mirror_clamp; +#else + // Register supported extensions flags + // OpenGL 3.3 extensions supported by default (core) + RLGL.ExtSupported.vao = true; + RLGL.ExtSupported.instancing = true; + RLGL.ExtSupported.texNPOT = true; + RLGL.ExtSupported.texFloat32 = true; + RLGL.ExtSupported.texFloat16 = true; + RLGL.ExtSupported.texDepth = true; + RLGL.ExtSupported.maxDepthBits = 32; + RLGL.ExtSupported.texAnisoFilter = true; + RLGL.ExtSupported.texMirrorClamp = true; +#endif + + // Optional OpenGL 3.3 extensions + RLGL.ExtSupported.texCompASTC = GLAD_GL_KHR_texture_compression_astc_hdr && GLAD_GL_KHR_texture_compression_astc_ldr; + RLGL.ExtSupported.texCompDXT = GLAD_GL_EXT_texture_compression_s3tc; // Texture compression: DXT + RLGL.ExtSupported.texCompETC2 = GLAD_GL_ARB_ES3_compatibility; // Texture compression: ETC2/EAC + #if defined(GRAPHICS_API_OPENGL_43) + RLGL.ExtSupported.computeShader = GLAD_GL_ARB_compute_shader; + RLGL.ExtSupported.ssbo = GLAD_GL_ARB_shader_storage_buffer_object; + #endif + +#endif // GRAPHICS_API_OPENGL_33 + +#if defined(GRAPHICS_API_OPENGL_ES3) + // Register supported extensions flags + // OpenGL ES 3.0 extensions supported by default (or it should be) + RLGL.ExtSupported.vao = true; + RLGL.ExtSupported.instancing = true; + RLGL.ExtSupported.texNPOT = true; + RLGL.ExtSupported.texFloat32 = true; + RLGL.ExtSupported.texFloat16 = true; + RLGL.ExtSupported.texDepth = true; + RLGL.ExtSupported.texDepthWebGL = true; + RLGL.ExtSupported.maxDepthBits = 24; + RLGL.ExtSupported.texAnisoFilter = true; + RLGL.ExtSupported.texMirrorClamp = true; + // TODO: Check for additional OpenGL ES 3.0 supported extensions: + //RLGL.ExtSupported.texCompDXT = true; + //RLGL.ExtSupported.texCompETC1 = true; + //RLGL.ExtSupported.texCompETC2 = true; + //RLGL.ExtSupported.texCompPVRT = true; + //RLGL.ExtSupported.texCompASTC = true; + //RLGL.ExtSupported.maxAnisotropyLevel = true; + //RLGL.ExtSupported.computeShader = true; + //RLGL.ExtSupported.ssbo = true; + +#elif defined(GRAPHICS_API_OPENGL_ES2) + + #if defined(PLATFORM_DESKTOP_GLFW) || defined(PLATFORM_DESKTOP_SDL) + // TODO: Support GLAD loader for OpenGL ES 3.0 + if (gladLoadGLES2((GLADloadfunc)loader) == 0) TRACELOG(RL_LOG_WARNING, "GLAD: Cannot load OpenGL ES2.0 functions"); + else TRACELOG(RL_LOG_INFO, "GLAD: OpenGL ES 2.0 loaded successfully"); + #endif + + // Get supported extensions list + GLint numExt = 0; + const char **extList = (const char **)RL_CALLOC(512, sizeof(const char *)); // Allocate 512 strings pointers (2 KB) + const char *extensions = (const char *)glGetString(GL_EXTENSIONS); // One big const string + + // NOTE: String duplication rquired because glGetString() returns a const string + int extensionsLength = (int)strlen(extensions); // Get extensions string size in bytes + char *extensionsDup = (char *)RL_CALLOC(extensionsLength + 1, sizeof(char)); // Allocate space for copy with additional EOL byte + strncpy(extensionsDup, extensions, extensionsLength); + extList[numExt] = extensionsDup; + + for (int i = 0; i < extensionsLength; i++) + { + if (extensionsDup[i] == ' ') + { + extensionsDup[i] = '\0'; + numExt++; + extList[numExt] = &extensionsDup[i + 1]; + } + } + + TRACELOG(RL_LOG_INFO, "GL: Supported extensions count: %i", numExt); + +#if RLGL_SHOW_GL_DETAILS_INFO + TRACELOG(RL_LOG_INFO, "GL: OpenGL extensions:"); + for (int i = 0; i < numExt; i++) TRACELOG(RL_LOG_INFO, " %s", extList[i]); +#endif + + // Check required extensions + for (int i = 0; i < numExt; i++) + { + // Check VAO support + // NOTE: Only check on OpenGL ES, OpenGL 3.3 has VAO support as core feature + if (strcmp(extList[i], (const char *)"GL_OES_vertex_array_object") == 0) + { + // The extension is supported by our hardware and driver, try to get related functions pointers + // NOTE: emscripten does not support VAOs natively, it uses emulation and it reduces overall performance... + glGenVertexArrays = (PFNGLGENVERTEXARRAYSOESPROC)((rlglLoadProc)loader)("glGenVertexArraysOES"); + glBindVertexArray = (PFNGLBINDVERTEXARRAYOESPROC)((rlglLoadProc)loader)("glBindVertexArrayOES"); + glDeleteVertexArrays = (PFNGLDELETEVERTEXARRAYSOESPROC)((rlglLoadProc)loader)("glDeleteVertexArraysOES"); + //glIsVertexArray = (PFNGLISVERTEXARRAYOESPROC)loader("glIsVertexArrayOES"); // NOTE: Fails in WebGL, omitted + + if ((glGenVertexArrays != NULL) && (glBindVertexArray != NULL) && (glDeleteVertexArrays != NULL)) RLGL.ExtSupported.vao = true; + } + + // Check instanced rendering support + if (strstr(extList[i], (const char *)"instanced_arrays") != NULL) // Broad check for instanced_arrays + { + // Specific check + if (strcmp(extList[i], (const char *)"GL_ANGLE_instanced_arrays") == 0) // ANGLE + { + glDrawArraysInstanced = (PFNGLDRAWARRAYSINSTANCEDEXTPROC)((rlglLoadProc)loader)("glDrawArraysInstancedANGLE"); + glDrawElementsInstanced = (PFNGLDRAWELEMENTSINSTANCEDEXTPROC)((rlglLoadProc)loader)("glDrawElementsInstancedANGLE"); + glVertexAttribDivisor = (PFNGLVERTEXATTRIBDIVISOREXTPROC)((rlglLoadProc)loader)("glVertexAttribDivisorANGLE"); + } + else if (strcmp(extList[i], (const char *)"GL_EXT_instanced_arrays") == 0) // EXT + { + glDrawArraysInstanced = (PFNGLDRAWARRAYSINSTANCEDEXTPROC)((rlglLoadProc)loader)("glDrawArraysInstancedEXT"); + glDrawElementsInstanced = (PFNGLDRAWELEMENTSINSTANCEDEXTPROC)((rlglLoadProc)loader)("glDrawElementsInstancedEXT"); + glVertexAttribDivisor = (PFNGLVERTEXATTRIBDIVISOREXTPROC)((rlglLoadProc)loader)("glVertexAttribDivisorEXT"); + } + else if (strcmp(extList[i], (const char *)"GL_NV_instanced_arrays") == 0) // NVIDIA GLES + { + glDrawArraysInstanced = (PFNGLDRAWARRAYSINSTANCEDEXTPROC)((rlglLoadProc)loader)("glDrawArraysInstancedNV"); + glDrawElementsInstanced = (PFNGLDRAWELEMENTSINSTANCEDEXTPROC)((rlglLoadProc)loader)("glDrawElementsInstancedNV"); + glVertexAttribDivisor = (PFNGLVERTEXATTRIBDIVISOREXTPROC)((rlglLoadProc)loader)("glVertexAttribDivisorNV"); + } + + // The feature will only be marked as supported if the elements from GL_XXX_instanced_arrays are present + if ((glDrawArraysInstanced != NULL) && (glDrawElementsInstanced != NULL) && (glVertexAttribDivisor != NULL)) RLGL.ExtSupported.instancing = true; + } + else if (strstr(extList[i], (const char *)"draw_instanced") != NULL) + { + // GL_ANGLE_draw_instanced doesn't exist + if (strcmp(extList[i], (const char *)"GL_EXT_draw_instanced") == 0) + { + glDrawArraysInstanced = (PFNGLDRAWARRAYSINSTANCEDEXTPROC)((rlglLoadProc)loader)("glDrawArraysInstancedEXT"); + glDrawElementsInstanced = (PFNGLDRAWELEMENTSINSTANCEDEXTPROC)((rlglLoadProc)loader)("glDrawElementsInstancedEXT"); + } + else if (strcmp(extList[i], (const char *)"GL_NV_draw_instanced") == 0) + { + glDrawArraysInstanced = (PFNGLDRAWARRAYSINSTANCEDEXTPROC)((rlglLoadProc)loader)("glDrawArraysInstancedNV"); + glDrawElementsInstanced = (PFNGLDRAWELEMENTSINSTANCEDEXTPROC)((rlglLoadProc)loader)("glDrawElementsInstancedNV"); + } + + // But the functions will at least be loaded if only GL_XX_EXT_draw_instanced exist + if ((glDrawArraysInstanced != NULL) && (glDrawElementsInstanced != NULL) && (glVertexAttribDivisor != NULL)) RLGL.ExtSupported.instancing = true; + } + + // Check NPOT textures support + // NOTE: Only check on OpenGL ES, OpenGL 3.3 has NPOT textures full support as core feature + if (strcmp(extList[i], (const char *)"GL_OES_texture_npot") == 0) RLGL.ExtSupported.texNPOT = true; + + // Check texture float support + if (strcmp(extList[i], (const char *)"GL_OES_texture_float") == 0) RLGL.ExtSupported.texFloat32 = true; + if (strcmp(extList[i], (const char *)"GL_OES_texture_half_float") == 0) RLGL.ExtSupported.texFloat16 = true; + + // Check depth texture support + if (strcmp(extList[i], (const char *)"GL_OES_depth_texture") == 0) RLGL.ExtSupported.texDepth = true; + if (strcmp(extList[i], (const char *)"GL_WEBGL_depth_texture") == 0) RLGL.ExtSupported.texDepthWebGL = true; // WebGL requires unsized internal format + if (RLGL.ExtSupported.texDepthWebGL) RLGL.ExtSupported.texDepth = true; + + if (strcmp(extList[i], (const char *)"GL_OES_depth24") == 0) RLGL.ExtSupported.maxDepthBits = 24; // Not available on WebGL + if (strcmp(extList[i], (const char *)"GL_OES_depth32") == 0) RLGL.ExtSupported.maxDepthBits = 32; // Not available on WebGL + + // Check texture compression support: DXT + if ((strcmp(extList[i], (const char *)"GL_EXT_texture_compression_s3tc") == 0) || + (strcmp(extList[i], (const char *)"GL_WEBGL_compressed_texture_s3tc") == 0) || + (strcmp(extList[i], (const char *)"GL_WEBKIT_WEBGL_compressed_texture_s3tc") == 0)) RLGL.ExtSupported.texCompDXT = true; + + // Check texture compression support: ETC1 + if ((strcmp(extList[i], (const char *)"GL_OES_compressed_ETC1_RGB8_texture") == 0) || + (strcmp(extList[i], (const char *)"GL_WEBGL_compressed_texture_etc1") == 0)) RLGL.ExtSupported.texCompETC1 = true; + + // Check texture compression support: ETC2/EAC + if (strcmp(extList[i], (const char *)"GL_ARB_ES3_compatibility") == 0) RLGL.ExtSupported.texCompETC2 = true; + + // Check texture compression support: PVR + if (strcmp(extList[i], (const char *)"GL_IMG_texture_compression_pvrtc") == 0) RLGL.ExtSupported.texCompPVRT = true; + + // Check texture compression support: ASTC + if (strcmp(extList[i], (const char *)"GL_KHR_texture_compression_astc_hdr") == 0) RLGL.ExtSupported.texCompASTC = true; + + // Check anisotropic texture filter support + if (strcmp(extList[i], (const char *)"GL_EXT_texture_filter_anisotropic") == 0) RLGL.ExtSupported.texAnisoFilter = true; + + // Check clamp mirror wrap mode support + if (strcmp(extList[i], (const char *)"GL_EXT_texture_mirror_clamp") == 0) RLGL.ExtSupported.texMirrorClamp = true; + } + + // Free extensions pointers + RL_FREE(extList); + RL_FREE(extensionsDup); // Duplicated string must be deallocated +#endif // GRAPHICS_API_OPENGL_ES2 + + // Check OpenGL information and capabilities + //------------------------------------------------------------------------------ + // Show current OpenGL and GLSL version + TRACELOG(RL_LOG_INFO, "GL: OpenGL device information:"); + TRACELOG(RL_LOG_INFO, " > Vendor: %s", glGetString(GL_VENDOR)); + TRACELOG(RL_LOG_INFO, " > Renderer: %s", glGetString(GL_RENDERER)); + TRACELOG(RL_LOG_INFO, " > Version: %s", glGetString(GL_VERSION)); + TRACELOG(RL_LOG_INFO, " > GLSL: %s", glGetString(GL_SHADING_LANGUAGE_VERSION)); + +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + RLGL.loader = (rlglLoadProc)loader; + + // NOTE: Anisotropy levels capability is an extension + #ifndef GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT + #define GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT 0x84FF + #endif + glGetFloatv(GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT, &RLGL.ExtSupported.maxAnisotropyLevel); + +#if RLGL_SHOW_GL_DETAILS_INFO + // Show some OpenGL GPU capabilities + TRACELOG(RL_LOG_INFO, "GL: OpenGL capabilities:"); + GLint capability = 0; + glGetIntegerv(GL_MAX_TEXTURE_SIZE, &capability); + TRACELOG(RL_LOG_INFO, " GL_MAX_TEXTURE_SIZE: %i", capability); + glGetIntegerv(GL_MAX_CUBE_MAP_TEXTURE_SIZE, &capability); + TRACELOG(RL_LOG_INFO, " GL_MAX_CUBE_MAP_TEXTURE_SIZE: %i", capability); + glGetIntegerv(GL_MAX_TEXTURE_IMAGE_UNITS, &capability); + TRACELOG(RL_LOG_INFO, " GL_MAX_TEXTURE_IMAGE_UNITS: %i", capability); + glGetIntegerv(GL_MAX_VERTEX_ATTRIBS, &capability); + TRACELOG(RL_LOG_INFO, " GL_MAX_VERTEX_ATTRIBS: %i", capability); + #if !defined(GRAPHICS_API_OPENGL_ES2) + glGetIntegerv(GL_MAX_UNIFORM_BLOCK_SIZE, &capability); + TRACELOG(RL_LOG_INFO, " GL_MAX_UNIFORM_BLOCK_SIZE: %i", capability); + glGetIntegerv(GL_MAX_DRAW_BUFFERS, &capability); + TRACELOG(RL_LOG_INFO, " GL_MAX_DRAW_BUFFERS: %i", capability); + if (RLGL.ExtSupported.texAnisoFilter) TRACELOG(RL_LOG_INFO, " GL_MAX_TEXTURE_MAX_ANISOTROPY: %.0f", RLGL.ExtSupported.maxAnisotropyLevel); + #endif + glGetIntegerv(GL_NUM_COMPRESSED_TEXTURE_FORMATS, &capability); + TRACELOG(RL_LOG_INFO, " GL_NUM_COMPRESSED_TEXTURE_FORMATS: %i", capability); + GLint *compFormats = (GLint *)RL_CALLOC(capability, sizeof(GLint)); + glGetIntegerv(GL_COMPRESSED_TEXTURE_FORMATS, compFormats); + for (int i = 0; i < capability; i++) TRACELOG(RL_LOG_INFO, " %s", rlGetCompressedFormatName(compFormats[i])); + RL_FREE(compFormats); + +#if defined(GRAPHICS_API_OPENGL_43) + glGetIntegerv(GL_MAX_VERTEX_ATTRIB_BINDINGS, &capability); + TRACELOG(RL_LOG_INFO, " GL_MAX_VERTEX_ATTRIB_BINDINGS: %i", capability); + glGetIntegerv(GL_MAX_UNIFORM_LOCATIONS, &capability); + TRACELOG(RL_LOG_INFO, " GL_MAX_UNIFORM_LOCATIONS: %i", capability); +#endif + +#else // !RLGL_SHOW_GL_DETAILS_INFO + + // Show some basic info about GL supported features + if (RLGL.ExtSupported.vao) TRACELOG(RL_LOG_INFO, "GL: VAO extension detected, VAO functions loaded successfully"); + else TRACELOG(RL_LOG_WARNING, "GL: VAO extension not found, VAO not supported"); + if (RLGL.ExtSupported.texNPOT) TRACELOG(RL_LOG_INFO, "GL: NPOT textures extension detected, full NPOT textures supported"); + else TRACELOG(RL_LOG_WARNING, "GL: NPOT textures extension not found, limited NPOT support (no-mipmaps, no-repeat)"); + if (RLGL.ExtSupported.texCompDXT) TRACELOG(RL_LOG_INFO, "GL: DXT compressed textures supported"); + if (RLGL.ExtSupported.texCompETC1) TRACELOG(RL_LOG_INFO, "GL: ETC1 compressed textures supported"); + if (RLGL.ExtSupported.texCompETC2) TRACELOG(RL_LOG_INFO, "GL: ETC2/EAC compressed textures supported"); + if (RLGL.ExtSupported.texCompPVRT) TRACELOG(RL_LOG_INFO, "GL: PVRT compressed textures supported"); + if (RLGL.ExtSupported.texCompASTC) TRACELOG(RL_LOG_INFO, "GL: ASTC compressed textures supported"); + if (RLGL.ExtSupported.computeShader) TRACELOG(RL_LOG_INFO, "GL: Compute shaders supported"); + if (RLGL.ExtSupported.ssbo) TRACELOG(RL_LOG_INFO, "GL: Shader storage buffer objects supported"); +#endif + +#endif // GRAPHICS_API_OPENGL_33 || GRAPHICS_API_OPENGL_ES2 +} + +// Get OpenGL procedure address +void *rlGetProcAddress(const char *procName) +{ + void *func = NULL; +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + func = RLGL.loader(procName); +#endif + return func; +} + +// Get current OpenGL version +int rlGetVersion(void) +{ + int glVersion = 0; + +#if defined(GRAPHICS_API_OPENGL_11_SOFTWARE) + glVersion = RL_OPENGL_11_SOFTWARE; +#elif defined(GRAPHICS_API_OPENGL_11) + glVersion = RL_OPENGL_11; +#endif +#if defined(GRAPHICS_API_OPENGL_21) + glVersion = RL_OPENGL_21; +#elif defined(GRAPHICS_API_OPENGL_43) + glVersion = RL_OPENGL_43; +#elif defined(GRAPHICS_API_OPENGL_33) + glVersion = RL_OPENGL_33; +#endif +#if defined(GRAPHICS_API_OPENGL_ES3) + glVersion = RL_OPENGL_ES_30; +#elif defined(GRAPHICS_API_OPENGL_ES2) + glVersion = RL_OPENGL_ES_20; +#endif + + return glVersion; +} + +// Set current framebuffer width +void rlSetFramebufferWidth(int width) +{ +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + RLGL.State.framebufferWidth = width; +#endif +} + +// Set current framebuffer height +void rlSetFramebufferHeight(int height) +{ +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + RLGL.State.framebufferHeight = height; +#endif +} + +// Get default framebuffer width +int rlGetFramebufferWidth(void) +{ + int width = 0; +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + width = RLGL.State.framebufferWidth; +#endif + return width; +} + +// Get default framebuffer height +int rlGetFramebufferHeight(void) +{ + int height = 0; +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + height = RLGL.State.framebufferHeight; +#endif + return height; +} + +// Get default internal texture (white texture) +// NOTE: Default texture is a 1x1 pixel UNCOMPRESSED_R8G8B8A8 +unsigned int rlGetTextureIdDefault(void) +{ + unsigned int id = 0; +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + id = RLGL.State.defaultTextureId; +#endif + return id; +} + +// Get default shader id +unsigned int rlGetShaderIdDefault(void) +{ + unsigned int id = 0; +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + id = RLGL.State.defaultShaderId; +#endif + return id; +} + +// Get default shader locs +int *rlGetShaderLocsDefault(void) +{ + int *locs = NULL; +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + locs = RLGL.State.defaultShaderLocs; +#endif + return locs; +} + +// Render batch management +//------------------------------------------------------------------------------------------------ +// Load render batch +rlRenderBatch rlLoadRenderBatch(int numBuffers, int bufferElements) +{ + rlRenderBatch batch = { 0 }; + if (!isGpuReady) { TRACELOG(RL_LOG_WARNING, "GL: GPU is not ready to load data, trying to load before InitWindow()?"); return batch; } + +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + // Initialize CPU (RAM) vertex buffers (position, texcoord, color data and indexes) + //-------------------------------------------------------------------------------------------- + batch.vertexBuffer = (rlVertexBuffer *)RL_CALLOC(numBuffers, sizeof(rlVertexBuffer)); + + for (int i = 0; i < numBuffers; i++) + { + batch.vertexBuffer[i].elementCount = bufferElements; + + batch.vertexBuffer[i].vertices = (float *)RL_CALLOC(bufferElements*3*4, sizeof(float)); // 3 float by vertex, 4 vertex by quad + batch.vertexBuffer[i].texcoords = (float *)RL_CALLOC(bufferElements*2*4, sizeof(float)); // 2 float by texcoord, 4 texcoord by quad + batch.vertexBuffer[i].normals = (float *)RL_CALLOC(bufferElements*3*4, sizeof(float)); // 3 float by vertex, 4 vertex by quad + batch.vertexBuffer[i].colors = (unsigned char *)RL_CALLOC(bufferElements*4*4, sizeof(unsigned char)); // 4 float by color, 4 colors by quad +#if defined(GRAPHICS_API_OPENGL_33) + batch.vertexBuffer[i].indices = (unsigned int *)RL_CALLOC(bufferElements*6, sizeof(unsigned int)); // 6 int by quad (indices) +#endif +#if defined(GRAPHICS_API_OPENGL_ES2) + batch.vertexBuffer[i].indices = (unsigned short *)RL_CALLOC(bufferElements*6, sizeof(unsigned short)); // 6 int by quad (indices) +#endif + + for (int j = 0; j < (3*4*bufferElements); j++) batch.vertexBuffer[i].vertices[j] = 0.0f; + for (int j = 0; j < (2*4*bufferElements); j++) batch.vertexBuffer[i].texcoords[j] = 0.0f; + for (int j = 0; j < (3*4*bufferElements); j++) batch.vertexBuffer[i].normals[j] = 0.0f; + for (int j = 0; j < (4*4*bufferElements); j++) batch.vertexBuffer[i].colors[j] = 0; + + int k = 0; + + // Indices can be initialized right now + for (int j = 0; j < (6*bufferElements); j += 6) + { + batch.vertexBuffer[i].indices[j] = 4*k; + batch.vertexBuffer[i].indices[j + 1] = 4*k + 1; + batch.vertexBuffer[i].indices[j + 2] = 4*k + 2; + batch.vertexBuffer[i].indices[j + 3] = 4*k; + batch.vertexBuffer[i].indices[j + 4] = 4*k + 2; + batch.vertexBuffer[i].indices[j + 5] = 4*k + 3; + + k++; + } + + RLGL.State.vertexCounter = 0; + } + + TRACELOG(RL_LOG_INFO, "RLGL: Render batch vertex buffers loaded successfully in RAM (CPU)"); + //-------------------------------------------------------------------------------------------- + + // Upload to GPU (VRAM) vertex data and initialize VAOs/VBOs + //-------------------------------------------------------------------------------------------- + for (int i = 0; i < numBuffers; i++) + { + if (RLGL.ExtSupported.vao) + { + // Initialize Quads VAO + glGenVertexArrays(1, &batch.vertexBuffer[i].vaoId); + glBindVertexArray(batch.vertexBuffer[i].vaoId); + } + + // Quads - Vertex buffers binding and attributes enable + // Vertex position buffer (shader-location = 0) + glGenBuffers(1, &batch.vertexBuffer[i].vboId[0]); + glBindBuffer(GL_ARRAY_BUFFER, batch.vertexBuffer[i].vboId[0]); + glBufferData(GL_ARRAY_BUFFER, bufferElements*3*4*sizeof(float), batch.vertexBuffer[i].vertices, GL_DYNAMIC_DRAW); + glEnableVertexAttribArray(RLGL.State.currentShaderLocs[RL_SHADER_LOC_VERTEX_POSITION]); + glVertexAttribPointer(RLGL.State.currentShaderLocs[RL_SHADER_LOC_VERTEX_POSITION], 3, GL_FLOAT, 0, 0, 0); + + // Vertex texcoord buffer (shader-location = 1) + glGenBuffers(1, &batch.vertexBuffer[i].vboId[1]); + glBindBuffer(GL_ARRAY_BUFFER, batch.vertexBuffer[i].vboId[1]); + glBufferData(GL_ARRAY_BUFFER, bufferElements*2*4*sizeof(float), batch.vertexBuffer[i].texcoords, GL_DYNAMIC_DRAW); + glEnableVertexAttribArray(RLGL.State.currentShaderLocs[RL_SHADER_LOC_VERTEX_TEXCOORD01]); + glVertexAttribPointer(RLGL.State.currentShaderLocs[RL_SHADER_LOC_VERTEX_TEXCOORD01], 2, GL_FLOAT, 0, 0, 0); + + // Vertex normal buffer (shader-location = 2) + glGenBuffers(1, &batch.vertexBuffer[i].vboId[2]); + glBindBuffer(GL_ARRAY_BUFFER, batch.vertexBuffer[i].vboId[2]); + glBufferData(GL_ARRAY_BUFFER, bufferElements*3*4*sizeof(float), batch.vertexBuffer[i].normals, GL_DYNAMIC_DRAW); + glEnableVertexAttribArray(RLGL.State.currentShaderLocs[RL_SHADER_LOC_VERTEX_NORMAL]); + glVertexAttribPointer(RLGL.State.currentShaderLocs[RL_SHADER_LOC_VERTEX_NORMAL], 3, GL_FLOAT, 0, 0, 0); + + // Vertex color buffer (shader-location = 3) + glGenBuffers(1, &batch.vertexBuffer[i].vboId[3]); + glBindBuffer(GL_ARRAY_BUFFER, batch.vertexBuffer[i].vboId[3]); + glBufferData(GL_ARRAY_BUFFER, bufferElements*4*4*sizeof(unsigned char), batch.vertexBuffer[i].colors, GL_DYNAMIC_DRAW); + glEnableVertexAttribArray(RLGL.State.currentShaderLocs[RL_SHADER_LOC_VERTEX_COLOR]); + glVertexAttribPointer(RLGL.State.currentShaderLocs[RL_SHADER_LOC_VERTEX_COLOR], 4, GL_UNSIGNED_BYTE, GL_TRUE, 0, 0); + + // Fill index buffer + glGenBuffers(1, &batch.vertexBuffer[i].vboId[4]); + glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, batch.vertexBuffer[i].vboId[4]); +#if defined(GRAPHICS_API_OPENGL_33) + glBufferData(GL_ELEMENT_ARRAY_BUFFER, bufferElements*6*sizeof(int), batch.vertexBuffer[i].indices, GL_STATIC_DRAW); +#endif +#if defined(GRAPHICS_API_OPENGL_ES2) + glBufferData(GL_ELEMENT_ARRAY_BUFFER, bufferElements*6*sizeof(short), batch.vertexBuffer[i].indices, GL_STATIC_DRAW); +#endif + } + + TRACELOG(RL_LOG_INFO, "RLGL: Render batch vertex buffers loaded successfully in VRAM (GPU)"); + + // Unbind the current VAO + if (RLGL.ExtSupported.vao) glBindVertexArray(0); + //-------------------------------------------------------------------------------------------- + + // Init draw calls tracking system + //-------------------------------------------------------------------------------------------- + batch.draws = (rlDrawCall *)RL_CALLOC(RL_DEFAULT_BATCH_DRAWCALLS, sizeof(rlDrawCall)); + + for (int i = 0; i < RL_DEFAULT_BATCH_DRAWCALLS; i++) + { + batch.draws[i].mode = RL_QUADS; + batch.draws[i].vertexCount = 0; + batch.draws[i].vertexAlignment = 0; + //batch.draws[i].vaoId = 0; + //batch.draws[i].shaderId = 0; + batch.draws[i].textureId = RLGL.State.defaultTextureId; + //batch.draws[i].RLGL.State.projection = rlMatrixIdentity(); + //batch.draws[i].RLGL.State.modelview = rlMatrixIdentity(); + } + + batch.bufferCount = numBuffers; // Record buffer count + batch.drawCounter = 1; // Reset draws counter + batch.currentDepth = -1.0f; // Reset depth value + //-------------------------------------------------------------------------------------------- +#endif + + return batch; +} + +// Unload default internal buffers vertex data from CPU and GPU +void rlUnloadRenderBatch(rlRenderBatch batch) +{ +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + // Unbind everything + glBindBuffer(GL_ARRAY_BUFFER, 0); + glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, 0); + + // Unload all vertex buffers data + for (int i = 0; i < batch.bufferCount; i++) + { + // Unbind VAO attribs data + if (RLGL.ExtSupported.vao) + { + glBindVertexArray(batch.vertexBuffer[i].vaoId); + glDisableVertexAttribArray(RL_DEFAULT_SHADER_ATTRIB_LOCATION_POSITION); + glDisableVertexAttribArray(RL_DEFAULT_SHADER_ATTRIB_LOCATION_TEXCOORD); + glDisableVertexAttribArray(RL_DEFAULT_SHADER_ATTRIB_LOCATION_NORMAL); + glDisableVertexAttribArray(RL_DEFAULT_SHADER_ATTRIB_LOCATION_COLOR); + glBindVertexArray(0); + } + + // Delete VBOs from GPU (VRAM) + glDeleteBuffers(1, &batch.vertexBuffer[i].vboId[0]); + glDeleteBuffers(1, &batch.vertexBuffer[i].vboId[1]); + glDeleteBuffers(1, &batch.vertexBuffer[i].vboId[2]); + glDeleteBuffers(1, &batch.vertexBuffer[i].vboId[3]); + glDeleteBuffers(1, &batch.vertexBuffer[i].vboId[4]); + + // Delete VAOs from GPU (VRAM) + if (RLGL.ExtSupported.vao) glDeleteVertexArrays(1, &batch.vertexBuffer[i].vaoId); + + // Free vertex arrays memory from CPU (RAM) + RL_FREE(batch.vertexBuffer[i].vertices); + RL_FREE(batch.vertexBuffer[i].texcoords); + RL_FREE(batch.vertexBuffer[i].normals); + RL_FREE(batch.vertexBuffer[i].colors); + RL_FREE(batch.vertexBuffer[i].indices); + } + + // Unload arrays + RL_FREE(batch.vertexBuffer); + RL_FREE(batch.draws); +#endif +} + +// Draw render batch +// NOTE: Batch is reseted and current buffer is updated (for multi-buffer config) +void rlDrawRenderBatch(rlRenderBatch *batch) +{ +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + // Update batch vertex buffers + //------------------------------------------------------------------------------------------------------------ + // NOTE: If there is not vertex data, buffers doesn't need to be updated (vertexCount > 0) + if (RLGL.State.vertexCounter > 0) + { + // Activate elements VAO + if (RLGL.ExtSupported.vao) glBindVertexArray(batch->vertexBuffer[batch->currentBuffer].vaoId); + + // TODO: If no data changed on the CPU arrays there is no need to re-upload data to GPU, + // a flag can be used to detect changes but it would imply keeping a copy buffer and memcmp() both, does it worth it? + + // Vertex positions buffer + glBindBuffer(GL_ARRAY_BUFFER, batch->vertexBuffer[batch->currentBuffer].vboId[0]); + glBufferSubData(GL_ARRAY_BUFFER, 0, RLGL.State.vertexCounter*3*sizeof(float), batch->vertexBuffer[batch->currentBuffer].vertices); + //glBufferData(GL_ARRAY_BUFFER, sizeof(float)*3*4*batch->vertexBuffer[batch->currentBuffer].elementCount, batch->vertexBuffer[batch->currentBuffer].vertices, GL_DYNAMIC_DRAW); // Update all buffer + + // Texture coordinates buffer + glBindBuffer(GL_ARRAY_BUFFER, batch->vertexBuffer[batch->currentBuffer].vboId[1]); + glBufferSubData(GL_ARRAY_BUFFER, 0, RLGL.State.vertexCounter*2*sizeof(float), batch->vertexBuffer[batch->currentBuffer].texcoords); + //glBufferData(GL_ARRAY_BUFFER, sizeof(float)*2*4*batch->vertexBuffer[batch->currentBuffer].elementCount, batch->vertexBuffer[batch->currentBuffer].texcoords, GL_DYNAMIC_DRAW); // Update all buffer + + // Normals buffer + glBindBuffer(GL_ARRAY_BUFFER, batch->vertexBuffer[batch->currentBuffer].vboId[2]); + glBufferSubData(GL_ARRAY_BUFFER, 0, RLGL.State.vertexCounter*3*sizeof(float), batch->vertexBuffer[batch->currentBuffer].normals); + //glBufferData(GL_ARRAY_BUFFER, sizeof(float)*3*4*batch->vertexBuffer[batch->currentBuffer].elementCount, batch->vertexBuffer[batch->currentBuffer].normals, GL_DYNAMIC_DRAW); // Update all buffer + + // Colors buffer + glBindBuffer(GL_ARRAY_BUFFER, batch->vertexBuffer[batch->currentBuffer].vboId[3]); + glBufferSubData(GL_ARRAY_BUFFER, 0, RLGL.State.vertexCounter*4*sizeof(unsigned char), batch->vertexBuffer[batch->currentBuffer].colors); + //glBufferData(GL_ARRAY_BUFFER, sizeof(float)*4*4*batch->vertexBuffer[batch->currentBuffer].elementCount, batch->vertexBuffer[batch->currentBuffer].colors, GL_DYNAMIC_DRAW); // Update all buffer + + // NOTE: glMapBuffer() causes sync issue + // If GPU is working with this buffer, glMapBuffer() will wait(stall) until GPU to finish its job + // To avoid waiting (idle), glBufferData() can bee called first with NULL pointer before glMapBuffer() + // Doing that, the previous data in PBO will be discarded and glMapBuffer() returns a new + // allocated pointer immediately even if GPU is still working with the previous data + + // Another option: map the buffer object into client's memory + //batch->vertexBuffer[batch->currentBuffer].vertices = (float *)glMapBuffer(GL_ARRAY_BUFFER, GL_READ_WRITE); + //if (batch->vertexBuffer[batch->currentBuffer].vertices) + //{ + // Update vertex data + //} + //glUnmapBuffer(GL_ARRAY_BUFFER); + + // Unbind the current VAO + if (RLGL.ExtSupported.vao) glBindVertexArray(0); + } + //------------------------------------------------------------------------------------------------------------ + + // Draw batch vertex buffers (considering VR stereo if required) + //------------------------------------------------------------------------------------------------------------ + Matrix matProjection = RLGL.State.projection; + Matrix matModelView = RLGL.State.modelview; + + int eyeCount = 1; + if (RLGL.State.stereoRender) eyeCount = 2; + + for (int eye = 0; eye < eyeCount; eye++) + { + if (eyeCount == 2) + { + // Setup current eye viewport (half screen width) + rlViewport(eye*RLGL.State.framebufferWidth/2, 0, RLGL.State.framebufferWidth/2, RLGL.State.framebufferHeight); + + // Set current eye view offset to modelview matrix + rlSetMatrixModelview(rlMatrixMultiply(matModelView, RLGL.State.viewOffsetStereo[eye])); + // Set current eye projection matrix + rlSetMatrixProjection(RLGL.State.projectionStereo[eye]); + } + + // Draw buffers + if (RLGL.State.vertexCounter > 0) + { + // Set current shader and upload current MVP matrix + glUseProgram(RLGL.State.currentShaderId); + + // Create modelview-projection matrix and upload to shader + Matrix matMVP = rlMatrixMultiply(RLGL.State.modelview, RLGL.State.projection); + glUniformMatrix4fv(RLGL.State.currentShaderLocs[RL_SHADER_LOC_MATRIX_MVP], 1, false, rlMatrixToFloat(matMVP)); + + if (RLGL.State.currentShaderLocs[RL_SHADER_LOC_MATRIX_PROJECTION] != -1) + { + glUniformMatrix4fv(RLGL.State.currentShaderLocs[RL_SHADER_LOC_MATRIX_PROJECTION], 1, false, rlMatrixToFloat(RLGL.State.projection)); + } + + // WARNING: For the following setup of the view, model, and normal matrices, it is expected that + // transformations and rendering occur between rlPushMatrix() and rlPopMatrix() + + if (RLGL.State.currentShaderLocs[RL_SHADER_LOC_MATRIX_VIEW] != -1) + { + glUniformMatrix4fv(RLGL.State.currentShaderLocs[RL_SHADER_LOC_MATRIX_VIEW], 1, false, rlMatrixToFloat(RLGL.State.modelview)); + } + + if (RLGL.State.currentShaderLocs[RL_SHADER_LOC_MATRIX_MODEL] != -1) + { + glUniformMatrix4fv(RLGL.State.currentShaderLocs[RL_SHADER_LOC_MATRIX_MODEL], 1, false, rlMatrixToFloat(RLGL.State.transform)); + } + + if (RLGL.State.currentShaderLocs[RL_SHADER_LOC_MATRIX_NORMAL] != -1) + { + glUniformMatrix4fv(RLGL.State.currentShaderLocs[RL_SHADER_LOC_MATRIX_NORMAL], 1, false, rlMatrixToFloat(rlMatrixTranspose(rlMatrixInvert(RLGL.State.transform)))); + } + + if (RLGL.ExtSupported.vao) glBindVertexArray(batch->vertexBuffer[batch->currentBuffer].vaoId); + else + { + // Bind vertex attrib: position (shader-location = 0) + glBindBuffer(GL_ARRAY_BUFFER, batch->vertexBuffer[batch->currentBuffer].vboId[0]); + glVertexAttribPointer(RLGL.State.currentShaderLocs[RL_SHADER_LOC_VERTEX_POSITION], 3, GL_FLOAT, 0, 0, 0); + glEnableVertexAttribArray(RLGL.State.currentShaderLocs[RL_SHADER_LOC_VERTEX_POSITION]); + + // Bind vertex attrib: texcoord (shader-location = 1) + glBindBuffer(GL_ARRAY_BUFFER, batch->vertexBuffer[batch->currentBuffer].vboId[1]); + glVertexAttribPointer(RLGL.State.currentShaderLocs[RL_SHADER_LOC_VERTEX_TEXCOORD01], 2, GL_FLOAT, 0, 0, 0); + glEnableVertexAttribArray(RLGL.State.currentShaderLocs[RL_SHADER_LOC_VERTEX_TEXCOORD01]); + + // Bind vertex attrib: normal (shader-location = 2) + glBindBuffer(GL_ARRAY_BUFFER, batch->vertexBuffer[batch->currentBuffer].vboId[2]); + glVertexAttribPointer(RLGL.State.currentShaderLocs[RL_SHADER_LOC_VERTEX_NORMAL], 3, GL_FLOAT, 0, 0, 0); + glEnableVertexAttribArray(RLGL.State.currentShaderLocs[RL_SHADER_LOC_VERTEX_NORMAL]); + + // Bind vertex attrib: color (shader-location = 3) + glBindBuffer(GL_ARRAY_BUFFER, batch->vertexBuffer[batch->currentBuffer].vboId[3]); + glVertexAttribPointer(RLGL.State.currentShaderLocs[RL_SHADER_LOC_VERTEX_COLOR], 4, GL_UNSIGNED_BYTE, GL_TRUE, 0, 0); + glEnableVertexAttribArray(RLGL.State.currentShaderLocs[RL_SHADER_LOC_VERTEX_COLOR]); + + glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, batch->vertexBuffer[batch->currentBuffer].vboId[4]); + } + + // Setup some default shader values + glUniform4f(RLGL.State.currentShaderLocs[RL_SHADER_LOC_COLOR_DIFFUSE], 1.0f, 1.0f, 1.0f, 1.0f); + glUniform1i(RLGL.State.currentShaderLocs[RL_SHADER_LOC_MAP_DIFFUSE], 0); // Active default sampler2D: texture0 + + // Activate additional sampler textures + // Those additional textures will be common for all draw calls of the batch + for (int i = 0; i < RL_DEFAULT_BATCH_MAX_TEXTURE_UNITS; i++) + { + if (RLGL.State.activeTextureId[i] > 0) + { + glActiveTexture(GL_TEXTURE0 + 1 + i); + glBindTexture(GL_TEXTURE_2D, RLGL.State.activeTextureId[i]); + } + } + + // Activate default sampler2D texture0 (one texture is always active for default batch shader) + // NOTE: Batch system accumulates calls by texture0 changes, additional textures are enabled for all the draw calls + glActiveTexture(GL_TEXTURE0); + + for (int i = 0, vertexOffset = 0; i < batch->drawCounter; i++) + { + // Bind current draw call texture, activated as GL_TEXTURE0 and bound to sampler2D texture0 by default + glBindTexture(GL_TEXTURE_2D, batch->draws[i].textureId); + + if ((batch->draws[i].mode == RL_LINES) || (batch->draws[i].mode == RL_TRIANGLES)) glDrawArrays(batch->draws[i].mode, vertexOffset, batch->draws[i].vertexCount); + else + { + #if defined(GRAPHICS_API_OPENGL_33) + // The number of indices to be processed needs to be defined: elementCount*6 + // NOTE: The final parameter tells the GPU the offset in bytes from the + // start of the index buffer to the location of the first index to process + glDrawElements(GL_TRIANGLES, batch->draws[i].vertexCount/4*6, GL_UNSIGNED_INT, (GLvoid *)(vertexOffset/4*6*sizeof(GLuint))); + #endif + #if defined(GRAPHICS_API_OPENGL_ES2) + glDrawElements(GL_TRIANGLES, batch->draws[i].vertexCount/4*6, GL_UNSIGNED_SHORT, (GLvoid *)(vertexOffset/4*6*sizeof(GLushort))); + #endif + } + + vertexOffset += (batch->draws[i].vertexCount + batch->draws[i].vertexAlignment); + } + + if (!RLGL.ExtSupported.vao) + { + glBindBuffer(GL_ARRAY_BUFFER, 0); + glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, 0); + } + + glBindTexture(GL_TEXTURE_2D, 0); // Unbind textures + } + + if (RLGL.ExtSupported.vao) glBindVertexArray(0); // Unbind VAO + + glUseProgram(0); // Unbind shader program + } + + // Restore viewport to default measures + if (eyeCount == 2) rlViewport(0, 0, RLGL.State.framebufferWidth, RLGL.State.framebufferHeight); + //------------------------------------------------------------------------------------------------------------ + + // Reset batch buffers + //------------------------------------------------------------------------------------------------------------ + // Reset vertex counter for next frame + RLGL.State.vertexCounter = 0; + + // Reset depth for next draw + batch->currentDepth = -1.0f; + + // Restore projection/modelview matrices + RLGL.State.projection = matProjection; + RLGL.State.modelview = matModelView; + + // Reset RLGL.currentBatch->draws array + for (int i = 0; i < RL_DEFAULT_BATCH_DRAWCALLS; i++) + { + batch->draws[i].mode = RL_QUADS; + batch->draws[i].vertexCount = 0; + batch->draws[i].textureId = RLGL.State.defaultTextureId; + } + + // Reset active texture units for next batch + for (int i = 0; i < RL_DEFAULT_BATCH_MAX_TEXTURE_UNITS; i++) RLGL.State.activeTextureId[i] = 0; + + // Reset draws counter to one draw for the batch + batch->drawCounter = 1; + //------------------------------------------------------------------------------------------------------------ + + // Change to next buffer in the list (in case of multi-buffering) + batch->currentBuffer++; + if (batch->currentBuffer >= batch->bufferCount) batch->currentBuffer = 0; +#endif +} + +// Set the active render batch for rlgl +void rlSetRenderBatchActive(rlRenderBatch *batch) +{ +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + rlDrawRenderBatch(RLGL.currentBatch); + + if (batch != NULL) RLGL.currentBatch = batch; + else RLGL.currentBatch = &RLGL.defaultBatch; +#endif +} + +// Update and draw internal render batch +void rlDrawRenderBatchActive(void) +{ +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + rlDrawRenderBatch(RLGL.currentBatch); // NOTE: Stereo rendering is checked inside +#endif +} + +// Check internal buffer overflow for a given number of vertex +// and force a rlRenderBatch draw call if required +bool rlCheckRenderBatchLimit(int vCount) +{ + bool overflow = false; + +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + if ((RLGL.State.vertexCounter + vCount) >= + (RLGL.currentBatch->vertexBuffer[RLGL.currentBatch->currentBuffer].elementCount*4)) + { + overflow = true; + + // Store current primitive drawing mode and texture id + int currentMode = RLGL.currentBatch->draws[RLGL.currentBatch->drawCounter - 1].mode; + int currentTexture = RLGL.currentBatch->draws[RLGL.currentBatch->drawCounter - 1].textureId; + + rlDrawRenderBatch(RLGL.currentBatch); // NOTE: Stereo rendering is checked inside + + // Restore state of last batch so new vertices can be added + RLGL.currentBatch->draws[RLGL.currentBatch->drawCounter - 1].mode = currentMode; + RLGL.currentBatch->draws[RLGL.currentBatch->drawCounter - 1].textureId = currentTexture; + } +#endif + + return overflow; +} + +// Textures data management +//----------------------------------------------------------------------------------------- +// Convert image data to OpenGL texture (returns OpenGL valid Id) +unsigned int rlLoadTexture(const void *data, int width, int height, int format, int mipmapCount) +{ + unsigned int id = 0; + if (!isGpuReady) { TRACELOG(RL_LOG_WARNING, "GL: GPU is not ready to load data, trying to load before InitWindow()?"); return id; } + + glBindTexture(GL_TEXTURE_2D, 0); // Free any old binding + + // Check texture format support by OpenGL 1.1 (compressed textures not supported) +#if defined(GRAPHICS_API_OPENGL_11) + if (format >= RL_PIXELFORMAT_COMPRESSED_DXT1_RGB) + { + // TODO: Support texture data decompression + TRACELOG(RL_LOG_WARNING, "GL: OpenGL 1.1 does not support GPU compressed texture formats"); + return id; + } +#else + if ((!RLGL.ExtSupported.texCompDXT) && ((format == RL_PIXELFORMAT_COMPRESSED_DXT1_RGB) || (format == RL_PIXELFORMAT_COMPRESSED_DXT1_RGBA) || + (format == RL_PIXELFORMAT_COMPRESSED_DXT3_RGBA) || (format == RL_PIXELFORMAT_COMPRESSED_DXT5_RGBA))) + { + TRACELOG(RL_LOG_WARNING, "GL: DXT compressed texture format not supported"); + return id; + } +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + if ((!RLGL.ExtSupported.texCompETC1) && (format == RL_PIXELFORMAT_COMPRESSED_ETC1_RGB)) + { + TRACELOG(RL_LOG_WARNING, "GL: ETC1 compressed texture format not supported"); + return id; + } + + if ((!RLGL.ExtSupported.texCompETC2) && ((format == RL_PIXELFORMAT_COMPRESSED_ETC2_RGB) || (format == RL_PIXELFORMAT_COMPRESSED_ETC2_EAC_RGBA))) + { + TRACELOG(RL_LOG_WARNING, "GL: ETC2 compressed texture format not supported"); + return id; + } + + if ((!RLGL.ExtSupported.texCompPVRT) && ((format == RL_PIXELFORMAT_COMPRESSED_PVRT_RGB) || (format == RL_PIXELFORMAT_COMPRESSED_PVRT_RGBA))) + { + TRACELOG(RL_LOG_WARNING, "GL: PVRT compressed texture format not supported"); + return id; + } + + if ((!RLGL.ExtSupported.texCompASTC) && ((format == RL_PIXELFORMAT_COMPRESSED_ASTC_4x4_RGBA) || (format == RL_PIXELFORMAT_COMPRESSED_ASTC_8x8_RGBA))) + { + TRACELOG(RL_LOG_WARNING, "GL: ASTC compressed texture format not supported"); + return id; + } +#endif +#endif // GRAPHICS_API_OPENGL_11 + + glPixelStorei(GL_UNPACK_ALIGNMENT, 1); + + glGenTextures(1, &id); // Generate texture id + + glBindTexture(GL_TEXTURE_2D, id); + + int mipWidth = width; + int mipHeight = height; + int mipOffset = 0; // Mipmap data offset, only used for tracelog + (void)mipOffset; // Used to avoid gcc warnings about unused variable + + // NOTE: Added pointer math separately from function to avoid UBSAN complaining + unsigned char *dataPtr = NULL; + if (data != NULL) dataPtr = (unsigned char *)data; + + // Load the different mipmap levels + for (int i = 0; i < mipmapCount; i++) + { + unsigned int mipSize = rlGetPixelDataSize(mipWidth, mipHeight, format); + + unsigned int glInternalFormat, glFormat, glType; + rlGetGlTextureFormats(format, &glInternalFormat, &glFormat, &glType); + + TRACELOG(RL_LOG_DEBUG, "TEXTURE: Load mipmap level %i (%i x %i), size: %i, offset: %i", i, mipWidth, mipHeight, mipSize, mipOffset); + + if (glInternalFormat != 0) + { + if (format < RL_PIXELFORMAT_COMPRESSED_DXT1_RGB) glTexImage2D(GL_TEXTURE_2D, i, glInternalFormat, mipWidth, mipHeight, 0, glFormat, glType, dataPtr); +#if !defined(GRAPHICS_API_OPENGL_11) + else glCompressedTexImage2D(GL_TEXTURE_2D, i, glInternalFormat, mipWidth, mipHeight, 0, mipSize, dataPtr); +#endif + +#if defined(GRAPHICS_API_OPENGL_33) + if (format == RL_PIXELFORMAT_UNCOMPRESSED_GRAYSCALE) + { + GLint swizzleMask[] = { GL_RED, GL_RED, GL_RED, GL_ONE }; + glTexParameteriv(GL_TEXTURE_2D, GL_TEXTURE_SWIZZLE_RGBA, swizzleMask); + } + else if (format == RL_PIXELFORMAT_UNCOMPRESSED_GRAY_ALPHA) + { +#if defined(GRAPHICS_API_OPENGL_21) + GLint swizzleMask[] = { GL_RED, GL_RED, GL_RED, GL_ALPHA }; +#elif defined(GRAPHICS_API_OPENGL_33) + GLint swizzleMask[] = { GL_RED, GL_RED, GL_RED, GL_GREEN }; +#endif + glTexParameteriv(GL_TEXTURE_2D, GL_TEXTURE_SWIZZLE_RGBA, swizzleMask); + } +#endif + } + + mipWidth /= 2; + mipHeight /= 2; + mipOffset += mipSize; // Increment offset position to next mipmap + if (data != NULL) dataPtr += mipSize; // Increment data pointer to next mipmap + + // Security check for NPOT textures + if (mipWidth < 1) mipWidth = 1; + if (mipHeight < 1) mipHeight = 1; + } + + // Texture parameters configuration + // NOTE: glTexParameteri does NOT affect texture uploading +#if defined(GRAPHICS_API_OPENGL_ES2) + // NOTE: OpenGL ES 2.0 with no GL_OES_texture_npot support (i.e. WebGL) has limited NPOT support, so CLAMP_TO_EDGE must be used + if (RLGL.ExtSupported.texNPOT) + { + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT); // Set texture to repeat on x-axis + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT); // Set texture to repeat on y-axis + } + else + { + // NOTE: If using negative texture coordinates (LoadOBJ()), it does not work! + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE); // Set texture to clamp on x-axis + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE); // Set texture to clamp on y-axis + } +#else + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT); // Set texture to repeat on x-axis + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT); // Set texture to repeat on y-axis +#endif + + // Magnification and minification filters + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST); // Alternative: GL_LINEAR + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST); // Alternative: GL_LINEAR + +#if defined(GRAPHICS_API_OPENGL_33) + if (mipmapCount > 1) + { + // Activate trilinear filtering if mipmaps are available + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR); + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR_MIPMAP_LINEAR); + + // Define the maximum number of mipmap levels to be used, 0 is base texture size + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_BASE_LEVEL, 0); + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAX_LEVEL, mipmapCount - 1); + + // Check if the loaded texture with mipmaps is complete, + // uncomplete textures will draw in black if mipmap filtering is required + //GLint complete = 0; + //glGetTexParameteriv(GL_TEXTURE_2D, GL_TEXTURE_IMMUTABLE_FORMAT, &complete); + } +#endif + + // At this point texture is loaded in GPU and texture parameters configured + + // NOTE: If mipmaps were not in data, they are not generated automatically + + // Unbind current texture + glBindTexture(GL_TEXTURE_2D, 0); + + if (id > 0) TRACELOG(RL_LOG_INFO, "TEXTURE: [ID %i] Texture loaded successfully (%ix%i | %s | %i mipmaps)", id, width, height, rlGetPixelFormatName(format), mipmapCount); + else TRACELOG(RL_LOG_WARNING, "TEXTURE: Failed to load texture"); + + return id; +} + +// Load depth texture/renderbuffer (to be attached to fbo) +// WARNING: OpenGL ES 2.0 requires GL_OES_depth_texture and WebGL requires WEBGL_depth_texture extensions +unsigned int rlLoadTextureDepth(int width, int height, bool useRenderBuffer) +{ + unsigned int id = 0; + if (!isGpuReady) { TRACELOG(RL_LOG_WARNING, "GL: GPU is not ready to load data, trying to load before InitWindow()?"); return id; } + +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + // In case depth textures were not supported, force renderbuffer usage + if (!RLGL.ExtSupported.texDepth) useRenderBuffer = true; + + // NOTE: Letting the implementation to choose the best bit-depth + // Possible formats: GL_DEPTH_COMPONENT16, GL_DEPTH_COMPONENT24, GL_DEPTH_COMPONENT32 and GL_DEPTH_COMPONENT32F + unsigned int glInternalFormat = GL_DEPTH_COMPONENT; + +#if defined(GRAPHICS_API_OPENGL_ES2) + // WARNING: WebGL platform requires unsized internal format definition (GL_DEPTH_COMPONENT) + // while other platforms using OpenGL ES 2.0 require/support sized internal formats depending on the GPU capabilities + if (!RLGL.ExtSupported.texDepthWebGL || useRenderBuffer) + { + if (RLGL.ExtSupported.maxDepthBits == 32) glInternalFormat = GL_DEPTH_COMPONENT32_OES; + else if (RLGL.ExtSupported.maxDepthBits == 24) glInternalFormat = GL_DEPTH_COMPONENT24_OES; + else glInternalFormat = GL_DEPTH_COMPONENT16; + } +#endif +#if defined(GRAPHICS_API_OPENGL_ES3) + // NOTE: This sized internal format should also work for WebGL 2.0 + // WARNING: Specification only allows GL_DEPTH_COMPONENT32F for GL_FLOAT type + // REF: https://registry.khronos.org/OpenGL-Refpages/es3.0/html/glTexImage2D.xhtml + if (RLGL.ExtSupported.maxDepthBits == 24) glInternalFormat = GL_DEPTH_COMPONENT24; + else glInternalFormat = GL_DEPTH_COMPONENT16; +#endif + + if (!useRenderBuffer && RLGL.ExtSupported.texDepth) + { + glGenTextures(1, &id); + glBindTexture(GL_TEXTURE_2D, id); + glTexImage2D(GL_TEXTURE_2D, 0, glInternalFormat, width, height, 0, GL_DEPTH_COMPONENT, GL_UNSIGNED_INT, NULL); + + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST); + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST); + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE); + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE); + + glBindTexture(GL_TEXTURE_2D, 0); + + TRACELOG(RL_LOG_INFO, "TEXTURE: Depth texture loaded successfully"); + } + else + { + // Create the renderbuffer that will serve as the depth attachment for the framebuffer + // NOTE: A renderbuffer is simpler than a texture and could offer better performance on embedded devices + glGenRenderbuffers(1, &id); + glBindRenderbuffer(GL_RENDERBUFFER, id); + glRenderbufferStorage(GL_RENDERBUFFER, glInternalFormat, width, height); + + glBindRenderbuffer(GL_RENDERBUFFER, 0); + + TRACELOG(RL_LOG_INFO, "TEXTURE: [ID %i] Depth renderbuffer loaded successfully (%i bits)", id, (RLGL.ExtSupported.maxDepthBits >= 24)? RLGL.ExtSupported.maxDepthBits : 16); + } +#endif + + return id; +} + +// Load texture cubemap +// NOTE: Cubemap data is expected to be 6 images in a single data array (one after the other), +// expected the following convention: +X, -X, +Y, -Y, +Z, -Z +unsigned int rlLoadTextureCubemap(const void *data, int size, int format, int mipmapCount) +{ + unsigned int id = 0; + if (!isGpuReady) { TRACELOG(RL_LOG_WARNING, "GL: GPU is not ready to load data, trying to load before InitWindow()?"); return id; } + +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + int mipSize = size; + + // NOTE: Added pointer math separately from function to avoid UBSAN complaining + unsigned char *dataPtr = NULL; + if (data != NULL) dataPtr = (unsigned char *)data; + + unsigned int dataSize = rlGetPixelDataSize(size, size, format); + + glGenTextures(1, &id); + glBindTexture(GL_TEXTURE_CUBE_MAP, id); + + unsigned int glInternalFormat, glFormat, glType; + rlGetGlTextureFormats(format, &glInternalFormat, &glFormat, &glType); + + if (glInternalFormat != 0) + { + // Load cubemap faces/mipmaps + for (int i = 0; i < 6*mipmapCount; i++) + { + int mipmapLevel = i/6; + int face = i%6; + + if (data == NULL) + { + if (format < RL_PIXELFORMAT_COMPRESSED_DXT1_RGB) + { + if ((format == RL_PIXELFORMAT_UNCOMPRESSED_R32) || + (format == RL_PIXELFORMAT_UNCOMPRESSED_R32G32B32A32) || + (format == RL_PIXELFORMAT_UNCOMPRESSED_R16) || + (format == RL_PIXELFORMAT_UNCOMPRESSED_R16G16B16A16)) TRACELOG(RL_LOG_WARNING, "TEXTURES: Cubemap requested format not supported"); + else glTexImage2D(GL_TEXTURE_CUBE_MAP_POSITIVE_X + face, mipmapLevel, glInternalFormat, mipSize, mipSize, 0, glFormat, glType, NULL); + } + else TRACELOG(RL_LOG_WARNING, "TEXTURES: Empty cubemap creation does not support compressed format"); + } + else + { + if (format < RL_PIXELFORMAT_COMPRESSED_DXT1_RGB) glTexImage2D(GL_TEXTURE_CUBE_MAP_POSITIVE_X + face, mipmapLevel, glInternalFormat, mipSize, mipSize, 0, glFormat, glType, (unsigned char *)dataPtr + face*dataSize); + else glCompressedTexImage2D(GL_TEXTURE_CUBE_MAP_POSITIVE_X + face, mipmapLevel, glInternalFormat, mipSize, mipSize, 0, dataSize, (unsigned char *)dataPtr + face*dataSize); + } + +#if defined(GRAPHICS_API_OPENGL_33) + if (format == RL_PIXELFORMAT_UNCOMPRESSED_GRAYSCALE) + { + GLint swizzleMask[] = { GL_RED, GL_RED, GL_RED, GL_ONE }; + glTexParameteriv(GL_TEXTURE_CUBE_MAP, GL_TEXTURE_SWIZZLE_RGBA, swizzleMask); + } + else if (format == RL_PIXELFORMAT_UNCOMPRESSED_GRAY_ALPHA) + { +#if defined(GRAPHICS_API_OPENGL_21) + GLint swizzleMask[] = { GL_RED, GL_RED, GL_RED, GL_ALPHA }; +#elif defined(GRAPHICS_API_OPENGL_33) + GLint swizzleMask[] = { GL_RED, GL_RED, GL_RED, GL_GREEN }; +#endif + glTexParameteriv(GL_TEXTURE_CUBE_MAP, GL_TEXTURE_SWIZZLE_RGBA, swizzleMask); + } +#endif + if (face == 5) + { + mipSize /= 2; + if (data != NULL) dataPtr += dataSize*6; // Increment data pointer to next mipmap + + // Security check for NPOT textures + if (mipSize < 1) mipSize = 1; + + dataSize = rlGetPixelDataSize(mipSize, mipSize, format); + } + } + } + + // Set cubemap texture sampling parameters + if (mipmapCount > 1) glTexParameteri(GL_TEXTURE_CUBE_MAP, GL_TEXTURE_MIN_FILTER, GL_LINEAR_MIPMAP_LINEAR); + else glTexParameteri(GL_TEXTURE_CUBE_MAP, GL_TEXTURE_MIN_FILTER, GL_LINEAR); + + glTexParameteri(GL_TEXTURE_CUBE_MAP, GL_TEXTURE_MAG_FILTER, GL_LINEAR); + glTexParameteri(GL_TEXTURE_CUBE_MAP, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE); + glTexParameteri(GL_TEXTURE_CUBE_MAP, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE); +#if defined(GRAPHICS_API_OPENGL_33) + glTexParameteri(GL_TEXTURE_CUBE_MAP, GL_TEXTURE_WRAP_R, GL_CLAMP_TO_EDGE); // Flag not supported on OpenGL ES 2.0 +#endif + + glBindTexture(GL_TEXTURE_CUBE_MAP, 0); +#endif + + if (id > 0) TRACELOG(RL_LOG_INFO, "TEXTURE: [ID %i] Cubemap texture loaded successfully (%ix%i)", id, size, size); + else TRACELOG(RL_LOG_WARNING, "TEXTURE: Failed to load cubemap texture"); + + return id; +} + +// Update already loaded texture in GPU with new data +// WARNING: Not possible to know safely if internal texture format is the expected one... +void rlUpdateTexture(unsigned int id, int offsetX, int offsetY, int width, int height, int format, const void *data) +{ + glBindTexture(GL_TEXTURE_2D, id); + + unsigned int glInternalFormat, glFormat, glType; + rlGetGlTextureFormats(format, &glInternalFormat, &glFormat, &glType); + + if ((glInternalFormat != 0) && (format < RL_PIXELFORMAT_COMPRESSED_DXT1_RGB)) + { + glTexSubImage2D(GL_TEXTURE_2D, 0, offsetX, offsetY, width, height, glFormat, glType, data); + } + else TRACELOG(RL_LOG_WARNING, "TEXTURE: [ID %i] Failed to update for current texture format (%i)", id, format); +} + +// Get OpenGL internal formats and data type from raylib PixelFormat +void rlGetGlTextureFormats(int format, unsigned int *glInternalFormat, unsigned int *glFormat, unsigned int *glType) +{ + *glInternalFormat = 0; + *glFormat = 0; + *glType = 0; + + switch (format) + { + #if defined(GRAPHICS_API_OPENGL_11) || defined(GRAPHICS_API_OPENGL_21) || defined(GRAPHICS_API_OPENGL_ES2) + // NOTE: on OpenGL ES 2.0 (WebGL), internalFormat must match format and options allowed are: GL_LUMINANCE, GL_RGB, GL_RGBA + case RL_PIXELFORMAT_UNCOMPRESSED_GRAYSCALE: *glInternalFormat = GL_LUMINANCE; *glFormat = GL_LUMINANCE; *glType = GL_UNSIGNED_BYTE; break; + case RL_PIXELFORMAT_UNCOMPRESSED_GRAY_ALPHA: *glInternalFormat = GL_LUMINANCE_ALPHA; *glFormat = GL_LUMINANCE_ALPHA; *glType = GL_UNSIGNED_BYTE; break; + case RL_PIXELFORMAT_UNCOMPRESSED_R5G6B5: *glInternalFormat = GL_RGB; *glFormat = GL_RGB; *glType = GL_UNSIGNED_SHORT_5_6_5; break; + case RL_PIXELFORMAT_UNCOMPRESSED_R8G8B8: *glInternalFormat = GL_RGB; *glFormat = GL_RGB; *glType = GL_UNSIGNED_BYTE; break; + case RL_PIXELFORMAT_UNCOMPRESSED_R5G5B5A1: *glInternalFormat = GL_RGBA; *glFormat = GL_RGBA; *glType = GL_UNSIGNED_SHORT_5_5_5_1; break; + case RL_PIXELFORMAT_UNCOMPRESSED_R4G4B4A4: *glInternalFormat = GL_RGBA; *glFormat = GL_RGBA; *glType = GL_UNSIGNED_SHORT_4_4_4_4; break; + case RL_PIXELFORMAT_UNCOMPRESSED_R8G8B8A8: *glInternalFormat = GL_RGBA; *glFormat = GL_RGBA; *glType = GL_UNSIGNED_BYTE; break; + #if !defined(GRAPHICS_API_OPENGL_11) + #if defined(GRAPHICS_API_OPENGL_ES3) + case RL_PIXELFORMAT_UNCOMPRESSED_R32: if (RLGL.ExtSupported.texFloat32) *glInternalFormat = GL_R32F_EXT; *glFormat = GL_RED_EXT; *glType = GL_FLOAT; break; + case RL_PIXELFORMAT_UNCOMPRESSED_R32G32B32: if (RLGL.ExtSupported.texFloat32) *glInternalFormat = GL_RGB32F_EXT; *glFormat = GL_RGB; *glType = GL_FLOAT; break; + case RL_PIXELFORMAT_UNCOMPRESSED_R32G32B32A32: if (RLGL.ExtSupported.texFloat32) *glInternalFormat = GL_RGBA32F_EXT; *glFormat = GL_RGBA; *glType = GL_FLOAT; break; + case RL_PIXELFORMAT_UNCOMPRESSED_R16: if (RLGL.ExtSupported.texFloat16) *glInternalFormat = GL_R16F_EXT; *glFormat = GL_RED_EXT; *glType = GL_HALF_FLOAT; break; + case RL_PIXELFORMAT_UNCOMPRESSED_R16G16B16: if (RLGL.ExtSupported.texFloat16) *glInternalFormat = GL_RGB16F_EXT; *glFormat = GL_RGB; *glType = GL_HALF_FLOAT; break; + case RL_PIXELFORMAT_UNCOMPRESSED_R16G16B16A16: if (RLGL.ExtSupported.texFloat16) *glInternalFormat = GL_RGBA16F_EXT; *glFormat = GL_RGBA; *glType = GL_HALF_FLOAT; break; + #else + case RL_PIXELFORMAT_UNCOMPRESSED_R32: if (RLGL.ExtSupported.texFloat32) *glInternalFormat = GL_LUMINANCE; *glFormat = GL_LUMINANCE; *glType = GL_FLOAT; break; // NOTE: Requires extension OES_texture_float + case RL_PIXELFORMAT_UNCOMPRESSED_R32G32B32: if (RLGL.ExtSupported.texFloat32) *glInternalFormat = GL_RGB; *glFormat = GL_RGB; *glType = GL_FLOAT; break; // NOTE: Requires extension OES_texture_float + case RL_PIXELFORMAT_UNCOMPRESSED_R32G32B32A32: if (RLGL.ExtSupported.texFloat32) *glInternalFormat = GL_RGBA; *glFormat = GL_RGBA; *glType = GL_FLOAT; break; // NOTE: Requires extension OES_texture_float + #if defined(GRAPHICS_API_OPENGL_21) + case RL_PIXELFORMAT_UNCOMPRESSED_R16: if (RLGL.ExtSupported.texFloat16) *glInternalFormat = GL_LUMINANCE; *glFormat = GL_LUMINANCE; *glType = GL_HALF_FLOAT_ARB; break; + case RL_PIXELFORMAT_UNCOMPRESSED_R16G16B16: if (RLGL.ExtSupported.texFloat16) *glInternalFormat = GL_RGB; *glFormat = GL_RGB; *glType = GL_HALF_FLOAT_ARB; break; + case RL_PIXELFORMAT_UNCOMPRESSED_R16G16B16A16: if (RLGL.ExtSupported.texFloat16) *glInternalFormat = GL_RGBA; *glFormat = GL_RGBA; *glType = GL_HALF_FLOAT_ARB; break; + #else // defined(GRAPHICS_API_OPENGL_ES2) + case RL_PIXELFORMAT_UNCOMPRESSED_R16: if (RLGL.ExtSupported.texFloat16) *glInternalFormat = GL_LUMINANCE; *glFormat = GL_LUMINANCE; *glType = GL_HALF_FLOAT_OES; break; // NOTE: Requires extension OES_texture_half_float + case RL_PIXELFORMAT_UNCOMPRESSED_R16G16B16: if (RLGL.ExtSupported.texFloat16) *glInternalFormat = GL_RGB; *glFormat = GL_RGB; *glType = GL_HALF_FLOAT_OES; break; // NOTE: Requires extension OES_texture_half_float + case RL_PIXELFORMAT_UNCOMPRESSED_R16G16B16A16: if (RLGL.ExtSupported.texFloat16) *glInternalFormat = GL_RGBA; *glFormat = GL_RGBA; *glType = GL_HALF_FLOAT_OES; break; // NOTE: Requires extension OES_texture_half_float + #endif + #endif + #endif + #elif defined(GRAPHICS_API_OPENGL_33) + case RL_PIXELFORMAT_UNCOMPRESSED_GRAYSCALE: *glInternalFormat = GL_R8; *glFormat = GL_RED; *glType = GL_UNSIGNED_BYTE; break; + case RL_PIXELFORMAT_UNCOMPRESSED_GRAY_ALPHA: *glInternalFormat = GL_RG8; *glFormat = GL_RG; *glType = GL_UNSIGNED_BYTE; break; + case RL_PIXELFORMAT_UNCOMPRESSED_R5G6B5: *glInternalFormat = GL_RGB565; *glFormat = GL_RGB; *glType = GL_UNSIGNED_SHORT_5_6_5; break; + case RL_PIXELFORMAT_UNCOMPRESSED_R8G8B8: *glInternalFormat = GL_RGB8; *glFormat = GL_RGB; *glType = GL_UNSIGNED_BYTE; break; + case RL_PIXELFORMAT_UNCOMPRESSED_R5G5B5A1: *glInternalFormat = GL_RGB5_A1; *glFormat = GL_RGBA; *glType = GL_UNSIGNED_SHORT_5_5_5_1; break; + case RL_PIXELFORMAT_UNCOMPRESSED_R4G4B4A4: *glInternalFormat = GL_RGBA4; *glFormat = GL_RGBA; *glType = GL_UNSIGNED_SHORT_4_4_4_4; break; + case RL_PIXELFORMAT_UNCOMPRESSED_R8G8B8A8: *glInternalFormat = GL_RGBA8; *glFormat = GL_RGBA; *glType = GL_UNSIGNED_BYTE; break; + case RL_PIXELFORMAT_UNCOMPRESSED_R32: if (RLGL.ExtSupported.texFloat32) *glInternalFormat = GL_R32F; *glFormat = GL_RED; *glType = GL_FLOAT; break; + case RL_PIXELFORMAT_UNCOMPRESSED_R32G32B32: if (RLGL.ExtSupported.texFloat32) *glInternalFormat = GL_RGB32F; *glFormat = GL_RGB; *glType = GL_FLOAT; break; + case RL_PIXELFORMAT_UNCOMPRESSED_R32G32B32A32: if (RLGL.ExtSupported.texFloat32) *glInternalFormat = GL_RGBA32F; *glFormat = GL_RGBA; *glType = GL_FLOAT; break; + case RL_PIXELFORMAT_UNCOMPRESSED_R16: if (RLGL.ExtSupported.texFloat16) *glInternalFormat = GL_R16F; *glFormat = GL_RED; *glType = GL_HALF_FLOAT; break; + case RL_PIXELFORMAT_UNCOMPRESSED_R16G16B16: if (RLGL.ExtSupported.texFloat16) *glInternalFormat = GL_RGB16F; *glFormat = GL_RGB; *glType = GL_HALF_FLOAT; break; + case RL_PIXELFORMAT_UNCOMPRESSED_R16G16B16A16: if (RLGL.ExtSupported.texFloat16) *glInternalFormat = GL_RGBA16F; *glFormat = GL_RGBA; *glType = GL_HALF_FLOAT; break; + #endif + #if !defined(GRAPHICS_API_OPENGL_11) + case RL_PIXELFORMAT_COMPRESSED_DXT1_RGB: if (RLGL.ExtSupported.texCompDXT) *glInternalFormat = GL_COMPRESSED_RGB_S3TC_DXT1_EXT; break; + case RL_PIXELFORMAT_COMPRESSED_DXT1_RGBA: if (RLGL.ExtSupported.texCompDXT) *glInternalFormat = GL_COMPRESSED_RGBA_S3TC_DXT1_EXT; break; + case RL_PIXELFORMAT_COMPRESSED_DXT3_RGBA: if (RLGL.ExtSupported.texCompDXT) *glInternalFormat = GL_COMPRESSED_RGBA_S3TC_DXT3_EXT; break; + case RL_PIXELFORMAT_COMPRESSED_DXT5_RGBA: if (RLGL.ExtSupported.texCompDXT) *glInternalFormat = GL_COMPRESSED_RGBA_S3TC_DXT5_EXT; break; + case RL_PIXELFORMAT_COMPRESSED_ETC1_RGB: if (RLGL.ExtSupported.texCompETC1) *glInternalFormat = GL_ETC1_RGB8_OES; break; // NOTE: Requires OpenGL ES 2.0 or OpenGL 4.3 + case RL_PIXELFORMAT_COMPRESSED_ETC2_RGB: if (RLGL.ExtSupported.texCompETC2) *glInternalFormat = GL_COMPRESSED_RGB8_ETC2; break; // NOTE: Requires OpenGL ES 3.0 or OpenGL 4.3 + case RL_PIXELFORMAT_COMPRESSED_ETC2_EAC_RGBA: if (RLGL.ExtSupported.texCompETC2) *glInternalFormat = GL_COMPRESSED_RGBA8_ETC2_EAC; break; // NOTE: Requires OpenGL ES 3.0 or OpenGL 4.3 + case RL_PIXELFORMAT_COMPRESSED_PVRT_RGB: if (RLGL.ExtSupported.texCompPVRT) *glInternalFormat = GL_COMPRESSED_RGB_PVRTC_4BPPV1_IMG; break; // NOTE: Requires PowerVR GPU + case RL_PIXELFORMAT_COMPRESSED_PVRT_RGBA: if (RLGL.ExtSupported.texCompPVRT) *glInternalFormat = GL_COMPRESSED_RGBA_PVRTC_4BPPV1_IMG; break; // NOTE: Requires PowerVR GPU + case RL_PIXELFORMAT_COMPRESSED_ASTC_4x4_RGBA: if (RLGL.ExtSupported.texCompASTC) *glInternalFormat = GL_COMPRESSED_RGBA_ASTC_4x4_KHR; break; // NOTE: Requires OpenGL ES 3.1 or OpenGL 4.3 + case RL_PIXELFORMAT_COMPRESSED_ASTC_8x8_RGBA: if (RLGL.ExtSupported.texCompASTC) *glInternalFormat = GL_COMPRESSED_RGBA_ASTC_8x8_KHR; break; // NOTE: Requires OpenGL ES 3.1 or OpenGL 4.3 + #endif + default: TRACELOG(RL_LOG_WARNING, "TEXTURE: Current format not supported (%i)", format); break; + } +} + +// Unload texture from GPU memory +void rlUnloadTexture(unsigned int id) +{ + glDeleteTextures(1, &id); +} + +// Generate mipmap data for selected texture +// NOTE: Only supports GPU mipmap generation +void rlGenTextureMipmaps(unsigned int id, int width, int height, int format, int *mipmaps) +{ +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + glBindTexture(GL_TEXTURE_2D, id); + + // Check if texture is power-of-two (POT) + bool texIsPOT = false; + + if (((width > 0) && ((width & (width - 1)) == 0)) && + ((height > 0) && ((height & (height - 1)) == 0))) texIsPOT = true; + + if ((texIsPOT) || (RLGL.ExtSupported.texNPOT)) + { + //glHint(GL_GENERATE_MIPMAP_HINT, GL_DONT_CARE); // Hint for mipmaps generation algorithm: GL_FASTEST, GL_NICEST, GL_DONT_CARE + glGenerateMipmap(GL_TEXTURE_2D); // Generate mipmaps automatically + + #define MIN(a,b) (((a)<(b))? (a):(b)) + #define MAX(a,b) (((a)>(b))? (a):(b)) + + *mipmaps = 1 + (int)floor(log(MAX(width, height))/log(2)); + TRACELOG(RL_LOG_INFO, "TEXTURE: [ID %i] Mipmaps generated automatically, total: %i", id, *mipmaps); + } + else TRACELOG(RL_LOG_WARNING, "TEXTURE: [ID %i] Failed to generate mipmaps", id); + + glBindTexture(GL_TEXTURE_2D, 0); +#else + TRACELOG(RL_LOG_WARNING, "TEXTURE: [ID %i] GPU mipmap generation not supported", id); +#endif +} + +// Read texture pixel data +void *rlReadTexturePixels(unsigned int id, int width, int height, int format) +{ + void *pixels = NULL; + +#if defined(GRAPHICS_API_OPENGL_11) || defined(GRAPHICS_API_OPENGL_33) + glBindTexture(GL_TEXTURE_2D, id); + + // NOTE: Using texture id, some texture info can be retrieved (but not on OpenGL ES 2.0) + // Possible texture info: GL_TEXTURE_RED_SIZE, GL_TEXTURE_GREEN_SIZE, GL_TEXTURE_BLUE_SIZE, GL_TEXTURE_ALPHA_SIZE + //int width, height, format; + //glGetTexLevelParameteriv(GL_TEXTURE_2D, 0, GL_TEXTURE_WIDTH, &width); + //glGetTexLevelParameteriv(GL_TEXTURE_2D, 0, GL_TEXTURE_HEIGHT, &height); + //glGetTexLevelParameteriv(GL_TEXTURE_2D, 0, GL_TEXTURE_INTERNAL_FORMAT, &format); + + // NOTE: Each row written to or read from by OpenGL pixel operations like glGetTexImage are aligned to a 4 byte boundary by default, which may add some padding + // Use glPixelStorei to modify padding with the GL_[UN]PACK_ALIGNMENT setting + // GL_PACK_ALIGNMENT affects operations that read from OpenGL memory (glReadPixels, glGetTexImage, etc.) + // GL_UNPACK_ALIGNMENT affects operations that write to OpenGL memory (glTexImage, etc.) + glPixelStorei(GL_PACK_ALIGNMENT, 1); + + unsigned int glInternalFormat, glFormat, glType; + rlGetGlTextureFormats(format, &glInternalFormat, &glFormat, &glType); + unsigned int size = rlGetPixelDataSize(width, height, format); + + if ((glInternalFormat != 0) && (format < RL_PIXELFORMAT_COMPRESSED_DXT1_RGB)) + { + pixels = RL_CALLOC(size, 1); + glGetTexImage(GL_TEXTURE_2D, 0, glFormat, glType, pixels); + } + else TRACELOG(RL_LOG_WARNING, "TEXTURE: [ID %i] Data retrieval not suported for pixel format (%i)", id, format); + + glBindTexture(GL_TEXTURE_2D, 0); +#endif + +#if defined(GRAPHICS_API_OPENGL_ES2) + // glGetTexImage() is not available on OpenGL ES 2.0 + // Texture width and height are required on OpenGL ES 2.0, there is no way to get it from texture id + // Two possible Options: + // 1 - Bind texture to color fbo attachment and glReadPixels() + // 2 - Create an fbo, activate it, render quad with texture, glReadPixels() + // Using Option 1, care for texture format on retrieval + // NOTE: This behaviour could be conditioned by graphic driver... + unsigned int fboId = rlLoadFramebuffer(); + + glBindFramebuffer(GL_FRAMEBUFFER, fboId); + glBindTexture(GL_TEXTURE_2D, 0); + + // Attach our texture to FBO + glFramebufferTexture2D(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_TEXTURE_2D, id, 0); + + // Reading data as RGBA because FBO texture is configured as RGBA, despite binding another texture format + pixels = RL_CALLOC(rlGetPixelDataSize(width, height, RL_PIXELFORMAT_UNCOMPRESSED_R8G8B8A8), 1); + glReadPixels(0, 0, width, height, GL_RGBA, GL_UNSIGNED_BYTE, pixels); + + glBindFramebuffer(GL_FRAMEBUFFER, 0); + + // Clean up temporal fbo + rlUnloadFramebuffer(fboId); +#endif + + return pixels; +} + +// Copy framebuffer pixel data to internal buffer +void rlCopyFramebuffer(int x, int y, int width, int height, int format, void *pixels) +{ +#if defined(GRAPHICS_API_OPENGL_11_SOFTWARE) + unsigned int glInternalFormat, glFormat, glType; + rlGetGlTextureFormats(format, &glInternalFormat, &glFormat, &glType); // Get OpenGL texture format + swCopyFramebuffer(x, y, width, height, glFormat, glType, pixels); +#endif +} + +// Resize internal framebuffer +void rlResizeFramebuffer(int width, int height) +{ +#if defined(GRAPHICS_API_OPENGL_11_SOFTWARE) + swResizeFramebuffer(width, height); +#endif +} + +// Read screen pixel data (color buffer) +unsigned char *rlReadScreenPixels(int width, int height) +{ + unsigned char *imgData = (unsigned char *)RL_CALLOC(width*height*4, sizeof(unsigned char)); + + // NOTE: glReadPixels() returns image flipped vertically -> (0,0) is the bottom left corner of the framebuffer + // WARNING: Getting alpha channel! Be careful, it can be transparent if not cleared properly! + glReadPixels(0, 0, width, height, GL_RGBA, GL_UNSIGNED_BYTE, imgData); + + // Flip image vertically + // NOTE: Alpha value has already been applied to RGB in framebuffer, not needed anymore + for (int y = height - 1; y >= height/2; y--) + { + for (int x = 0; x < (width*4); x += 4) + { + unsigned int s = ((height - 1) - y)*width*4 + x; + unsigned int e = y*width*4 + x; + + unsigned char r = imgData[s]; + unsigned char g = imgData[s+1]; + unsigned char b = imgData[s+2]; + + imgData[s] = imgData[e]; + imgData[s+1] = imgData[e+1]; + imgData[s+2] = imgData[e+2]; + imgData[s+3] = 255; // Set alpha component value to 255 (no trasparent image retrieval) + + imgData[e] = r; + imgData[e+1] = g; + imgData[e+2] = b; + imgData[e+3] = 255; // Ditto + } + } + + return imgData; // NOTE: image data should be freed +} + +// Framebuffer management (fbo) +//----------------------------------------------------------------------------------------- +// Load a framebuffer to be used for rendering +// NOTE: No textures attached +unsigned int rlLoadFramebuffer(void) +{ + unsigned int fboId = 0; + if (!isGpuReady) { TRACELOG(RL_LOG_WARNING, "GL: GPU is not ready to load data, trying to load before InitWindow()?"); return fboId; } + +#if (defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2)) + glGenFramebuffers(1, &fboId); // Create the framebuffer object + glBindFramebuffer(GL_FRAMEBUFFER, 0); // Unbind any framebuffer +#endif + + return fboId; +} + +// Attach color buffer texture to a framebuffer object (unloads previous attachment) +// NOTE: Attach type: 0-Color, 1-Depth renderbuffer, 2-Depth texture +void rlFramebufferAttach(unsigned int id, unsigned int texId, int attachType, int texType, int mipLevel) +{ +#if (defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2)) + glBindFramebuffer(GL_FRAMEBUFFER, id); + + switch (attachType) + { + case RL_ATTACHMENT_COLOR_CHANNEL0: + case RL_ATTACHMENT_COLOR_CHANNEL1: + case RL_ATTACHMENT_COLOR_CHANNEL2: + case RL_ATTACHMENT_COLOR_CHANNEL3: + case RL_ATTACHMENT_COLOR_CHANNEL4: + case RL_ATTACHMENT_COLOR_CHANNEL5: + case RL_ATTACHMENT_COLOR_CHANNEL6: + case RL_ATTACHMENT_COLOR_CHANNEL7: + { + if (texType == RL_ATTACHMENT_TEXTURE2D) glFramebufferTexture2D(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0 + attachType, GL_TEXTURE_2D, texId, mipLevel); + else if (texType == RL_ATTACHMENT_RENDERBUFFER) glFramebufferRenderbuffer(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0 + attachType, GL_RENDERBUFFER, texId); + else if (texType >= RL_ATTACHMENT_CUBEMAP_POSITIVE_X) glFramebufferTexture2D(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0 + attachType, GL_TEXTURE_CUBE_MAP_POSITIVE_X + texType, texId, mipLevel); + } break; + case RL_ATTACHMENT_DEPTH: + { + if (texType == RL_ATTACHMENT_TEXTURE2D) glFramebufferTexture2D(GL_FRAMEBUFFER, GL_DEPTH_ATTACHMENT, GL_TEXTURE_2D, texId, mipLevel); + else if (texType == RL_ATTACHMENT_RENDERBUFFER) glFramebufferRenderbuffer(GL_FRAMEBUFFER, GL_DEPTH_ATTACHMENT, GL_RENDERBUFFER, texId); + } break; + case RL_ATTACHMENT_STENCIL: + { + if (texType == RL_ATTACHMENT_TEXTURE2D) glFramebufferTexture2D(GL_FRAMEBUFFER, GL_STENCIL_ATTACHMENT, GL_TEXTURE_2D, texId, mipLevel); + else if (texType == RL_ATTACHMENT_RENDERBUFFER) glFramebufferRenderbuffer(GL_FRAMEBUFFER, GL_STENCIL_ATTACHMENT, GL_RENDERBUFFER, texId); + } break; + default: break; + } + + glBindFramebuffer(GL_FRAMEBUFFER, 0); +#endif +} + +// Verify render texture is complete +bool rlFramebufferComplete(unsigned int id) +{ + bool result = false; + +#if (defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2)) + glBindFramebuffer(GL_FRAMEBUFFER, id); + + GLenum status = glCheckFramebufferStatus(GL_FRAMEBUFFER); + + if (status != GL_FRAMEBUFFER_COMPLETE) + { + switch (status) + { + case GL_FRAMEBUFFER_UNSUPPORTED: TRACELOG(RL_LOG_WARNING, "FBO: [ID %i] Framebuffer is unsupported", id); break; + case GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT: TRACELOG(RL_LOG_WARNING, "FBO: [ID %i] Framebuffer has incomplete attachment", id); break; +#if defined(GRAPHICS_API_OPENGL_ES2) + case GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS: TRACELOG(RL_LOG_WARNING, "FBO: [ID %i] Framebuffer has incomplete dimensions", id); break; +#endif + case GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT: TRACELOG(RL_LOG_WARNING, "FBO: [ID %i] Framebuffer has a missing attachment", id); break; + default: break; + } + } + + glBindFramebuffer(GL_FRAMEBUFFER, 0); + + result = (status == GL_FRAMEBUFFER_COMPLETE); +#endif + + return result; +} + +// Unload framebuffer from GPU memory +// NOTE: All attached textures/cubemaps/renderbuffers are also deleted +void rlUnloadFramebuffer(unsigned int id) +{ +#if (defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2)) + // Query depth attachment to automatically delete texture/renderbuffer + int depthType = 0; + glBindFramebuffer(GL_FRAMEBUFFER, id); // Bind framebuffer to query depth texture type + glGetFramebufferAttachmentParameteriv(GL_FRAMEBUFFER, GL_DEPTH_ATTACHMENT, GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE, &depthType); + + // WARNING: WebGL: INVALID_ENUM: getFramebufferAttachmentParameter: invalid parameter name + // REF: https://registry.khronos.org/webgl/specs/latest/1.0/ + int depthId = 0; + glGetFramebufferAttachmentParameteriv(GL_FRAMEBUFFER, GL_DEPTH_ATTACHMENT, GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME, &depthId); + + unsigned int depthIdU = (unsigned int)depthId; + if (depthType == GL_RENDERBUFFER) glDeleteRenderbuffers(1, &depthIdU); + else if (depthType == GL_TEXTURE) glDeleteTextures(1, &depthIdU); + + // NOTE: If a texture object is deleted while its image is attached to the *currently bound* framebuffer, + // the texture image is automatically detached from the currently bound framebuffer + + glBindFramebuffer(GL_FRAMEBUFFER, 0); + glDeleteFramebuffers(1, &id); + + TRACELOG(RL_LOG_INFO, "FBO: [ID %i] Unloaded framebuffer from VRAM (GPU)", id); +#endif +} + +// Vertex data management +//----------------------------------------------------------------------------------------- +// Load a new attributes buffer +unsigned int rlLoadVertexBuffer(const void *buffer, int size, bool dynamic) +{ + unsigned int id = 0; + if (!isGpuReady) { TRACELOG(RL_LOG_WARNING, "GL: GPU is not ready to load data, trying to load before InitWindow()?"); return id; } + +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + glGenBuffers(1, &id); + glBindBuffer(GL_ARRAY_BUFFER, id); + glBufferData(GL_ARRAY_BUFFER, size, buffer, dynamic? GL_DYNAMIC_DRAW : GL_STATIC_DRAW); +#endif + + return id; +} + +// Load a new attributes element buffer +unsigned int rlLoadVertexBufferElement(const void *buffer, int size, bool dynamic) +{ + unsigned int id = 0; + if (!isGpuReady) { TRACELOG(RL_LOG_WARNING, "GL: GPU is not ready to load data, trying to load before InitWindow()?"); return id; } + +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + glGenBuffers(1, &id); + glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, id); + glBufferData(GL_ELEMENT_ARRAY_BUFFER, size, buffer, dynamic? GL_DYNAMIC_DRAW : GL_STATIC_DRAW); +#endif + + return id; +} + +// Enable vertex buffer (VBO) +void rlEnableVertexBuffer(unsigned int id) +{ +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + glBindBuffer(GL_ARRAY_BUFFER, id); +#endif +} + +// Disable vertex buffer (VBO) +void rlDisableVertexBuffer(void) +{ +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + glBindBuffer(GL_ARRAY_BUFFER, 0); +#endif +} + +// Enable vertex buffer element (VBO element) +void rlEnableVertexBufferElement(unsigned int id) +{ +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, id); +#endif +} + +// Disable vertex buffer element (VBO element) +void rlDisableVertexBufferElement(void) +{ +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, 0); +#endif +} + +// Update vertex buffer with new data +// NOTE: dataSize and offset must be provided in bytes +void rlUpdateVertexBuffer(unsigned int id, const void *data, int dataSize, int offset) +{ +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + glBindBuffer(GL_ARRAY_BUFFER, id); + glBufferSubData(GL_ARRAY_BUFFER, offset, dataSize, data); +#endif +} + +// Update vertex buffer elements with new data +// NOTE: dataSize and offset must be provided in bytes +void rlUpdateVertexBufferElements(unsigned int id, const void *data, int dataSize, int offset) +{ +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, id); + glBufferSubData(GL_ELEMENT_ARRAY_BUFFER, offset, dataSize, data); +#endif +} + +// Enable vertex array object (VAO) +bool rlEnableVertexArray(unsigned int vaoId) +{ + bool result = false; +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + if (RLGL.ExtSupported.vao) + { + glBindVertexArray(vaoId); + result = true; + } +#endif + return result; +} + +// Disable vertex array object (VAO) +void rlDisableVertexArray(void) +{ +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + if (RLGL.ExtSupported.vao) glBindVertexArray(0); +#endif +} + +// Enable vertex attribute index +void rlEnableVertexAttribute(unsigned int index) +{ +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + glEnableVertexAttribArray(index); +#endif +} + +// Disable vertex attribute index +void rlDisableVertexAttribute(unsigned int index) +{ +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + glDisableVertexAttribArray(index); +#endif +} + +// Draw vertex array +void rlDrawVertexArray(int offset, int count) +{ + glDrawArrays(GL_TRIANGLES, offset, count); +} + +// Draw vertex array elements +void rlDrawVertexArrayElements(int offset, int count, const void *buffer) +{ + // NOTE: Added pointer math separately from function to avoid UBSAN complaining + unsigned short *bufferPtr = (unsigned short *)buffer; + if (offset > 0) bufferPtr += offset; + + glDrawElements(GL_TRIANGLES, count, GL_UNSIGNED_SHORT, (const unsigned short *)bufferPtr); +} + +// Draw vertex array instanced +void rlDrawVertexArrayInstanced(int offset, int count, int instances) +{ +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + glDrawArraysInstanced(GL_TRIANGLES, offset, count, instances); +#endif +} + +// Draw vertex array elements instanced +void rlDrawVertexArrayElementsInstanced(int offset, int count, const void *buffer, int instances) +{ +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + // NOTE: Added pointer math separately from function to avoid UBSAN complaining + unsigned short *bufferPtr = (unsigned short *)buffer; + if (offset > 0) bufferPtr += offset; + + glDrawElementsInstanced(GL_TRIANGLES, count, GL_UNSIGNED_SHORT, (const unsigned short *)bufferPtr, instances); +#endif +} + +// Enable vertex state pointer +void rlEnableStatePointer(int vertexAttribType, void *buffer) +{ +#if defined(GRAPHICS_API_OPENGL_11) + if (buffer != NULL) glEnableClientState(vertexAttribType); + switch (vertexAttribType) + { + case GL_VERTEX_ARRAY: glVertexPointer(3, GL_FLOAT, 0, buffer); break; + case GL_TEXTURE_COORD_ARRAY: glTexCoordPointer(2, GL_FLOAT, 0, buffer); break; + case GL_NORMAL_ARRAY: if (buffer != NULL) glNormalPointer(GL_FLOAT, 0, buffer); break; + case GL_COLOR_ARRAY: if (buffer != NULL) glColorPointer(4, GL_UNSIGNED_BYTE, 0, buffer); break; + //case GL_INDEX_ARRAY: if (buffer != NULL) glIndexPointer(GL_SHORT, 0, buffer); break; // Indexed colors + default: break; + } +#endif +} + +// Disable vertex state pointer +void rlDisableStatePointer(int vertexAttribType) +{ +#if defined(GRAPHICS_API_OPENGL_11) + glDisableClientState(vertexAttribType); +#endif +} + +// Load vertex array object (VAO) +unsigned int rlLoadVertexArray(void) +{ + unsigned int vaoId = 0; + if (!isGpuReady) { TRACELOG(RL_LOG_WARNING, "GL: GPU is not ready to load data, trying to load before InitWindow()?"); return vaoId; } + +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + if (RLGL.ExtSupported.vao) glGenVertexArrays(1, &vaoId); +#endif + + return vaoId; +} + +// Set vertex attribute +void rlSetVertexAttribute(unsigned int index, int compSize, int type, bool normalized, int stride, int offset) +{ +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + // NOTE: Data type could be: GL_BYTE, GL_UNSIGNED_BYTE, GL_SHORT, GL_UNSIGNED_SHORT, GL_INT, GL_UNSIGNED_INT + // Additional types (depends on OpenGL version or extensions): + // - GL_HALF_FLOAT, GL_FLOAT, GL_DOUBLE, GL_FIXED, + // - GL_INT_2_10_10_10_REV, GL_UNSIGNED_INT_2_10_10_10_REV, GL_UNSIGNED_INT_10F_11F_11F_REV + + size_t offsetNative = offset; + glVertexAttribPointer(index, compSize, type, normalized, stride, (void *)offsetNative); +#endif +} + +// Set vertex attribute divisor +void rlSetVertexAttributeDivisor(unsigned int index, int divisor) +{ +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + glVertexAttribDivisor(index, divisor); +#endif +} + +// Unload vertex array object (VAO) +void rlUnloadVertexArray(unsigned int vaoId) +{ +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + if (RLGL.ExtSupported.vao) + { + glBindVertexArray(0); + glDeleteVertexArrays(1, &vaoId); + TRACELOG(RL_LOG_INFO, "VAO: [ID %i] Unloaded vertex array data from VRAM (GPU)", vaoId); + } +#endif +} + +// Unload vertex buffer (VBO) +void rlUnloadVertexBuffer(unsigned int vboId) +{ +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + glDeleteBuffers(1, &vboId); + //TRACELOG(RL_LOG_INFO, "VBO: Unloaded vertex data from VRAM (GPU)"); +#endif +} + +// Shaders management +//----------------------------------------------------------------------------------------------- +// Load (compile) shader and return shader id +unsigned int rlLoadShader(const char *code, int type) +{ + unsigned int shaderId = 0; + +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + shaderId = glCreateShader(type); + glShaderSource(shaderId, 1, &code, NULL); + + GLint success = 0; + glCompileShader(shaderId); + glGetShaderiv(shaderId, GL_COMPILE_STATUS, &success); + + if (success == GL_FALSE) + { + switch (type) + { + case GL_VERTEX_SHADER: TRACELOG(RL_LOG_WARNING, "SHADER: [ID %i] Failed to compile vertex shader code", shaderId); break; + case GL_FRAGMENT_SHADER: TRACELOG(RL_LOG_WARNING, "SHADER: [ID %i] Failed to compile fragment shader code", shaderId); break; + //case GL_GEOMETRY_SHADER: + #if defined(GRAPHICS_API_OPENGL_43) + case GL_COMPUTE_SHADER: TRACELOG(RL_LOG_WARNING, "SHADER: [ID %i] Failed to compile compute shader code", shaderId); break; + #elif defined(GRAPHICS_API_OPENGL_33) + case GL_COMPUTE_SHADER: TRACELOG(RL_LOG_WARNING, "SHADER: Compute shaders not enabled. Define GRAPHICS_API_OPENGL_43", shaderId); break; + #endif + default: break; + } + + int maxLength = 0; + glGetShaderiv(shaderId, GL_INFO_LOG_LENGTH, &maxLength); + + if (maxLength > 0) + { + int length = 0; + char *log = (char *)RL_CALLOC(maxLength, sizeof(char)); + glGetShaderInfoLog(shaderId, maxLength, &length, log); + TRACELOG(RL_LOG_WARNING, "SHADER: [ID %i] Compile error: %s", shaderId, log); + RL_FREE(log); + } + + // Unload object allocated by glCreateShader(), + // despite failing in the compilation process + glDeleteShader(shaderId); + shaderId = 0; + } + else + { + switch (type) + { + case GL_VERTEX_SHADER: TRACELOG(RL_LOG_INFO, "SHADER: [ID %i] Vertex shader compiled successfully", shaderId); break; + case GL_FRAGMENT_SHADER: TRACELOG(RL_LOG_INFO, "SHADER: [ID %i] Fragment shader compiled successfully", shaderId); break; + //case GL_GEOMETRY_SHADER: + #if defined(GRAPHICS_API_OPENGL_43) + case GL_COMPUTE_SHADER: TRACELOG(RL_LOG_INFO, "SHADER: [ID %i] Compute shader compiled successfully", shaderId); break; + #elif defined(GRAPHICS_API_OPENGL_33) + case GL_COMPUTE_SHADER: TRACELOG(RL_LOG_WARNING, "SHADER: Compute shaders not enabled. Define GRAPHICS_API_OPENGL_43", shaderId); break; + #endif + default: break; + } + } +#endif + + return shaderId; +} + +// Load shader program from code strings +// NOTE: If shader string is NULL, using default vertex/fragment shaders +unsigned int rlLoadShaderProgram(const char *vsCode, const char *fsCode) +{ + unsigned int id = 0; // Shader program id + if (!isGpuReady) { TRACELOG(RL_LOG_WARNING, "GL: GPU is not ready to load data, trying to load before InitWindow()?"); return id; } + +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + unsigned int vertexShaderId = 0; + unsigned int fragmentShaderId = 0; + + // Compile vertex shader (if provided) + // NOTE: If not vertex shader is provided, use default one + if (vsCode != NULL) vertexShaderId = rlLoadShader(vsCode, GL_VERTEX_SHADER); + else vertexShaderId = RLGL.State.defaultVShaderId; + + // Compile fragment shader (if provided) + // NOTE: If not vertex shader is provided, use default one + if (fsCode != NULL) fragmentShaderId = rlLoadShader(fsCode, GL_FRAGMENT_SHADER); + else fragmentShaderId = RLGL.State.defaultFShaderId; + + // In case vertex and fragment shader are the default ones, no need to recompile, assign the default shader program id + if ((vertexShaderId == RLGL.State.defaultVShaderId) && (fragmentShaderId == RLGL.State.defaultFShaderId)) id = RLGL.State.defaultShaderId; + else if ((vertexShaderId > 0) && (fragmentShaderId > 0)) + { + // One of or both shader are new, a new shader program needs to be compiled + id = rlLoadShaderProgramEx(vertexShaderId, fragmentShaderId); + + // Detaching and deleting vertex/fragment shaders (if not default ones) + // WARNING: Detach shader before deletion to make sure memory is freed + if (vertexShaderId != RLGL.State.defaultVShaderId) + { + // WARNING: Shader program linkage could fail and returned id is 0 + if (id > 0) glDetachShader(id, vertexShaderId); + glDeleteShader(vertexShaderId); + } + if (fragmentShaderId != RLGL.State.defaultFShaderId) + { + // WARNING: Shader program linkage could fail and returned id is 0 + if (id > 0) glDetachShader(id, fragmentShaderId); + glDeleteShader(fragmentShaderId); + } + + // In case shader program loading failed, assign default shader + if (id == 0) + { + // In case shader loading fails, reassigning default shader + TRACELOG(RL_LOG_WARNING, "SHADER: Failed to load custom shader code, using default shader"); + id = RLGL.State.defaultShaderId; + } + /* + else + { + // Get available shader uniforms + // NOTE: This information is useful for debug... + int uniformCount = -1; + glGetProgramiv(id, GL_ACTIVE_UNIFORMS, &uniformCount); + + for (int i = 0; i < uniformCount; i++) + { + int namelen = -1; + int num = -1; + char name[256] = { 0 }; // Assume no variable names longer than 256 + GLenum type = GL_ZERO; + + // Get the name of the uniforms + glGetActiveUniform(id, i, sizeof(name) - 1, &namelen, &num, &type, name); + + name[namelen] = 0; + TRACELOG(RL_LOG_DEBUG, "SHADER: [ID %i] Active uniform (%s) set at location: %i", id, name, glGetUniformLocation(id, name)); + } + } + */ + } +#endif + + return id; +} + +// Load shader program from already loaded shader ids +unsigned int rlLoadShaderProgramEx(unsigned int vsId, unsigned int fsId) +{ + unsigned int programId = 0; + if (!isGpuReady) { TRACELOG(RL_LOG_WARNING, "GL: GPU is not ready to load data, trying to load before InitWindow()?"); return programId; } + +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + GLint success = 0; + programId = glCreateProgram(); + + glAttachShader(programId, vsId); + glAttachShader(programId, fsId); + + // Default attribute shader locations must be bound before linking + // NOTE: There is no problem with binding a generic attribute index to an attribute variable name + // that is never used; if some attrib name is no found on the shader, it locations becomes -1 + glBindAttribLocation(programId, RL_DEFAULT_SHADER_ATTRIB_LOCATION_POSITION, RL_DEFAULT_SHADER_ATTRIB_NAME_POSITION); + glBindAttribLocation(programId, RL_DEFAULT_SHADER_ATTRIB_LOCATION_TEXCOORD, RL_DEFAULT_SHADER_ATTRIB_NAME_TEXCOORD); + glBindAttribLocation(programId, RL_DEFAULT_SHADER_ATTRIB_LOCATION_NORMAL, RL_DEFAULT_SHADER_ATTRIB_NAME_NORMAL); + glBindAttribLocation(programId, RL_DEFAULT_SHADER_ATTRIB_LOCATION_COLOR, RL_DEFAULT_SHADER_ATTRIB_NAME_COLOR); + glBindAttribLocation(programId, RL_DEFAULT_SHADER_ATTRIB_LOCATION_TANGENT, RL_DEFAULT_SHADER_ATTRIB_NAME_TANGENT); + glBindAttribLocation(programId, RL_DEFAULT_SHADER_ATTRIB_LOCATION_TEXCOORD2, RL_DEFAULT_SHADER_ATTRIB_NAME_TEXCOORD2); + glBindAttribLocation(programId, RL_DEFAULT_SHADER_ATTRIB_LOCATION_INSTANCETRANSFORM, RL_DEFAULT_SHADER_ATTRIB_NAME_INSTANCETRANSFORM); + glBindAttribLocation(programId, RL_DEFAULT_SHADER_ATTRIB_LOCATION_BONEINDICES, RL_DEFAULT_SHADER_ATTRIB_NAME_BONEINDICES); + glBindAttribLocation(programId, RL_DEFAULT_SHADER_ATTRIB_LOCATION_BONEWEIGHTS, RL_DEFAULT_SHADER_ATTRIB_NAME_BONEWEIGHTS); + + glLinkProgram(programId); + + // NOTE: All uniform variables are intitialised to 0 when a program links + + glGetProgramiv(programId, GL_LINK_STATUS, &success); + + if (success == GL_FALSE) + { + TRACELOG(RL_LOG_WARNING, "SHADER: [ID %i] Failed to link shader program", programId); + + int maxLength = 0; + glGetProgramiv(programId, GL_INFO_LOG_LENGTH, &maxLength); + + if (maxLength > 0) + { + int length = 0; + char *log = (char *)RL_CALLOC(maxLength, sizeof(char)); + glGetProgramInfoLog(programId, maxLength, &length, log); + TRACELOG(RL_LOG_WARNING, "SHADER: [ID %i] Link error: %s", programId, log); + RL_FREE(log); + } + + glDeleteProgram(programId); + + programId = 0; + } + else + { + // Get the size of compiled shader program (not available on OpenGL ES 2.0) + // NOTE: If GL_LINK_STATUS is GL_FALSE, program binary length is zero + //GLint binarySize = 0; + //glGetProgramiv(id, GL_PROGRAM_BINARY_LENGTH, &binarySize); + + TRACELOG(RL_LOG_INFO, "SHADER: [ID %i] Program shader loaded successfully", programId); + } +#endif + return programId; +} + +// Load compute shader program +unsigned int rlLoadShaderProgramCompute(unsigned int csId) +{ + unsigned int programId = 0; + +#if defined(GRAPHICS_API_OPENGL_43) + GLint success = 0; + programId = glCreateProgram(); + + glAttachShader(programId, csId); + + glLinkProgram(programId); + + // NOTE: All uniform variables are intitialised to 0 when a program links + + glGetProgramiv(programId, GL_LINK_STATUS, &success); + + if (success == GL_FALSE) + { + TRACELOG(RL_LOG_WARNING, "SHADER: [ID %i] Failed to link compute shader program", programId); + + int maxLength = 0; + glGetProgramiv(programId, GL_INFO_LOG_LENGTH, &maxLength); + + if (maxLength > 0) + { + int length = 0; + char *log = (char *)RL_CALLOC(maxLength, sizeof(char)); + glGetProgramInfoLog(programId, maxLength, &length, log); + TRACELOG(RL_LOG_WARNING, "SHADER: [ID %i] Link error: %s", programId, log); + RL_FREE(log); + } + + glDeleteProgram(programId); + + programId = 0; + } + else + { + // Get the size of compiled shader program (not available on OpenGL ES 2.0) + // NOTE: If GL_LINK_STATUS is GL_FALSE, program binary length is zero + //GLint binarySize = 0; + //glGetProgramiv(id, GL_PROGRAM_BINARY_LENGTH, &binarySize); + + TRACELOG(RL_LOG_INFO, "SHADER: [ID %i] Compute shader program loaded successfully", programId); + } +#else + TRACELOG(RL_LOG_WARNING, "SHADER: Compute shaders not supported, enable GRAPHICS_API_OPENGL_43"); +#endif + + return programId; +} + +// Delete shader +void rlUnloadShader(unsigned int id) +{ +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + glDeleteShader(id); + + TRACELOG(RL_LOG_INFO, "SHADER: [ID %i] Unloaded shader data from VRAM (GPU)", id); +#endif +} + +// Unload shader program +void rlUnloadShaderProgram(unsigned int id) +{ +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + glDeleteProgram(id); + + TRACELOG(RL_LOG_INFO, "SHADER: [ID %i] Unloaded shader program data from VRAM (GPU)", id); +#endif +} + +// Get shader location uniform +// NOTE: First parameter refers to shader program id +int rlGetLocationUniform(unsigned int id, const char *uniformName) +{ + int location = -1; +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + location = glGetUniformLocation(id, uniformName); + + //if (location == -1) TRACELOG(RL_LOG_WARNING, "SHADER: [ID %i] Failed to find shader uniform: %s", shaderId, uniformName); + //else TRACELOG(RL_LOG_INFO, "SHADER: [ID %i] Shader uniform (%s) set at location: %i", shaderId, uniformName, location); +#endif + return location; +} + +// Get shader location attribute +// NOTE: First parameter refers to shader program id +int rlGetLocationAttrib(unsigned int id, const char *attribName) +{ + int location = -1; +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + location = glGetAttribLocation(id, attribName); + + //if (location == -1) TRACELOG(RL_LOG_WARNING, "SHADER: [ID %i] Failed to find shader attribute: %s", shaderId, attribName); + //else TRACELOG(RL_LOG_INFO, "SHADER: [ID %i] Shader attribute (%s) set at location: %i", shaderId, attribName, location); +#endif + return location; +} + +// Set shader value uniform +void rlSetUniform(int locIndex, const void *value, int uniformType, int count) +{ +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + switch (uniformType) + { + case RL_SHADER_UNIFORM_FLOAT: glUniform1fv(locIndex, count, (float *)value); break; + case RL_SHADER_UNIFORM_VEC2: glUniform2fv(locIndex, count, (float *)value); break; + case RL_SHADER_UNIFORM_VEC3: glUniform3fv(locIndex, count, (float *)value); break; + case RL_SHADER_UNIFORM_VEC4: glUniform4fv(locIndex, count, (float *)value); break; + case RL_SHADER_UNIFORM_INT: glUniform1iv(locIndex, count, (int *)value); break; + case RL_SHADER_UNIFORM_IVEC2: glUniform2iv(locIndex, count, (int *)value); break; + case RL_SHADER_UNIFORM_IVEC3: glUniform3iv(locIndex, count, (int *)value); break; + case RL_SHADER_UNIFORM_IVEC4: glUniform4iv(locIndex, count, (int *)value); break; + #if !defined(GRAPHICS_API_OPENGL_ES2) + case RL_SHADER_UNIFORM_UINT: glUniform1uiv(locIndex, count, (unsigned int *)value); break; + case RL_SHADER_UNIFORM_UIVEC2: glUniform2uiv(locIndex, count, (unsigned int *)value); break; + case RL_SHADER_UNIFORM_UIVEC3: glUniform3uiv(locIndex, count, (unsigned int *)value); break; + case RL_SHADER_UNIFORM_UIVEC4: glUniform4uiv(locIndex, count, (unsigned int *)value); break; + #endif + case RL_SHADER_UNIFORM_SAMPLER2D: glUniform1iv(locIndex, count, (int *)value); break; + default: TRACELOG(RL_LOG_WARNING, "SHADER: Failed to set uniform value, data type not recognized"); + } +#endif +} + +// Set shader value attribute +void rlSetVertexAttributeDefault(int locIndex, const void *value, int attribType, int count) +{ +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + switch (attribType) + { + case RL_SHADER_ATTRIB_FLOAT: if (count == 1) glVertexAttrib1fv(locIndex, (float *)value); break; + case RL_SHADER_ATTRIB_VEC2: if (count == 2) glVertexAttrib2fv(locIndex, (float *)value); break; + case RL_SHADER_ATTRIB_VEC3: if (count == 3) glVertexAttrib3fv(locIndex, (float *)value); break; + case RL_SHADER_ATTRIB_VEC4: if (count == 4) glVertexAttrib4fv(locIndex, (float *)value); break; + default: TRACELOG(RL_LOG_WARNING, "SHADER: Failed to set attrib default value, data type not recognized"); + } +#endif +} + +// Set shader value uniform matrix +void rlSetUniformMatrix(int locIndex, Matrix mat) +{ +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + glUniformMatrix4fv(locIndex, 1, false, rlMatrixToFloat(mat)); +#endif +} + +// Set shader value uniform matrix +void rlSetUniformMatrices(int locIndex, const Matrix *matrices, int count) +{ +#if defined(GRAPHICS_API_OPENGL_33) + glUniformMatrix4fv(locIndex, count, true, (const float *)matrices); +#elif defined(GRAPHICS_API_OPENGL_ES2) + // WARNING: WebGL does not support Matrix transpose ("true" parameter) + // REF: https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContext/uniformMatrix + glUniformMatrix4fv(locIndex, count, false, (const float *)matrices); +#endif +} + +// Set shader value uniform sampler +void rlSetUniformSampler(int locIndex, unsigned int textureId) +{ +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + // Check if texture is already active + for (int i = 0; i < RL_DEFAULT_BATCH_MAX_TEXTURE_UNITS; i++) + { + if (RLGL.State.activeTextureId[i] == textureId) + { + glUniform1i(locIndex, 1 + i); + return; + } + } + + // Register a new active texture for the internal batch system + // NOTE: Default texture is always activated as GL_TEXTURE0 + for (int i = 0; i < RL_DEFAULT_BATCH_MAX_TEXTURE_UNITS; i++) + { + if (RLGL.State.activeTextureId[i] == 0) + { + glUniform1i(locIndex, 1 + i); // Activate new texture unit + RLGL.State.activeTextureId[i] = textureId; // Save texture id for binding on drawing + break; + } + } +#endif +} + +// Set shader currently active (id and locations) +void rlSetShader(unsigned int id, int *locs) +{ +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + if (RLGL.State.currentShaderId != id) + { + rlDrawRenderBatch(RLGL.currentBatch); + RLGL.State.currentShaderId = id; + RLGL.State.currentShaderLocs = locs; + } +#endif +} + +// Dispatch compute shader (equivalent to *draw* for graphics pilepine) +void rlComputeShaderDispatch(unsigned int groupX, unsigned int groupY, unsigned int groupZ) +{ +#if defined(GRAPHICS_API_OPENGL_43) + glDispatchCompute(groupX, groupY, groupZ); +#endif +} + +// Load shader storage buffer object (SSBO) +unsigned int rlLoadShaderBuffer(unsigned int size, const void *data, int usageHint) +{ + unsigned int ssbo = 0; + +#if defined(GRAPHICS_API_OPENGL_43) + glGenBuffers(1, &ssbo); + glBindBuffer(GL_SHADER_STORAGE_BUFFER, ssbo); + glBufferData(GL_SHADER_STORAGE_BUFFER, size, data, usageHint? usageHint : RL_STREAM_COPY); + if (data == NULL) glClearBufferData(GL_SHADER_STORAGE_BUFFER, GL_R8UI, GL_RED_INTEGER, GL_UNSIGNED_BYTE, NULL); // Clear buffer data to 0 + glBindBuffer(GL_SHADER_STORAGE_BUFFER, 0); +#else + TRACELOG(RL_LOG_WARNING, "SSBO: SSBO not enabled. Define GRAPHICS_API_OPENGL_43"); +#endif + + return ssbo; +} + +// Unload shader storage buffer object (SSBO) +void rlUnloadShaderBuffer(unsigned int ssboId) +{ +#if defined(GRAPHICS_API_OPENGL_43) + glDeleteBuffers(1, &ssboId); +#else + TRACELOG(RL_LOG_WARNING, "SSBO: SSBO not enabled. Define GRAPHICS_API_OPENGL_43"); +#endif +} + +// Update SSBO buffer data +void rlUpdateShaderBuffer(unsigned int id, const void *data, unsigned int dataSize, unsigned int offset) +{ +#if defined(GRAPHICS_API_OPENGL_43) + glBindBuffer(GL_SHADER_STORAGE_BUFFER, id); + glBufferSubData(GL_SHADER_STORAGE_BUFFER, offset, dataSize, data); +#endif +} + +// Get SSBO buffer size +unsigned int rlGetShaderBufferSize(unsigned int id) +{ +#if defined(GRAPHICS_API_OPENGL_43) + GLint64 size = 0; + glBindBuffer(GL_SHADER_STORAGE_BUFFER, id); + glGetBufferParameteri64v(GL_SHADER_STORAGE_BUFFER, GL_BUFFER_SIZE, &size); + return (size > 0)? (unsigned int)size : 0; +#else + return 0; +#endif +} + +// Read SSBO buffer data (GPU->CPU) +void rlReadShaderBuffer(unsigned int id, void *dest, unsigned int count, unsigned int offset) +{ +#if defined(GRAPHICS_API_OPENGL_43) + glBindBuffer(GL_SHADER_STORAGE_BUFFER, id); + glGetBufferSubData(GL_SHADER_STORAGE_BUFFER, offset, count, dest); +#endif +} + +// Bind SSBO buffer +void rlBindShaderBuffer(unsigned int id, unsigned int index) +{ +#if defined(GRAPHICS_API_OPENGL_43) + glBindBufferBase(GL_SHADER_STORAGE_BUFFER, index, id); +#endif +} + +// Copy SSBO buffer data +void rlCopyShaderBuffer(unsigned int destId, unsigned int srcId, unsigned int destOffset, unsigned int srcOffset, unsigned int count) +{ +#if defined(GRAPHICS_API_OPENGL_43) + glBindBuffer(GL_COPY_READ_BUFFER, srcId); + glBindBuffer(GL_COPY_WRITE_BUFFER, destId); + glCopyBufferSubData(GL_COPY_READ_BUFFER, GL_COPY_WRITE_BUFFER, srcOffset, destOffset, count); +#endif +} + +// Bind image texture +void rlBindImageTexture(unsigned int id, unsigned int index, int format, bool readonly) +{ +#if defined(GRAPHICS_API_OPENGL_43) + unsigned int glInternalFormat = 0, glFormat = 0, glType = 0; + + rlGetGlTextureFormats(format, &glInternalFormat, &glFormat, &glType); + glBindImageTexture(index, id, 0, 0, 0, readonly? GL_READ_ONLY : GL_READ_WRITE, glInternalFormat); +#else + TRACELOG(RL_LOG_WARNING, "TEXTURE: Image texture binding not enabled. Define GRAPHICS_API_OPENGL_43"); +#endif +} + +// Matrix state management +//----------------------------------------------------------------------------------------- +// Get internal modelview matrix +Matrix rlGetMatrixModelview(void) +{ + Matrix matrix = rlMatrixIdentity(); +#if defined(GRAPHICS_API_OPENGL_11) + float mat[16]; + glGetFloatv(GL_MODELVIEW_MATRIX, mat); + matrix.m0 = mat[0]; + matrix.m1 = mat[1]; + matrix.m2 = mat[2]; + matrix.m3 = mat[3]; + matrix.m4 = mat[4]; + matrix.m5 = mat[5]; + matrix.m6 = mat[6]; + matrix.m7 = mat[7]; + matrix.m8 = mat[8]; + matrix.m9 = mat[9]; + matrix.m10 = mat[10]; + matrix.m11 = mat[11]; + matrix.m12 = mat[12]; + matrix.m13 = mat[13]; + matrix.m14 = mat[14]; + matrix.m15 = mat[15]; +#else + matrix = RLGL.State.modelview; +#endif + return matrix; +} + +// Get internal projection matrix +Matrix rlGetMatrixProjection(void) +{ +#if defined(GRAPHICS_API_OPENGL_11) + float mat[16]; + glGetFloatv(GL_PROJECTION_MATRIX,mat); + Matrix m; + m.m0 = mat[0]; + m.m1 = mat[1]; + m.m2 = mat[2]; + m.m3 = mat[3]; + m.m4 = mat[4]; + m.m5 = mat[5]; + m.m6 = mat[6]; + m.m7 = mat[7]; + m.m8 = mat[8]; + m.m9 = mat[9]; + m.m10 = mat[10]; + m.m11 = mat[11]; + m.m12 = mat[12]; + m.m13 = mat[13]; + m.m14 = mat[14]; + m.m15 = mat[15]; + return m; +#else + return RLGL.State.projection; +#endif +} + +// Get internal accumulated transform matrix +Matrix rlGetMatrixTransform(void) +{ + Matrix mat = rlMatrixIdentity(); +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + // TODO: Consider possible transform matrices in the RLGL.State.stack + //Matrix matStackTransform = rlMatrixIdentity(); + //for (int i = RLGL.State.stackCounter; i > 0; i--) matStackTransform = rlMatrixMultiply(RLGL.State.stack[i], matStackTransform); + + mat = RLGL.State.transform; +#endif + return mat; +} + +// Get internal projection matrix for stereo render (selected eye) +Matrix rlGetMatrixProjectionStereo(int eye) +{ + Matrix mat = rlMatrixIdentity(); +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + mat = RLGL.State.projectionStereo[eye]; +#endif + return mat; +} + +// Get internal view offset matrix for stereo render (selected eye) +Matrix rlGetMatrixViewOffsetStereo(int eye) +{ + Matrix mat = rlMatrixIdentity(); +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + mat = RLGL.State.viewOffsetStereo[eye]; +#endif + return mat; +} + +// Set a custom modelview matrix (replaces internal modelview matrix) +void rlSetMatrixModelview(Matrix view) +{ +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + RLGL.State.modelview = view; +#endif +} + +// Set a custom projection matrix (replaces internal projection matrix) +void rlSetMatrixProjection(Matrix projection) +{ +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + RLGL.State.projection = projection; +#endif +} + +// Set eyes projection matrices for stereo rendering +void rlSetMatrixProjectionStereo(Matrix right, Matrix left) +{ +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + RLGL.State.projectionStereo[0] = right; + RLGL.State.projectionStereo[1] = left; +#endif +} + +// Set eyes view offsets matrices for stereo rendering +void rlSetMatrixViewOffsetStereo(Matrix right, Matrix left) +{ +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + RLGL.State.viewOffsetStereo[0] = right; + RLGL.State.viewOffsetStereo[1] = left; +#endif +} + +// Load and draw a quad in NDC +void rlLoadDrawQuad(void) +{ +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + unsigned int quadVAO = 0; + unsigned int quadVBO = 0; + + float vertices[] = { + // Positions Texcoords + -1.0f, 1.0f, 0.0f, 0.0f, 1.0f, + -1.0f, -1.0f, 0.0f, 0.0f, 0.0f, + 1.0f, 1.0f, 0.0f, 1.0f, 1.0f, + 1.0f, -1.0f, 0.0f, 1.0f, 0.0f, + }; + + // Gen VAO to contain VBO + glGenVertexArrays(1, &quadVAO); + glBindVertexArray(quadVAO); + + // Gen and fill vertex buffer (VBO) + glGenBuffers(1, &quadVBO); + glBindBuffer(GL_ARRAY_BUFFER, quadVBO); + glBufferData(GL_ARRAY_BUFFER, sizeof(vertices), &vertices, GL_STATIC_DRAW); + + // Bind vertex attributes (position, texcoords) + glEnableVertexAttribArray(RL_DEFAULT_SHADER_ATTRIB_LOCATION_POSITION); + glVertexAttribPointer(RL_DEFAULT_SHADER_ATTRIB_LOCATION_POSITION, 3, GL_FLOAT, GL_FALSE, 5*sizeof(float), (void *)0); // Positions + glEnableVertexAttribArray(RL_DEFAULT_SHADER_ATTRIB_LOCATION_TEXCOORD); + glVertexAttribPointer(RL_DEFAULT_SHADER_ATTRIB_LOCATION_TEXCOORD, 2, GL_FLOAT, GL_FALSE, 5*sizeof(float), (void *)(3*sizeof(float))); // Texcoords + + // Draw quad + glBindVertexArray(quadVAO); + glDrawArrays(GL_TRIANGLE_STRIP, 0, 4); + glBindVertexArray(0); + + // Delete buffers (VBO and VAO) + glDeleteBuffers(1, &quadVBO); + glDeleteVertexArrays(1, &quadVAO); +#endif +} + +// Load and draw a cube in NDC +void rlLoadDrawCube(void) +{ +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) + unsigned int cubeVAO = 0; + unsigned int cubeVBO = 0; + + float vertices[] = { + // Positions Normals Texcoords + -1.0f, -1.0f, -1.0f, 0.0f, 0.0f, -1.0f, 0.0f, 0.0f, + 1.0f, 1.0f, -1.0f, 0.0f, 0.0f, -1.0f, 1.0f, 1.0f, + 1.0f, -1.0f, -1.0f, 0.0f, 0.0f, -1.0f, 1.0f, 0.0f, + 1.0f, 1.0f, -1.0f, 0.0f, 0.0f, -1.0f, 1.0f, 1.0f, + -1.0f, -1.0f, -1.0f, 0.0f, 0.0f, -1.0f, 0.0f, 0.0f, + -1.0f, 1.0f, -1.0f, 0.0f, 0.0f, -1.0f, 0.0f, 1.0f, + -1.0f, -1.0f, 1.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, + 1.0f, -1.0f, 1.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, + 1.0f, 1.0f, 1.0f, 0.0f, 0.0f, 1.0f, 1.0f, 1.0f, + 1.0f, 1.0f, 1.0f, 0.0f, 0.0f, 1.0f, 1.0f, 1.0f, + -1.0f, 1.0f, 1.0f, 0.0f, 0.0f, 1.0f, 0.0f, 1.0f, + -1.0f, -1.0f, 1.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, + -1.0f, 1.0f, 1.0f, -1.0f, 0.0f, 0.0f, 1.0f, 0.0f, + -1.0f, 1.0f, -1.0f, -1.0f, 0.0f, 0.0f, 1.0f, 1.0f, + -1.0f, -1.0f, -1.0f, -1.0f, 0.0f, 0.0f, 0.0f, 1.0f, + -1.0f, -1.0f, -1.0f, -1.0f, 0.0f, 0.0f, 0.0f, 1.0f, + -1.0f, -1.0f, 1.0f, -1.0f, 0.0f, 0.0f, 0.0f, 0.0f, + -1.0f, 1.0f, 1.0f, -1.0f, 0.0f, 0.0f, 1.0f, 0.0f, + 1.0f, 1.0f, 1.0f, 1.0f, 0.0f, 0.0f, 1.0f, 0.0f, + 1.0f, -1.0f, -1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 1.0f, + 1.0f, 1.0f, -1.0f, 1.0f, 0.0f, 0.0f, 1.0f, 1.0f, + 1.0f, -1.0f, -1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 1.0f, + 1.0f, 1.0f, 1.0f, 1.0f, 0.0f, 0.0f, 1.0f, 0.0f, + 1.0f, -1.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, + -1.0f, -1.0f, -1.0f, 0.0f, -1.0f, 0.0f, 0.0f, 1.0f, + 1.0f, -1.0f, -1.0f, 0.0f, -1.0f, 0.0f, 1.0f, 1.0f, + 1.0f, -1.0f, 1.0f, 0.0f, -1.0f, 0.0f, 1.0f, 0.0f, + 1.0f, -1.0f, 1.0f, 0.0f, -1.0f, 0.0f, 1.0f, 0.0f, + -1.0f, -1.0f, 1.0f, 0.0f, -1.0f, 0.0f, 0.0f, 0.0f, + -1.0f, -1.0f, -1.0f, 0.0f, -1.0f, 0.0f, 0.0f, 1.0f, + -1.0f, 1.0f, -1.0f, 0.0f, 1.0f, 0.0f, 0.0f, 1.0f, + 1.0f, 1.0f, 1.0f, 0.0f, 1.0f, 0.0f, 1.0f, 0.0f, + 1.0f, 1.0f, -1.0f, 0.0f, 1.0f, 0.0f, 1.0f, 1.0f, + 1.0f, 1.0f, 1.0f, 0.0f, 1.0f, 0.0f, 1.0f, 0.0f, + -1.0f, 1.0f, -1.0f, 0.0f, 1.0f, 0.0f, 0.0f, 1.0f, + -1.0f, 1.0f, 1.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f + }; + + // Gen VAO to contain VBO + glGenVertexArrays(1, &cubeVAO); + glBindVertexArray(cubeVAO); + + // Gen and fill vertex buffer (VBO) + glGenBuffers(1, &cubeVBO); + glBindBuffer(GL_ARRAY_BUFFER, cubeVBO); + glBufferData(GL_ARRAY_BUFFER, sizeof(vertices), vertices, GL_STATIC_DRAW); + + // Bind vertex attributes (position, normals, texcoords) + glBindVertexArray(cubeVAO); + glEnableVertexAttribArray(RL_DEFAULT_SHADER_ATTRIB_LOCATION_POSITION); + glVertexAttribPointer(RL_DEFAULT_SHADER_ATTRIB_LOCATION_POSITION, 3, GL_FLOAT, GL_FALSE, 8*sizeof(float), (void *)0); // Positions + glEnableVertexAttribArray(RL_DEFAULT_SHADER_ATTRIB_LOCATION_NORMAL); + glVertexAttribPointer(RL_DEFAULT_SHADER_ATTRIB_LOCATION_NORMAL, 3, GL_FLOAT, GL_FALSE, 8*sizeof(float), (void *)(3*sizeof(float))); // Normals + glEnableVertexAttribArray(RL_DEFAULT_SHADER_ATTRIB_LOCATION_TEXCOORD); + glVertexAttribPointer(RL_DEFAULT_SHADER_ATTRIB_LOCATION_TEXCOORD, 2, GL_FLOAT, GL_FALSE, 8*sizeof(float), (void *)(6*sizeof(float))); // Texcoords + glBindBuffer(GL_ARRAY_BUFFER, 0); + glBindVertexArray(0); + + // Draw cube + glBindVertexArray(cubeVAO); + glDrawArrays(GL_TRIANGLES, 0, 36); + glBindVertexArray(0); + + // Delete VBO and VAO + glDeleteBuffers(1, &cubeVBO); + glDeleteVertexArrays(1, &cubeVAO); +#endif +} + +// Get name string for pixel format +const char *rlGetPixelFormatName(unsigned int format) +{ + switch (format) + { + case RL_PIXELFORMAT_UNCOMPRESSED_GRAYSCALE: return "GRAYSCALE"; break; // 8 bit per pixel (no alpha) + case RL_PIXELFORMAT_UNCOMPRESSED_GRAY_ALPHA: return "GRAY_ALPHA"; break; // 8*2 bpp (2 channels) + case RL_PIXELFORMAT_UNCOMPRESSED_R5G6B5: return "R5G6B5"; break; // 16 bpp + case RL_PIXELFORMAT_UNCOMPRESSED_R8G8B8: return "R8G8B8"; break; // 24 bpp + case RL_PIXELFORMAT_UNCOMPRESSED_R5G5B5A1: return "R5G5B5A1"; break; // 16 bpp (1 bit alpha) + case RL_PIXELFORMAT_UNCOMPRESSED_R4G4B4A4: return "R4G4B4A4"; break; // 16 bpp (4 bit alpha) + case RL_PIXELFORMAT_UNCOMPRESSED_R8G8B8A8: return "R8G8B8A8"; break; // 32 bpp + case RL_PIXELFORMAT_UNCOMPRESSED_R32: return "R32"; break; // 32 bpp (1 channel - float) + case RL_PIXELFORMAT_UNCOMPRESSED_R32G32B32: return "R32G32B32"; break; // 32*3 bpp (3 channels - float) + case RL_PIXELFORMAT_UNCOMPRESSED_R32G32B32A32: return "R32G32B32A32"; break; // 32*4 bpp (4 channels - float) + case RL_PIXELFORMAT_UNCOMPRESSED_R16: return "R16"; break; // 16 bpp (1 channel - half float) + case RL_PIXELFORMAT_UNCOMPRESSED_R16G16B16: return "R16G16B16"; break; // 16*3 bpp (3 channels - half float) + case RL_PIXELFORMAT_UNCOMPRESSED_R16G16B16A16: return "R16G16B16A16"; break; // 16*4 bpp (4 channels - half float) + case RL_PIXELFORMAT_COMPRESSED_DXT1_RGB: return "DXT1_RGB"; break; // 4 bpp (no alpha) + case RL_PIXELFORMAT_COMPRESSED_DXT1_RGBA: return "DXT1_RGBA"; break; // 4 bpp (1 bit alpha) + case RL_PIXELFORMAT_COMPRESSED_DXT3_RGBA: return "DXT3_RGBA"; break; // 8 bpp + case RL_PIXELFORMAT_COMPRESSED_DXT5_RGBA: return "DXT5_RGBA"; break; // 8 bpp + case RL_PIXELFORMAT_COMPRESSED_ETC1_RGB: return "ETC1_RGB"; break; // 4 bpp + case RL_PIXELFORMAT_COMPRESSED_ETC2_RGB: return "ETC2_RGB"; break; // 4 bpp + case RL_PIXELFORMAT_COMPRESSED_ETC2_EAC_RGBA: return "ETC2_RGBA"; break; // 8 bpp + case RL_PIXELFORMAT_COMPRESSED_PVRT_RGB: return "PVRT_RGB"; break; // 4 bpp + case RL_PIXELFORMAT_COMPRESSED_PVRT_RGBA: return "PVRT_RGBA"; break; // 4 bpp + case RL_PIXELFORMAT_COMPRESSED_ASTC_4x4_RGBA: return "ASTC_4x4_RGBA"; break; // 8 bpp + case RL_PIXELFORMAT_COMPRESSED_ASTC_8x8_RGBA: return "ASTC_8x8_RGBA"; break; // 2 bpp + default: return "UNKNOWN"; break; + } +} + +//---------------------------------------------------------------------------------- +// Module Functions Definition +//---------------------------------------------------------------------------------- +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) +// Load default shader (just vertex positioning and texture coloring) +// NOTE: This shader program is used for internal buffers +// NOTE: Loaded: RLGL.State.defaultShaderId, RLGL.State.defaultShaderLocs +static void rlLoadShaderDefault(void) +{ + RLGL.State.defaultShaderLocs = (int *)RL_CALLOC(RL_MAX_SHADER_LOCATIONS, sizeof(int)); + + // NOTE: All locations must be reseted to -1 (no location) + for (int i = 0; i < RL_MAX_SHADER_LOCATIONS; i++) RLGL.State.defaultShaderLocs[i] = -1; + + // Vertex shader directly defined, no external file required + const char *defaultVShaderCode = +#if defined(GRAPHICS_API_OPENGL_21) + "#version 120 \n" + "attribute vec3 vertexPosition; \n" + "attribute vec2 vertexTexCoord; \n" + "attribute vec4 vertexColor; \n" + "varying vec2 fragTexCoord; \n" + "varying vec4 fragColor; \n" +#elif defined(GRAPHICS_API_OPENGL_33) + "#version 330 \n" + "in vec3 vertexPosition; \n" + "in vec2 vertexTexCoord; \n" + "in vec4 vertexColor; \n" + "out vec2 fragTexCoord; \n" + "out vec4 fragColor; \n" +#endif + +#if defined(GRAPHICS_API_OPENGL_ES3) + "#version 300 es \n" + "precision mediump float; \n" // Precision required for OpenGL ES3 (WebGL 2) (on some browsers) + "in vec3 vertexPosition; \n" + "in vec2 vertexTexCoord; \n" + "in vec4 vertexColor; \n" + "out vec2 fragTexCoord; \n" + "out vec4 fragColor; \n" +#elif defined(GRAPHICS_API_OPENGL_ES2) + "#version 100 \n" + "precision mediump float; \n" // Precision required for OpenGL ES2 (WebGL) (on some browsers) + "attribute vec3 vertexPosition; \n" + "attribute vec2 vertexTexCoord; \n" + "attribute vec4 vertexColor; \n" + "varying vec2 fragTexCoord; \n" + "varying vec4 fragColor; \n" +#endif + + "uniform mat4 mvp; \n" + "void main() \n" + "{ \n" + " fragTexCoord = vertexTexCoord; \n" + " fragColor = vertexColor; \n" + " gl_Position = mvp*vec4(vertexPosition, 1.0); \n" + "} \n"; + + // Fragment shader directly defined, no external file required + const char *defaultFShaderCode = +#if defined(GRAPHICS_API_OPENGL_21) + "#version 120 \n" + "varying vec2 fragTexCoord; \n" + "varying vec4 fragColor; \n" + "uniform sampler2D texture0; \n" + "uniform vec4 colDiffuse; \n" + "void main() \n" + "{ \n" + " vec4 texelColor = texture2D(texture0, fragTexCoord); \n" + " gl_FragColor = texelColor*colDiffuse*fragColor; \n" + "} \n"; +#elif defined(GRAPHICS_API_OPENGL_33) + "#version 330 \n" + "in vec2 fragTexCoord; \n" + "in vec4 fragColor; \n" + "out vec4 finalColor; \n" + "uniform sampler2D texture0; \n" + "uniform vec4 colDiffuse; \n" + "void main() \n" + "{ \n" + " vec4 texelColor = texture(texture0, fragTexCoord); \n" + " finalColor = texelColor*colDiffuse*fragColor; \n" + "} \n"; +#endif + +#if defined(GRAPHICS_API_OPENGL_ES3) + "#version 300 es \n" + "precision mediump float; \n" // Precision required for OpenGL ES3 (WebGL 2) + "in vec2 fragTexCoord; \n" + "in vec4 fragColor; \n" + "out vec4 finalColor; \n" + "uniform sampler2D texture0; \n" + "uniform vec4 colDiffuse; \n" + "void main() \n" + "{ \n" + " vec4 texelColor = texture(texture0, fragTexCoord); \n" + " finalColor = texelColor*colDiffuse*fragColor; \n" + "} \n"; +#elif defined(GRAPHICS_API_OPENGL_ES2) + "#version 100 \n" + "precision mediump float; \n" // Precision required for OpenGL ES2 (WebGL) + "varying vec2 fragTexCoord; \n" + "varying vec4 fragColor; \n" + "uniform sampler2D texture0; \n" + "uniform vec4 colDiffuse; \n" + "void main() \n" + "{ \n" + " vec4 texelColor = texture2D(texture0, fragTexCoord); \n" + " gl_FragColor = texelColor*colDiffuse*fragColor; \n" + "} \n"; +#endif + + // NOTE: Compiled vertex/fragment shaders are not deleted, + // they are kept for re-use as default shaders in case some shader loading fails + RLGL.State.defaultVShaderId = rlLoadShader(defaultVShaderCode, GL_VERTEX_SHADER); // Compile default vertex shader + RLGL.State.defaultFShaderId = rlLoadShader(defaultFShaderCode, GL_FRAGMENT_SHADER); // Compile default fragment shader + + RLGL.State.defaultShaderId = rlLoadShaderProgramEx(RLGL.State.defaultVShaderId, RLGL.State.defaultFShaderId); + + if (RLGL.State.defaultShaderId > 0) + { + TRACELOG(RL_LOG_INFO, "SHADER: [ID %i] Default shader loaded successfully", RLGL.State.defaultShaderId); + + // Set default shader locations: attributes locations + RLGL.State.defaultShaderLocs[RL_SHADER_LOC_VERTEX_POSITION] = glGetAttribLocation(RLGL.State.defaultShaderId, RL_DEFAULT_SHADER_ATTRIB_NAME_POSITION); + RLGL.State.defaultShaderLocs[RL_SHADER_LOC_VERTEX_TEXCOORD01] = glGetAttribLocation(RLGL.State.defaultShaderId, RL_DEFAULT_SHADER_ATTRIB_NAME_TEXCOORD); + RLGL.State.defaultShaderLocs[RL_SHADER_LOC_VERTEX_COLOR] = glGetAttribLocation(RLGL.State.defaultShaderId, RL_DEFAULT_SHADER_ATTRIB_NAME_COLOR); + + // Set default shader locations: uniform locations + RLGL.State.defaultShaderLocs[RL_SHADER_LOC_MATRIX_MVP] = glGetUniformLocation(RLGL.State.defaultShaderId, RL_DEFAULT_SHADER_UNIFORM_NAME_MVP); + RLGL.State.defaultShaderLocs[RL_SHADER_LOC_COLOR_DIFFUSE] = glGetUniformLocation(RLGL.State.defaultShaderId, RL_DEFAULT_SHADER_UNIFORM_NAME_COLOR); + RLGL.State.defaultShaderLocs[RL_SHADER_LOC_MAP_DIFFUSE] = glGetUniformLocation(RLGL.State.defaultShaderId, RL_DEFAULT_SHADER_SAMPLER2D_NAME_TEXTURE0); + } + else TRACELOG(RL_LOG_WARNING, "SHADER: [ID %i] Failed to load default shader", RLGL.State.defaultShaderId); +} + +// Unload default shader +// NOTE: Unloads: RLGL.State.defaultShaderId, RLGL.State.defaultShaderLocs +static void rlUnloadShaderDefault(void) +{ + glUseProgram(0); + + glDetachShader(RLGL.State.defaultShaderId, RLGL.State.defaultVShaderId); + glDetachShader(RLGL.State.defaultShaderId, RLGL.State.defaultFShaderId); + glDeleteShader(RLGL.State.defaultVShaderId); + glDeleteShader(RLGL.State.defaultFShaderId); + + glDeleteProgram(RLGL.State.defaultShaderId); + + RL_FREE(RLGL.State.defaultShaderLocs); + + TRACELOG(RL_LOG_INFO, "SHADER: [ID %i] Default shader unloaded successfully", RLGL.State.defaultShaderId); +} + +#if RLGL_SHOW_GL_DETAILS_INFO +// Get compressed format official GL identifier name +static const char *rlGetCompressedFormatName(int format) +{ + switch (format) + { + // GL_EXT_texture_compression_s3tc + case 0x83F0: return "GL_COMPRESSED_RGB_S3TC_DXT1_EXT"; break; + case 0x83F1: return "GL_COMPRESSED_RGBA_S3TC_DXT1_EXT"; break; + case 0x83F2: return "GL_COMPRESSED_RGBA_S3TC_DXT3_EXT"; break; + case 0x83F3: return "GL_COMPRESSED_RGBA_S3TC_DXT5_EXT"; break; + // GL_3DFX_texture_compression_FXT1 + case 0x86B0: return "GL_COMPRESSED_RGB_FXT1_3DFX"; break; + case 0x86B1: return "GL_COMPRESSED_RGBA_FXT1_3DFX"; break; + // GL_IMG_texture_compression_pvrtc + case 0x8C00: return "GL_COMPRESSED_RGB_PVRTC_4BPPV1_IMG"; break; + case 0x8C01: return "GL_COMPRESSED_RGB_PVRTC_2BPPV1_IMG"; break; + case 0x8C02: return "GL_COMPRESSED_RGBA_PVRTC_4BPPV1_IMG"; break; + case 0x8C03: return "GL_COMPRESSED_RGBA_PVRTC_2BPPV1_IMG"; break; + // GL_OES_compressed_ETC1_RGB8_texture + case 0x8D64: return "GL_ETC1_RGB8_OES"; break; + // GL_ARB_texture_compression_rgtc + case 0x8DBB: return "GL_COMPRESSED_RED_RGTC1"; break; + case 0x8DBC: return "GL_COMPRESSED_SIGNED_RED_RGTC1"; break; + case 0x8DBD: return "GL_COMPRESSED_RG_RGTC2"; break; + case 0x8DBE: return "GL_COMPRESSED_SIGNED_RG_RGTC2"; break; + // GL_ARB_texture_compression_bptc + case 0x8E8C: return "GL_COMPRESSED_RGBA_BPTC_UNORM_ARB"; break; + case 0x8E8D: return "GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM_ARB"; break; + case 0x8E8E: return "GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT_ARB"; break; + case 0x8E8F: return "GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_ARB"; break; + // GL_ARB_ES3_compatibility + case 0x9274: return "GL_COMPRESSED_RGB8_ETC2"; break; + case 0x9275: return "GL_COMPRESSED_SRGB8_ETC2"; break; + case 0x9276: return "GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2"; break; + case 0x9277: return "GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2"; break; + case 0x9278: return "GL_COMPRESSED_RGBA8_ETC2_EAC"; break; + case 0x9279: return "GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC"; break; + case 0x9270: return "GL_COMPRESSED_R11_EAC"; break; + case 0x9271: return "GL_COMPRESSED_SIGNED_R11_EAC"; break; + case 0x9272: return "GL_COMPRESSED_RG11_EAC"; break; + case 0x9273: return "GL_COMPRESSED_SIGNED_RG11_EAC"; break; + // GL_KHR_texture_compression_astc_hdr + case 0x93B0: return "GL_COMPRESSED_RGBA_ASTC_4x4_KHR"; break; + case 0x93B1: return "GL_COMPRESSED_RGBA_ASTC_5x4_KHR"; break; + case 0x93B2: return "GL_COMPRESSED_RGBA_ASTC_5x5_KHR"; break; + case 0x93B3: return "GL_COMPRESSED_RGBA_ASTC_6x5_KHR"; break; + case 0x93B4: return "GL_COMPRESSED_RGBA_ASTC_6x6_KHR"; break; + case 0x93B5: return "GL_COMPRESSED_RGBA_ASTC_8x5_KHR"; break; + case 0x93B6: return "GL_COMPRESSED_RGBA_ASTC_8x6_KHR"; break; + case 0x93B7: return "GL_COMPRESSED_RGBA_ASTC_8x8_KHR"; break; + case 0x93B8: return "GL_COMPRESSED_RGBA_ASTC_10x5_KHR"; break; + case 0x93B9: return "GL_COMPRESSED_RGBA_ASTC_10x6_KHR"; break; + case 0x93BA: return "GL_COMPRESSED_RGBA_ASTC_10x8_KHR"; break; + case 0x93BB: return "GL_COMPRESSED_RGBA_ASTC_10x10_KHR"; break; + case 0x93BC: return "GL_COMPRESSED_RGBA_ASTC_12x10_KHR"; break; + case 0x93BD: return "GL_COMPRESSED_RGBA_ASTC_12x12_KHR"; break; + case 0x93D0: return "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR"; break; + case 0x93D1: return "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR"; break; + case 0x93D2: return "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR"; break; + case 0x93D3: return "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR"; break; + case 0x93D4: return "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR"; break; + case 0x93D5: return "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR"; break; + case 0x93D6: return "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR"; break; + case 0x93D7: return "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR"; break; + case 0x93D8: return "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR"; break; + case 0x93D9: return "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR"; break; + case 0x93DA: return "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR"; break; + case 0x93DB: return "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR"; break; + case 0x93DC: return "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR"; break; + case 0x93DD: return "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR"; break; + default: return "GL_COMPRESSED_UNKNOWN"; break; + } +} +#endif + +#endif // GRAPHICS_API_OPENGL_33 || GRAPHICS_API_OPENGL_ES2 + +// Get pixel data size in bytes (image or texture) +// NOTE: Size depends on pixel format +static int rlGetPixelDataSize(int width, int height, int format) +{ + int dataSize = 0; // Size in bytes + int bpp = 0; // Bits per pixel + + switch (format) + { + case RL_PIXELFORMAT_UNCOMPRESSED_GRAYSCALE: bpp = 8; break; + case RL_PIXELFORMAT_UNCOMPRESSED_GRAY_ALPHA: + case RL_PIXELFORMAT_UNCOMPRESSED_R5G6B5: + case RL_PIXELFORMAT_UNCOMPRESSED_R5G5B5A1: + case RL_PIXELFORMAT_UNCOMPRESSED_R4G4B4A4: bpp = 16; break; + case RL_PIXELFORMAT_UNCOMPRESSED_R8G8B8A8: bpp = 32; break; + case RL_PIXELFORMAT_UNCOMPRESSED_R8G8B8: bpp = 24; break; + case RL_PIXELFORMAT_UNCOMPRESSED_R32: bpp = 32; break; + case RL_PIXELFORMAT_UNCOMPRESSED_R32G32B32: bpp = 32*3; break; + case RL_PIXELFORMAT_UNCOMPRESSED_R32G32B32A32: bpp = 32*4; break; + case RL_PIXELFORMAT_UNCOMPRESSED_R16: bpp = 16; break; + case RL_PIXELFORMAT_UNCOMPRESSED_R16G16B16: bpp = 16*3; break; + case RL_PIXELFORMAT_UNCOMPRESSED_R16G16B16A16: bpp = 16*4; break; + case RL_PIXELFORMAT_COMPRESSED_DXT1_RGB: + case RL_PIXELFORMAT_COMPRESSED_DXT1_RGBA: + case RL_PIXELFORMAT_COMPRESSED_ETC1_RGB: + case RL_PIXELFORMAT_COMPRESSED_ETC2_RGB: + case RL_PIXELFORMAT_COMPRESSED_PVRT_RGB: + case RL_PIXELFORMAT_COMPRESSED_PVRT_RGBA: // 8 bytes per each 4x4 block + { + int blockWidth = (width + 3)/4; + int blockHeight = (height + 3)/4; + dataSize = blockWidth*blockHeight*8; + } break; + case RL_PIXELFORMAT_COMPRESSED_DXT3_RGBA: + case RL_PIXELFORMAT_COMPRESSED_DXT5_RGBA: + case RL_PIXELFORMAT_COMPRESSED_ETC2_EAC_RGBA: + case RL_PIXELFORMAT_COMPRESSED_ASTC_4x4_RGBA: // 16 bytes per each 4x4 block + { + int blockWidth = (width + 3)/4; + int blockHeight = (height + 3)/4; + dataSize = blockWidth*blockHeight*16; + } break; + case RL_PIXELFORMAT_COMPRESSED_ASTC_8x8_RGBA: // 4 bytes per each 4x4 block + { + int blockWidth = (width + 3)/4; + int blockHeight = (height + 3)/4; + dataSize = blockWidth*blockHeight*4; + } break; + default: break; + } + + // Compute dataSize for uncompressed texture data (no blocks) + if ((format >= RL_PIXELFORMAT_UNCOMPRESSED_GRAYSCALE) && + (format <= RL_PIXELFORMAT_UNCOMPRESSED_R16G16B16A16)) + { + double bytesPerPixel = (double)bpp/8.0; + dataSize = (int)(bytesPerPixel*width*height); // Total data size in bytes + } + + return dataSize; +} + +// Auxiliar math functions +//------------------------------------------------------------------------------- +// Get identity matrix +static Matrix rlMatrixIdentity(void) +{ + Matrix matIdentity = { 0 }; + matIdentity.m0 = 1.0f; + matIdentity.m5 = 1.0f; + matIdentity.m10 = 1.0f; + matIdentity.m15 = 1.0f; + + return matIdentity; +} +#if defined(GRAPHICS_API_OPENGL_33) || defined(GRAPHICS_API_OPENGL_ES2) +// Get float array of matrix data +// Explicit conversion to column-major memory layout +static rl_float16 rlMatrixToFloatV(Matrix mat) +{ + rl_float16 result = { 0 }; + + result.v[0] = mat.m0; + result.v[1] = mat.m1; + result.v[2] = mat.m2; + result.v[3] = mat.m3; + result.v[4] = mat.m4; + result.v[5] = mat.m5; + result.v[6] = mat.m6; + result.v[7] = mat.m7; + result.v[8] = mat.m8; + result.v[9] = mat.m9; + result.v[10] = mat.m10; + result.v[11] = mat.m11; + result.v[12] = mat.m12; + result.v[13] = mat.m13; + result.v[14] = mat.m14; + result.v[15] = mat.m15; + + return result; +} + +// Get two matrix multiplication +// NOTE: When multiplying matrices... the order matters! +static Matrix rlMatrixMultiply(Matrix left, Matrix right) +{ + Matrix result = { 0 }; + + result.m0 = left.m0*right.m0 + left.m1*right.m4 + left.m2*right.m8 + left.m3*right.m12; + result.m1 = left.m0*right.m1 + left.m1*right.m5 + left.m2*right.m9 + left.m3*right.m13; + result.m2 = left.m0*right.m2 + left.m1*right.m6 + left.m2*right.m10 + left.m3*right.m14; + result.m3 = left.m0*right.m3 + left.m1*right.m7 + left.m2*right.m11 + left.m3*right.m15; + result.m4 = left.m4*right.m0 + left.m5*right.m4 + left.m6*right.m8 + left.m7*right.m12; + result.m5 = left.m4*right.m1 + left.m5*right.m5 + left.m6*right.m9 + left.m7*right.m13; + result.m6 = left.m4*right.m2 + left.m5*right.m6 + left.m6*right.m10 + left.m7*right.m14; + result.m7 = left.m4*right.m3 + left.m5*right.m7 + left.m6*right.m11 + left.m7*right.m15; + result.m8 = left.m8*right.m0 + left.m9*right.m4 + left.m10*right.m8 + left.m11*right.m12; + result.m9 = left.m8*right.m1 + left.m9*right.m5 + left.m10*right.m9 + left.m11*right.m13; + result.m10 = left.m8*right.m2 + left.m9*right.m6 + left.m10*right.m10 + left.m11*right.m14; + result.m11 = left.m8*right.m3 + left.m9*right.m7 + left.m10*right.m11 + left.m11*right.m15; + result.m12 = left.m12*right.m0 + left.m13*right.m4 + left.m14*right.m8 + left.m15*right.m12; + result.m13 = left.m12*right.m1 + left.m13*right.m5 + left.m14*right.m9 + left.m15*right.m13; + result.m14 = left.m12*right.m2 + left.m13*right.m6 + left.m14*right.m10 + left.m15*right.m14; + result.m15 = left.m12*right.m3 + left.m13*right.m7 + left.m14*right.m11 + left.m15*right.m15; + + return result; +} + +// Transposes provided matrix +static Matrix rlMatrixTranspose(Matrix mat) +{ + Matrix result = { 0 }; + + result.m0 = mat.m0; + result.m1 = mat.m4; + result.m2 = mat.m8; + result.m3 = mat.m12; + result.m4 = mat.m1; + result.m5 = mat.m5; + result.m6 = mat.m9; + result.m7 = mat.m13; + result.m8 = mat.m2; + result.m9 = mat.m6; + result.m10 = mat.m10; + result.m11 = mat.m14; + result.m12 = mat.m3; + result.m13 = mat.m7; + result.m14 = mat.m11; + result.m15 = mat.m15; + + return result; +} + +// Invert provided matrix +static Matrix rlMatrixInvert(Matrix mat) +{ + Matrix result = { 0 }; + + // Cache the matrix values (speed optimization) + float a00 = mat.m0, a01 = mat.m1, a02 = mat.m2, a03 = mat.m3; + float a10 = mat.m4, a11 = mat.m5, a12 = mat.m6, a13 = mat.m7; + float a20 = mat.m8, a21 = mat.m9, a22 = mat.m10, a23 = mat.m11; + float a30 = mat.m12, a31 = mat.m13, a32 = mat.m14, a33 = mat.m15; + + float b00 = a00*a11 - a01*a10; + float b01 = a00*a12 - a02*a10; + float b02 = a00*a13 - a03*a10; + float b03 = a01*a12 - a02*a11; + float b04 = a01*a13 - a03*a11; + float b05 = a02*a13 - a03*a12; + float b06 = a20*a31 - a21*a30; + float b07 = a20*a32 - a22*a30; + float b08 = a20*a33 - a23*a30; + float b09 = a21*a32 - a22*a31; + float b10 = a21*a33 - a23*a31; + float b11 = a22*a33 - a23*a32; + + // Calculate the invert determinant (inlined to avoid double-caching) + float invDet = 1.0f/(b00*b11 - b01*b10 + b02*b09 + b03*b08 - b04*b07 + b05*b06); + + result.m0 = (a11*b11 - a12*b10 + a13*b09)*invDet; + result.m1 = (-a01*b11 + a02*b10 - a03*b09)*invDet; + result.m2 = (a31*b05 - a32*b04 + a33*b03)*invDet; + result.m3 = (-a21*b05 + a22*b04 - a23*b03)*invDet; + result.m4 = (-a10*b11 + a12*b08 - a13*b07)*invDet; + result.m5 = (a00*b11 - a02*b08 + a03*b07)*invDet; + result.m6 = (-a30*b05 + a32*b02 - a33*b01)*invDet; + result.m7 = (a20*b05 - a22*b02 + a23*b01)*invDet; + result.m8 = (a10*b10 - a11*b08 + a13*b06)*invDet; + result.m9 = (-a00*b10 + a01*b08 - a03*b06)*invDet; + result.m10 = (a30*b04 - a31*b02 + a33*b00)*invDet; + result.m11 = (-a20*b04 + a21*b02 - a23*b00)*invDet; + result.m12 = (-a10*b09 + a11*b07 - a12*b06)*invDet; + result.m13 = (a00*b09 - a01*b07 + a02*b06)*invDet; + result.m14 = (-a30*b03 + a31*b01 - a32*b00)*invDet; + result.m15 = (a20*b03 - a21*b01 + a22*b00)*invDet; + + return result; +} +#endif + +#endif // RLGL_IMPLEMENTATION diff --git a/lib/linux/libraylib.a b/lib/linux/libraylib.a new file mode 100644 index 0000000000000000000000000000000000000000..104b2f1c803dd59cec8d347d078951ad40b2f63c GIT binary patch literal 2861468 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

pR5e`r)= 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�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

t$4 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

bSvx}RiZAoRdhMo7FO8oya`sCG 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

@dp@ej_K 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%0D*K-g(NW!{<{{4cFq0SFkP-VQ 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

-n+(bW5oF_RZz-M2~Nat4`xmHQ;18RU>&C7mO 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

$6$=Hx)>)N zS&NGn7gQ{>D$18yRkvcm#%r!V8rusN-NFnwF)z)-!Gd|^ z#d(lTy(C8ZlClzCo-e-=eJUe#lBYV;v&yQMv@@qW{6^W|{b& zjXEyMqR;5?M|3QOgo1K0Gbze0U&uVvAsLA}77L@1RtB2nLy`zl!qdu2%P|UMRT2MH zbaM^DlTAWT>)c6y;YTv|F?)vH-tdU0fc# zP@3YbGS9}RoiWE5=hc_x>E$ej zt+UIQf|k{DhWemW5Xz_tTA9wNBXg3$GH`e<4zk0!tz5f+sc<8TDs(qKu6oqcN=otO zztS(aJSU${TC_57j%=lBGO6mj$0nVb_$24m_=YdqJd#wZ=xUGFN*RPWV$Gp%8dCan z{+or*m#ME>DTS)IuFTC}LMiK_rl`5)bIbB?(bmo_PeVeboSAvKnMq8FY91tEL1Lhs zDgx;T!$_In#Z06UY%nmSX-bNqGgZl$@C;7vtFknwx@yske9QuCaDfh|tcq@Jig7Wg z97hN$DyO`HSw!PQ3gSxX7gR;H$KaJZI<}jtIXK#}q`bNc_kRBsp>F``amoz*zQv3B z3@JxRGMCo3N-^aKwB{xUlvv3{MN8mXEzlm{5 zhHilkf05vq@^2NmlwTw8*+S0BF!IZKg9*;)|2*rzT;OvMZuD6raN2`q@Y@-8>OY(p zw2l1Vv;1)am+~hGoYu~b{8YxB@~;*AWFJ~zAXg-CDZfbj^EnB>y#m?-2Z#0ypyiBycJJfWQldoVOTv$~W)Ck$p)13f6x;p2oN{-8_B)!Q{)xzeV6uex<;r{H2UL<-fxl@d!U4>~M@Xj63m(gG2eEavZBK zt#9H&cs595pXgyBe1X8v4}-rM25-2iXE_NMhwx${e^I=~o%(kU?-~E=B_aHvkn_|i zjT`$<;_}@taB2S+1upIXGUKGrYeN2~f`6gF&%7*@uEdXp!KWnj%)cNEetQ`F@i6#K zfy?>H`J;8ZlrL$w=>mTpVWvKm2>eZfFAsy?BXB8aV;KB#flK*Mg~6AP=~@51jGJ=* zmgiju1wKdU|2Kgz68L*UzAX0-1b#s9ySYJ`bVtN!{bB?@OYom5@DhQa%eb??4H5j* zevSN*0+;f!Jggk)lZ&4zM=Xmf=am17!2crn3&w@`|0?kN$7|f=H=6VNsKBK@zZ3Y) zLe7(nJM~#Kp=bF%flK+f3H%lzpH9jn=ahd;@RL1_{wD=4<@e%^6O`Xl{ER*OG47N< zA{k6@giE_^41+%x2G8dGa3n|8x224eJ``3k3IE_8bKsL0f7*eY_t^Fbob2$tl44nZ zbK+4t;8Vsa&A;Pk>~PQJI-Kyg1^y7@Mo*jd+3ditF?u?1ldpq9KJ5)L=^l3Qn|vJ; z{C^kxUpx2UM0?6)rs zgBLSS`b+yP7W@=uw7i3>Q=rv^Wx&x+}UYJ19lX_vrdc}>1D#4qdN0Gh1B zk$hq?@-GnhGJ&TET=pkx1uo?@30%tgAAw6bM+7eAd?#=z=O;6u931H{<;)Sdlrvx8 zQqC%YOF8c{PUR)-Icp}Rs_ifFBF0Id<@gzUK9fV-r}FCGnFu@u78~JAoT*^OR;HweO=zk&OPW_(~{L;=R1upZ|kC@;{ADQj|f!89;qYIUl&GxgW#9)e=cw-{~>|b3;Dke zBmZ&1FXcZga4G)!GEW~4-0&)!2N}|fOF&5fS*bCHv*S>ekSm{1plrgT)>eWIo?IkVkI2mQqBco z@I?Zb@(&2S5weV)`p|PNf4#s{Xpsnx(v|(HEpTb)>jf_PZxQ$c$TI2nqeU4wr~I)3 zm;BcXoa}HyZ!74k6ZoaTCqKB_*3eY9R@EC zgP&Ozk|X7N1upF{Rp9rEd@UCEeFDE-;2Q+qz&MpxyTE@g_}2^ke*}Mrzz+)kp9%a> z82*n0|IY<~I^AT#kv{*z&y?5I0)Io`k5u3S&W)e6+p_|{A7Mt$c7gvw;I9k(mjX|` z6&G+Me=UAS&J6;eDey*t%l_eAflK~QflK`tR6-~m*+GuikaO147O|!7t@^2>wgK|9mw5!F?fc*`ItX@CU(X^mkRO zXvz++34GL2jgvmIywU_N?fg@LXA3zAH6b~2T$sl=*{4(RmxjS7(qIoq{Bpd$mvPcl z%3rdaxKAzLDjKvHKLFp@;T?fX`IA;Ec2({V3I3ZHCw)EY=675e{E9HRU*J;D-2#6{=<`>B%XIObOXWz< z!-D@3fgcgLE%5gRewDzb{2Li3`}|t)mkNGaf2ss7+wU?VCql@1O7QaK@PB~39>4YQvGyII4mji^Jn(p{JHSU!E8RJg* zRSlZoi60ZVv~vV?7I4Hb@i_wj24P0ehXgL$>7FonG!4dZBwzB65cszUGx85GPWh!c zgD2r1+&fNugvN)j*FN!{#LvhX&$v_0^f371FnEm<=XCF6oYIx`?Ke#!eY%7`|7M)@ zc~szE3VwRs+US4DJz5U&|3>hSWt`G=3I2fK|1ZJcB=Fw~{AnRarn^VrQvO*#MPxYA zXET0A&+{24eWaX`g8wnWKSA(I`Evy>>&dM`&f`K(t>DLpXoLFPEAa0G|04pYGX#zP zr{4=EIMQGCd&vTq?V?cNZzGP8^D}`T6!_y|@Eh*~6C9-*DfD@makBI8@H6uNAoyj! zw@=_wj+<^a;GFVpflE6-AaH4i!vgOm^n8bIHduadf$#fy2!9u((SQE^8mD~yUf_!v zCp~3-cv#?lg#7J7&VLIzuL^!?pRWZj^VNrLLg1YCsTcTBgd6>TCh)@oe~)p>*B=D_ zZ^1A1IVt#`5d5dnWEzh2k^F}QegI)cpJl%yZrvWQfp72!1^%SKzY;i2X$^nm1Gs=A z{iU370+({i1upsDVVv}*@9P=)UkiQ;8yt^+aDyJyK4Efv$z+`Lk^Dtr@QN__Y9}72 z(|bG&{?{=0;D>ZP(&vBhGx-|HxKsb6FnDGde38Iq|G8e^vYoyxaLNC^z~wyIdRXgE zdP@9sflK>eAnk};B!TS1U#+~+T2*dwa82*<8F7tal z3?9A7QqHMQyb~X!`L1x{12vu>27fpV{xai~-+r!8y*eOpY3C0GF3bI#M|Ao@{k{4+ zk#UkgP{^MYhJUu;m+3APxRkRxjGQ{bFYC{SF#Nv^!+%KNGTl!FF7-T(ZW7>}`5i8B z$v-6wULbJU?tB85`Kk|tKN<#qPvBDiQGrYOk&o(pxjAoxWA(K+3|$*;&ff+8q2RxiCbe*s?#K8UIdcX6 zw!ohj_&WmsLg4QT+@{Gf9Lbmb`HYkPPvd9Otq}b034EX6|D(WP75p;4odQ2B_%EPI zHXP|A$9!7uIqiQs=$@P8rrrJlp+rUH)im-hwN2>c%iGwH4q zxU46?61XhKHw5k#`8v$FvtE5F_+`FM2wav+FS<#9BRQ0Z!BKRD?=6JE$A`i14};%G zlWaJWeWB35NZ>;RzEt3{A9zsUaf1J#z=sL^3xUgiav>Ee9O-kB;J;1aXA68i<7A)b z@H6Fjzu>=E@cW1fj^s-@cQ8(Jn(;Go?h*V_&SQdqi{O7l;9CXW9!8Fb5`&|3x8Y~f zJ%@49Q>Hsa;BN~4)k4nm0uKm&Dd+cs{{_MSuQ2?NQ6}L?&+YgbJ)dUWspp%5e}~}z zCJg^bG8P=kZ^6&VpTM|NewN_hDfs7x;eSlTdHj3eQu(_rJSh( zm;BQOF3Yz@;Ie+^QYQjOdVYhSvBOgWKP>QljJttF2)r+KE^s7=zM*2|OcVGqgc&@R zIu|(N{|rBaFA%uYbA!O8KEtTffg?E*zeV7QLZ4*Dq#y&b&1Eje>uH;I9z;QvNdnm-g8% z@MIx>3U!)rq`#~u|6rW-l=Wd0b((O*FY808z-4_nmy8QX{IXoq1%4P|CcoRl;9m=T zqR_w3Yb5Lb`8BHhRVvGw14Dd75k|lHXVVqFx2U}!{tfd-JMcx!&&wP^{vl^-MvfN5 zE0}+fL(ap@IM{*LFu&JacbuoMZ_r*4 ze~a~;@4$cM)j**GKjT6TEOOv}#!DUeM=Za>fzM`sp94R_{51~zGsagq@UIxJb>PWt zw>k&@DcgUY12^S(mjlmZIZY1yUB>To;4>J%-+?bZUjq*~@Y62Pz(xoDXT~3O;D2R& zvje~IVh#M>fkzF|z>^MqGuMYdI`GkqdmT7m2G3nE^=bqMIP3FN#+~&opK)h>sAb$) zUgmqYPJ5c~p1sZSj6UXjwy_vH$Qj&x&om2xbKuo|w462v zemmpl`&dRF^Icgl0dNL4-;XulXEM0?er&0O-+Vvzc?WL3AG_ayoA1X)(_k;sHQ$M~ z9k}@(>r1p&+%=chz2X4OmdY=O~ z-*Iho;O0B7k-fUhH{Ws1b>QYZt{WY=`Ht%#t}jMU^Zl8z4%~cy#(W3J@SE??_#FJ^ z`!o7GVxf9szB4nH>z9#ZzV{-}J)6-7Hq&sl)om=z4OjEw*dmsa&yUQ`( z1BrLw=6fLKJq9Dkd=Dho!Ee6%QR~3XcR%iP;O4s@Z4P|u!&<+D)4J<9W~08Q?+cJK z`dqL{U*F}xA7%V`2X4Omamaz2?|ux7(ejLZ^WBg64%~eA!{@-wcR$uSaP!@dNKbe9 z=DQy^IB@g5j^`b?`ToX!2X4NAmi&C{J&%T z0SA81PA$LPft&ALeCxo?_by@w=y)bw^Sz4-2X4N1(c-|(_b!e)aPwV@1RfuZeDmFj zbq@UeSG6834%~cqBKnN(dYbP}q&RT%-3e<{)w0F-J_LMUrS=yYsuG`l80Dj5R!0@m z>9nI3R8?7{D$D7D*b_(LRBd^QL$6gFjRnIBs(d))ni+9HY+48|==5!T-(qnQ4p1Id zR_-erHErg+k?J68zFt^XJ*uLz9LMVVmT>|_i}H#qai*-!>;K7rFCx<>bUFt|Z!dQ3yH6JIx+q*_+|H04=T?1b>J5&TZj;ok_Aksp7Oh&F6`en-eJQayqnMVF31x z{f%D&yr=jr9N+7RZ_+pZk}&bxIDUd7ek@-bzmDUd!uK!DIM@+iTSef_glnE&KdtnU_F(;RjoB0)K^7Q z?T>~g6Mv9~drX^xTE5c^?R@`8_2V`CobgG#qlu`9n`!d|+`BxUs|);d+K=jGPw@w> z(wsX?ME0HWD;Jg)FCA5WnU`IHA>eCT{~tegtO^;In3SA6n#lS6R%c{qx?LfOE*#<$ zx(X$n^UqKtPEl|Q`meLChH23e)1o4##Wq|O9dT7u#8t7$`+X6^_qR590{c8qOp9zd zD>bk`-Sb3dWO{OoFEV|2OKb8QzFvWS#4~N+rI`a;=h_YG4#eMl7bQ|1-PN=iexS9! z#dj`;?X9IS(rg?33mm$>l|#CksQf!W@jTmSQiN~tB)4zWR$`gtsvhcjcAD$*%vjF@ zyFAYx=sbfiTiPQ%&$e8inV`YI{#MQ8Wu|}IjY^r;)-^}yOYQ!y7|$JRDakIoQ7sVK z1(92A*Z!_H!})*B_kTPnaIDa7h#nRX1?@m~TvXyqc4Ky2WVW`b9XOfQ&|KTsZKZZK z9fH@89v5jhGgm24OQ1oc5?ck zEnkf7-{rEC4^|&lvMKfJZ)~*#hdMtuLXw+Fh_AO!-1F>J-awNLr1RemS0~gTSe0To zOiQv04%m$Ye`@bM9BI3D6?-nAt`Z-BD;{M?JFwGEPM`!^a_r>&)koCc06Va+RS}(E zn0)!0Ykz`ldFt+lfYhr~uS(6GH#aNLl@<8X4*c2Q{3wN1m)ZeDcrq4>z<#7*SJQEX zWCeC-HT*mZ_0n$GMz9^&({*nfLhQg^8}j5y_3BE^Z%y#Fo90aYI1Z4R+D5D$_%1c@WoqCpp>R4{aZ7f?FhoGJy)UkL5Y-aY{`c*MXGr&~hUepS9oj|V z?dMRM5plEZK!ojInPd5EX0#hdk`TM$1?!N7Z68){W7q!m=tQ~v-l`*+6% zE0%v{l;vCOU%9BucaDE$X%{M!e;<^NXvkO;NE_6UQ5r}a>|a^Y<;8DMdf>J={04UnN0{oQ(5LLKwF4)*S*#|p1?@ctEy+_ypI7Co?cZvh zhh_=A8lKurHMIUqPyH@s64kEIR4X)0EbD3&{gS7?6)dP6*U&hk?EbW>Gu)}_hP{>M zD_u?dQ9675H7FKh_HU~LWmQkJQQcH*6Q^k-32$IQs%yB}MSXSD>{Qj&q&9mIa|_*s zbT#dxGDk_+=&)-<30+2c^M726(XXJ1_Qp~Ndo#M1H?jiz?Z6xD-{N5;MeI0N*^&ZN zw~!*Ks-sjRBg()1O~W^x__UJ#W^FC6-O!}1b-*{!Zg@`ToqMw+Rd1Zuiw;?@x`Zr; z6o0(sh?y_yyUa^S8l~t>KQl5IWhF z5@Gp9O^zh*;$WL@il;8nk=J<2tDi=`hH2MOFFnL=$iWcE7GWc>VTif&jWB_O&|P=_ zQMLGcbv0SkWc|D2<@n2ki`t;n)#RmdMCs}OIKErE7?jvj zjN(8)&-D=(kyJzNMxZu2x~M(rac8^jz~P`NWcQ}34yI#hMN}0B1*@W(HpB;~4X30^ zQe~QyDN6HfmFE9ha(i#Dpe(@Y83wxUFYLfUXU2mWYSP28tjE;wVrSF;fwQyme~@k- zsv%-dqU{+=192Z@J1T&Y7;}`~prg^rcDF#~bG}S`S+`U`GKw>xMV#*izP-%ymUu47BIO+hFd>w4} z!I?@8DM0xRCDR+3i@jdw?LST8jQ>0dYSG+asoDLf(;D1Kuw~UP8_%`6?v1Ac)f2C- zdnuQ}y9Y4>P#<=`9s#Od)YxKs=sVkg^_A*a2H~#7|FPF;aI`lvc(mQCffcPR^;9cwUoX$BMLPZCDFrhY6t$+)ud-9 zN7!&(O?r~T+_Fg117D{Hj&{My(6hQGHKS)z{3ERX)s3$%$a`Jh`9e04Y@c zsL)AE(IcpixP8+XdPoVze{dm zp`Du=?w~0Igp4F@f{8uZtmY4#<{{Npw0JhqY#VuuYE|{|Kj{FfDLdgCI}%S46)!z5 z9z%)eNQ-9x`UmY?_kc-eYS&<#7vv%&NPXK z7&Aj@r}>Z{k*YSjhY4bwQil#Ky@aB2>DUhTz^mmL>RP+V8jB5Dul?`YKXQ0+SA zxdcP(G0y-!;Kl^8SYT@474?G#-XzoN<{l$!-mwvF2hz_3ji~No7kE3j*#%|>?%7dSGkPElZ#OKBqS5a>QZ`sWxbZjX3W_!_r?gReN~_DZ zy}xSRvfg$znT`t5IiQvriMjMQ*IJ}Ne@fEwjc|X>CEZjN*yX|x)bPLHSIu$8XK=Mbuw^7*QExo)D5+Cv)FKN5^7*p!yn^l zYQYsZXPz0$XyEO-SKU?ySYe?Yiu}Ye%1sg)t%3R~$;og4amFl1o`P7htYGPi3x zJqql)cM$?pu{s>>d3HY*hvGozoffzuZZLlFcH@e;1iNt@74ep1`1hIpo8-TF?xq*U zXiTPCtL(Rf zWaC_WZT?VW9rSq)<&6`#$;j)}#8+5T3DJF%?#Zz@jbMpHlySdJ(T)J>=IvHd$; zYDqacJ8tlbIW$#3GruOmZt&AaF`Ia^8^^9w+S-BkZmDGlzEWDzdJGj3lt+r+Evx>E zO0nZBx_j3ZSWT|BTPULJh81zK*@3REd#{1z8CO{ZlmiGV#L=)b0<-4$;k&R#?0NR6 zv!(7s@0biNQ<&ZHgLD4lQXs4d%j#p4$?2!>C@qaQQOQ+a6%Xp&U zw@FjPyI{$=w!hsA>bj+np!*mTuB%IQGqs@3Uh1ki(5K@U5ZpW!`gDG(IsVn0OC0}b zrWLf#x0~mY_vhwo$$PE&D)RO=Uq@a`^VQ^SX}+GkrJ2b1(ANG}8;U9ZOLj&GZzjgO(bb>2Qz^T54=Qji_shq5}{*W)VfN zMysX9=18J0C#(-qiA2#sGaVNbMXU84=MmMHs56KfN))Y7HPef#9bKr#&9u(f@dZ)C zi0UMYdV!AjiJ}+ZI^H5Go~T!eqJ04!twdcy)E1&HCF%*HMiBKIqUdFuj$aW)YnmPR z5JfA19d{6wK-5a2=w*qHDx&E1j*b$d#t@Z96ummqF^{NmL|sV~z3$PGN))|-(J_Ij zB%($Vl}yxyL`@{>9HOoy%0m=wH|^*})C{6d;B}6u z>t7;D)%qPosk;6QQL3*0jwn^vHxZ@k`p=1?y57-96jk>QKT%ZUJC+fZhU(W*PEH?x@DX!y8qGk})pQxEcxrn08 z2OVEwHMKd1s85KRP1HY#nnToIiJD8)>qOCZhmIGCnn%<&qOKz9e~7x8sNWJrYp5L$ z5_K(6_Y!p-Q30Y7iCRt6Xrii#8bj1AM2#gXpC}rjI<6*aJW(@-%u8zAEMxpgYp&fR0+y;t>YK`k@1M%s|xo*np%6H^>V z+8@ wa?9Pd=OclOqklk7mdu}3RUS3XvEDr@$9PU)=KOJ2x4YUNN&4As3bkN;RH z?gPzyaeW%LMPnwa#(j=@+(nO+FyHx`0{lslzWv{`W)V2*Ke>8objrF3N{Eez`)f{i zq41Vm2_FOVk{i`iX1a*AmcAD_w)0=7`(Hk~?rfr>{fDpczg)ZSY8PGgHdk(c+ZFzO zwdAYJ@dAUu?3rcVqKKE8k&8?0?6i)KVz;VyaJ*~>0 zu?I_?UB0uG3C(mLc|?(edJND8qAAJ1@$`n(BeDX=0<jHUk|| zAOG@Lm;Vi`;eWCB_VIBQ)&KbB0lGlprVub_fmK&Yp-7N|4G)r~8+ro)!gEA{U}$Zj zKr9;?TWmMI8=C87OFp(hRg|iz{U{%)0&Pf3n)E3x^3bAS5ru+?Sr(-Vl(anT_x(OI zclU0(H!Xhn{=WbG`g%1xcg{SVIdkUBnKNf*+RB;Bnq4kmEtMTR=N{@@SsAha6&d$@ zq-b;XixK0(%}z@d07zCP$*w%3y77#NaaVsWi!4H^!N_XC-rALk9T+|Sz*^(M&9(Lu zQTwk^$1II7dUW*ob4wXNDLHmDVuKQU5MqOjjTZe*FB7fzGBHG7IU3O~)Y{M2+P{N- zD+QcghPb}T$+1ONCKEg0_}S&ggPBOtdrn)0j;L@W#_EW%ZbV2&gxrX*jtHv=>qC|} zv&wjIXQb#Yt8D^|5Z3GoMG@=wf$G%E@kR%gn`m`<=E+9KGz4p_-!d#JH{7(}QER^# zvHxN}nQGc2=7K$9&R~q&<&-5mTuBB;irh*)9o!jsDfR`^-k@b6Y0O=CNX%p4h@pl@ z(Kd+1*t79DnNaH=(od=pv7Zbq5zuN_C^Lt0r|G>6(`%;7&N*)hcI> zp4pr^WfG(8z9q((N!SWv(Pw!YhAnU@b5$RHQ~}9V+p}Sh1aaH=)pcI00R&r}{Q=x) z1`o$f&IRLD7*r9bV=2nO=fdgoc~darTs^whxw@>@`Eso@wY1i`yu8jyQYM*8%w%Z| z7Nh;NNh1QrdyZmsbCAE0NBK8>jWfIa-9M(D06bd#l(9G(Hlm3cVIx)@b!LQv(dsuN z#&(Q<5(m4~B7ZJ!an4I6;?kB_I)hcG%~_b~z^6^rDG`s#lfiQf%PheS5~bU?1Wf;R@YCBenRQks6ss|t z2h8bxmtS_-WoG|iC}Iyq`iG8zC!bwp7u)+slcgP`x!oTf*I%@&V>6^)A0XDQVpy83 z{fpKO6a@hvD3-tb^RMsjnX&Th&{X&z#m3-oFm{l0PS7q5JLil}AAmm+4AN%qTpp6a zgQ+0uTu{}qId-P$oP!Sireg?tKu(coexV;&{XBgZH8~o${Hm>d$ zeih4cG+a*8LRohEZkXBCY>vwy?B71hELp&OPTNGuKGnE+Y}gp{DP-BjGi?{4h;2SaH2M^wrNmc826GiM0st;X$lvOH%&nGdp^1S>!HvDA7B4*32-^5?hx{TZBqe&iEZqQcc8j>gDY1k@MrDhFUz(xRH zG&1<&k-?YvfOT`5Fu%;PJ{)D-`Cn+2wHrg=7Yyve2zU$udy}`fHepBNkZ!axV692u zZ=ki<-csMZ@$AmTC~BwZ%nBbGP!AlTkynolzGh@_)5zd!3xi#*#hm_u{T3&pGtht? zIRVu1g3<8|nzf2eO=Fuzsof{ArT#LQMz8{4;}|UOu~pOl9!U}VVtn;c9B4(YDUZ7X ziD<9&csJNDx_dq8euYNZIHtzy^zQY4S6e~BSO|r)sG`<4Wc4bB5>HXjsqv(FV2;c3 z#_bgG9@gGs-2OepC zLq6;=t8f>&BySrT{H>9}vquKc@d0b{WL1<(AKV?E{F+_v@B!=M$HF4;C0aqK;x+hG zakozyx{7;71~2geYYgg>w`Vf%Ww7@(tEv6NA{@U`(}6wNH8Yt`e29x&=&zqN)eGq` zPPPnTLDHWonV$L8#vgxsm|pu6pE@K7hJaFlG*B6RmQ?T#2UT3cdp%Gba0c>e(v4pYIbfs&`7+BuZX=h zV!d3XBlj~B|3swI5=u^3h$hxMH5Ij;qpRv2vx4iwtwRwkZ)!WECl$F-{X@lWTrrcQ z_amLRRh5{{n@y*tva>vxN1)&Nv_TW-iIKrijtt&1GWeO1!N2zbgS>FQZ+a21W|8eL@lw7pKNesM?(6}wJFw$*Cy2sx#zSgh9o8H2T_$@3)5hwbLTV>jD z4P(g%-$s5ls~pN%MY$4efT8-mn%Ef;YxTXPK%njK$y;jLp9<7g#3MMZvV#q?)xECL zh>pIt4bEi&`$d}4R>35fUg0sA&CA-KDpZr5Ih7LVsR(J;jhrosrl{UxNFYh!tYTd% zmo}+=)jfx%Ps1dC*o7?tvwZ`1U((09C&4_Eq9=$A5!Q+Qkyx2Er!)|wayiKDmGrCH z$nA8uz&QxE+_BE`7(+Yfjmrb+HV8?r?rtOrwBo>7&SNya#Y}d$Azo6ZUllE*uy?U; z*@im%)%11Nw*!a8Le3<}T(29k(eVQ5O_Kw6iHI;apwsRFyn*;?)FteK0}UE2Mg>~O z7%SoC0n}&X25}P|vi?T4{g|4zW;BHPqv>Tn@0wt!x-?%K$`Y`hzD!J~)j$7*n zUAC%@g%Fe9V$(EjBS(3_xQoX!CD#c=$6Vq(Y`tBk(lLE{zOgbEJ`{~BXIAcjre?U7 zlD&DO>)LUC5k+(H4BtYyze5!fm5k#AF{NRcg8FF=LJe+~23YuEI?S1Hyk78XGX}<0 zI!jA;V2U#%?H`t41rlr4Wti1V=n<$qRipOK_J0x#h0(bEX|!yx>M2ZwdaK7xx=@qo z!Y6Yu_Yk4$yC)kuI$yF&d<&Dy>1s#zzo?TM ziAzCSMjsF4Qj_^H5O@6=LASVeY3%g6G%AB4G981m5BUe{srsBSGJd_RQf3-!@*0z4lDz6oO>)Q*Gtr|G{s4iNNw)AbEfoUe;(N0)C2{Hb3z9}HHUL@-)J0Uw72BWnk2i&f|7!YEU(bc z)(z>uXgOd_475J0JS7K2D6_cq8qZb>W{I#{0BLkQPVTr}d9Z1}C?&H{ZYR0Itg8W? z0UWdflxrC%@!Cw1D@gI(yXa)(R;}?wQ#P;<>D&4y%h2g2jdrqYY;N+JHovFt=>+Ad0k08 zz8mqI=!?}D;}YQ}gpF}`gj?iyaX2o&_lCRV_x|uw`F$X~Tz(%8_sQ?-@D}`Dhi#tE zRT3E#4jDj)Tr2<*|BWc_kYU2*@8~MQHxUki4d}j#t&l{x3hDV#AxAgp^coU3c|;4h zZA^rZK^T-j3V$I#gonV&M#m=+v~Penc?@}yb4Dxf)Jz8MJwPD#n;7VhLM%Js8XeaV ziT3r|Q8tvAtJftvGH|xDh7L9sv?I>$a|L#D>3nq=L-(cAri3QfpL2!T6Phvo>oc#N z`7I(2bm_|39h!bi2v-Y*%%15tO^;2#cE)r-bbEdZ-e&eDd6x4k4O>#35q2pQ51aSj2yX$Vc73E)tB-hUTMk}v1@)i)9dh^WC zl$%=3o*P3g*YXOZd`x0fW(HCZaGTmw5DILaf}Gxh_&pOvm_00n**uusAO&358VlV# zHFTrO)*ZTW%8fVA{FbEqe9Dw0B-_j>-vl~SZi!8~4hJ>7b<~k=tv8{LTd$oyZi~b&F)C3WyZBJ zG{0x&jVIjFGNoC1&+Xf()0;z6X3iuubaS)YVcEVtYbN{lN-1b~Yx5~O^TumqM9}OZ zKE#H!$QD$C=EDsxTM!WeKTVwuvdzlF=%(v#o)wyQt;<4Sl>CBtp;l@W^jYDykhh@b zRxkZ$-hwW^Wg6(;LY72Vr()5 z8*Fw@zp-V;6tJ(^L&hMp5n99IO|yGuC^iikwU|B9H8XDv5PAWjm#5yqUcPGE-YRF? z)X@BvhqugbVlxHof?=Yt5E8nTYkXp6kKh0dSUFhtQe4!~?M3LSR8v7*T5wlKPCSsg zX5Pr!gx%5igsPr5yS;q*000^%PGjjgcugtPy>8A4QV%x<0_o=^&zk-6Ks zoe-qUV_&d(Xp9KpdW}BV`Pb6cU=5YE4vL8-^*w;#+%mmSY!LbsP4eC{<{6;pd!VlQ zgI>UpNZ-7myIb`2}V=QwfXaZ@!zvQYu z6xtKQANs&)od~PEu4lozw#Dj{TZ6P-JCEdb2~~`ffugZccB63o1{SIQ*WhP3{)@_G zjrJp_*m&^l(%R&8rN!{z#mVT`Ti>W_e!n+}3ZzXq%0Xqe`7qOlLef%ZHeZ6{>wmed{(wyg*N-VifWIYX z|H~ET0h>(w9GERZe`{^2Gm4j1!KG&2O4Hr}>lRQ-8yz%rWXD36DF>!jG|}>|7U+>n z>+Ro1E_P2_g@BUxCJzt}F*M1*IYbS}Jr?%#!J)I}jwY-q`QSe+;Gm4 zNf9-58Bi4ilKmd8#DW3|ong0(ih}na8NGdQ>NyLV-9!=qCu)ileXWBz=E2oP#)^|` z5<6o@WAN7)y%6j|b{Pp$SGw1=lc@Gu-K!y{0VIIKYb}AkkFbNN)rD-c_Na zP-yEa_$&7w4F7l;A`m;-aZ)l6C_y}q%0%rJn9oYEdb<;uB{W*fW?b1sD8=2yNSR)A z2^Y+#Qb?YZ?Vkqt=$2`(!2Rfzy{@2u`x~;h8ac^?9Oz+WDzqp*@x<15QDqwGd1?6Y&ie2X zawrd-VQw*C9uKG&t#>7I3y-t0=WvnB3OUebn!;erq&q4xE#n1a)N z>V0Xg+5o=R({k^MSg*>zJ~FtuFt}b>wBak+2?UZYMG^ZEhLof&sdFCV)!0h(*cRPW3gb< zu1r5_I-e3k%qPaxH#D^3K0VAI8q<3F-{|5<<}S|EoVu^asXQDn6(jZy$l26PqNsYv=_KCp##y+GXgSLjy6;euVS_XJQ94;=?0^B83YpiaIP5($bwLMc*wqGE2!MtPI zGsRf8$4+g}l<@ZyK=9jIXNwJH9X>;d9*^HD{2q_w$k=+E2JgcUJImhf>UJf03LM3- zxCLKk!qO7MhUYw78#WFx??NA&4;)jjg>hGT$G1l`nBYOOlBAC2c@&hlJ~sNApBO;9d{!&P0d1V z-zCoE(qvcWzW0%{*jVsabd~doZMHHdQt9sdySy0Fp&t0m}i#KQ;gAkuo2 z=1=Sfu-i^=$I&C$M|L6HzMD2tqvI9w@f9p&;dKm79*qIm`4t4Mq5b9_Kx7j%>^C47? z90{H^b^A15Usn^;Wl+A9*UFmwE>~deE~;KD1Uynrg$L$!gyfUUJ4eX*lBP=Hb(j{~ zcNddFi9Vp}ToHn0)kx0Iya}qKAq#d&Y?#L|Kg)F^xCg*M#m?ZaAe%LVd_>>2s0iTb%zK{aj}cJn$uz{&xHI!Y>Kr?STh!-LHTH>i@aIA zh<{^cqF!dY8u7vFuMU8O#o26pxq8m9Q8wrzmEY;u-h@s1x9QCsX&Mir<(?ACvp93C zDbC3+Tt;FVleuyN4tdHs*^=FbK&&QnPZMz!d8B7nhY_luz22{dsz~FUoMMP!`2X5V z%&-qF`(h#5v#0F?dARv10zCb!-s&yOQ$lc243rQf@l$X$6cJaxLD(6IUo&pczJx-= zIXkfy;P|&GYMw>N;@y#fVq+msFmnbiU31iYIe&s^?7_lqXCXa3)v$bVP02A(GI6D3 z4Zv6_ONsQ~GVOl~zN~@XThRKezZNc?_e5$Np_iqpxb>X6T$;;i7SsMZg zB^@udE1`q^Ki^TC{)Gz+7RdP>5ff=knwjZpkVbAK-@~0xEoqb>f$k$C*?yD6XhAwC z&2^r!U7+;b1(kWqd?SV)&bH)rugS}E^b8n<-jWOB%7JWr6;CNm1bG9_Ii>ajj>v%p z9IKo$vK+9C8$vGjvJSu?6>7PWVq7t+x5aRpEgCjGHum*2q|3)U2abuwFUmqvYZMmSWT{2VbS=qgudr|HOE3-1A3@sQ=F z1xQtAZ3v$4ObMLd@oMWcsrk&OyEvcDxy6RGDK#EF5^4W3>47u9`;=vuM{?#Dp8i8! z(VGJn3Csz{Oggx50zZp5g6fl2NWO&gfPaoD?F}3h^aqSO7Sl$Y%Y%{XEyf*vh%*wu z#NP-n)LjVOa1Tn#Kw|;#B3ZkLVxKd*AWmzNU_@1R51fHkog^}&-dkJHu! zYRFU8oT`AHdzz5U!v)A1NPQmW_#EZH<$Ga-)H}3`7fh6XK7vC=)fRi+NS;IOBikjh zQzFgRuT>QYYaLn8p~e*tt{;Q%55zzlV*)frwK{*#C07!+-D+u5UL0yBRPJ#NiMpP!jU#-Sq0+~Ql7fxK0mFa7&Ph7h-pf=YIhO6b7#@hv1yJ?@=H}msqzqB`q2^2^(?Namm!3^r^OIvcdMT* zGB65Zrd)a84MU>k_S4R!EW(vRhy$0ue)CbAx>R-1_e5OEE?*9*b8+$C{X_xBR8=e_$wUon#pZf6DV_JSPb%3?x2$F$QOeKIKmi?nyoQBmuIeaA*hNxOTF zTx}(!Zn)&Ug+4P9a=veF1twTJ%9z%d5n}h7*4!Y1JmiBQm;bLZm?fjO_^jE6Sh`;( zSN7%LxXl|VLW*HKi^p`btqT%!Fp#I~apb>{40XF+F11jqgLk5E!3U3=`;d{r#>il5 z$@?hYQ=g}nu5YM;V5q^d4A{r>7DN;EdiO&T%Km@`KOAtyHOe?eXWY)ax$r5Y(l`-$ zjroU>S{{mj2H&CuxXWOgu5mMk?AB_)h6s(!ApJMp!r<qX}A@2EguiWK*$u;h3F#qaZ zxO63W^_re1#40;xKHusz#>|hZp9cI4%&){>u3`q}k7uZfp(=@Eqk6W1c^>@^x?02u zu5}!kzXMSy8tLB7hK8~sE}Rq;h3e4gYzTU&j$^_27ay4a=WJ-Kh62ZBh{R8~`q_k^ zf%#qd8y8E+nEJ2~wgvNo(Grm)Vnx68lUnjL^$}o=R&4gDo ze&?PB6ZM-Pz^rK)3%8eGFKjw6-0=s{8j@4I z`t|6vyBa|ox!wSK4$R;2>q4pcWO1qrBy{sF??S<;qrEZgq10$^40|fI8%v99F7{Yz z&>O>^OFid}VGpL(dt=BMso#2I9$?H;Z_IMWEcC`a%$VD}F=VaO^@!Pn3abfeCQbKMj z1mPtLsY?q%-ex_g0g~;%ZH%e(#{8KvM-<8(BG2%>lRetZ1I4LV3PC6i#P4p8JQOIY zUl+2vSbSY(TR3Q}m^#d1EL7Q#?&+B*WMUPwbZ?c@!R)H&0}&|yzPwD>$0iq zUxTq;L+P*#B6HsL_^RSp9AA(dgme(1bM#~wPIiYNc4QV!pX^S9k8-}*a~kv&gebkK zIDp%6RXg31E5RwMk&QD$PUWNzc1{Z`F zgcU^o;SemDTy8AhHf|`{*$9B#SnN)R8j-wR5twhUgV92Ra2A7vQH?ZD7x#l$gPDxe z4*_02Q33`Vo&^yZwzJbe2blON0jz zK{XCLo-|7GU8}e2>}Tujr$LWS^gpMD&dF@L!W)cYBraz>=ru#Z6W0k`mOI!tzP$^d z#yGf~;$z`b`M|4O__%wyd|VoC!pD#L?C+**4aN|$i86$yznMM4XeQ`Son$B zlWOo|+LNLY=XMT4dlFtFo6`U%`DG~Do)koAxr9a|M7F`DLkRIM5qnZOLYpL1fzT5Y z8arUoI8jtnLfbLk-KrXxGz~LpW?&M})8VH@{lwHyoBFwpKdy2LgqnB=poS0FBp+5} zqBF0$T1478Uau#K_2yr8C~e67}Dq2g2u_YeH&MTP;I(?Yr1Y z54gq>w?qoiW9?ZXr88wpR_fZLvK+~I{A=Yny#ai81%3zwQVQraZI z8rV6YOycm(;c6s)fp6TRFoCC-nxBFrC?1I1YFcev+W#0ZN~eXg)!D{P(*I$0s}Ihg zn_AsD1c#o`q7=uZi|Vn3QFXzUBZJ2k1{dm)^eJwcrxeaqn74E5kdJ8Kts+Nzje@m> zt1XCY*1(%@xwGcsslwCpO1Q9`>2nvdtQgn;$0Q z!nLpG7%bLm&zfLgF;U0h!pGq?-Bh?Hw_9%>8QfABT#)>oE@dvZH<^w|D61MLl`Y)5 zc@Swv9o(|OV75!kB4u~1y)cR+vJE!7+6-5jl6JMVgX)-?Ny8TRCss69Cb zzbuYqjrDJ=P2KWCY=<&vIVxghvu~)*K|B*^{o3%s; zH*y2m$h;A8-0hd1B#eToQE?ye_>e%L;ue;+NToO)BDh*@!JFqB9$@O(IfU z96Hxj$Q3NkHDl!-`)r!+Doul=38qZ>9i6I?-}2N%`7IM0uX9aRs*>OLfsX2l73aQk z1`n0k3I@er_P((Uz7LD1b6<$Te@SoxgRe=DwuaOT5~OyW+9JU!1~*7>B7;2=9M2%1 zSjnj$g}i5zNa3>7DY|_ei(E(C#hcudw|^jAj=tcT1^+(&>Av@|aHxG@S$e0<<7?2c zTHmmr%2Ia+sGEMlhFh?Jwt7HA1ohb$mMhQ-4=8{Jr+;Q&Sdm_8UpUqSAl=h<_>m!X zGrGa0!0<(6L*7{0y6-L2i%6CW8w74@&cvENxqPbIvoH^MJTi)4NBPL}Vt$d%GKxw7JNPA$BT6N$5sO^bErXnyfqy2vDL6$)gV9K8jkzeY8X^C$d9*%Q$DsD zcBmTU$6G_q$5z9TszH9dHJtac)ezvwvscQGw}#6uOg&O3?Tf?;hc9d7*rqQujSy74B*6n_a^N32t}opLtpCDm5%g zre?9>JUmjV+UhsIaQj`EY>f;~_<$)t3pKTBWTf);HmFr96KCEI2eowUaNt-!oO(pB zRu?|NO}`Q|5+rgq5+~{x{FqVLAeiWhuR;9JbiC<_$KK5X@iIdCMo)Yb;>Glc_-UT_ z7Q|EaVEJv?_(V9)xTM^|%sr4!`P5h?l*K-|pr5gTib>SPIT2o}^8Q9cm02^Jm-`JU z`4J7}9N?+9PeC_m=%#$=76s)web&1zAG%#ZpVZL7eCQ4Z-KwEO`OpBm1Xw+*p+Wh~ z;#{Vn&ueH!J~X7D|IpCNd}x(|{!2qA=0j@~^e-A}=0h74^kofg%!f89=-)JST0XQz zK~oyqCZDo%dW4<2_%=P>00157UXvo_!eZwnuRs8qdE2khc$G z#ihPz7?G82+{4o+E zmK*@VO&%|?n*--1XM7H4zTp>Ttf&nn`izb*ahN6*I_>M0B2CHyvUS$RqB`rtBaFl! z@l}tD8Su1ey>ne@$UR)b$Ij$%iA$!4y&i|oHl7{7?S#N-t-a?aqbHy$IAzu04vKS~ z853|y6ECFv9aR`B%Hq3^kHsRZQMi5vD!%&!+=v24e4sY!jBAa=seqmFb!;5)cbd_` z7Y{eq211bG<$&#W!Vfuo;5lTloMW8MTLi{Q+B2A0mSsEhbuS<%kQU zZ}&tqLJl)WjNT{kf8)6RZcs^`lzw+tXKit9(c4k`m3RNtc^R&I!9}3))8@j>21(xC z257W%N=a%dzOn+kj~}Ghfb;@T!uc*~t9-*nE+&2<>V8)oea7zdp&(N7+%@rC`^|d8 zS{v#tOaD!dJ7f#pghEvtQgL`|=*uWt5$q;a<$3^0PM1iUh^BoN|bhFGwu2E z44-<9wm$jO&cjKbXVVA3eJ@yF{Z|_IPBxn#ezkhb_3!=dEAN*E(vb&jnB{aei?*@gK6Iu(>h=4M zIyD41yW(EAHKa(%tS?nR$cDsTv*p)J-oxc9+-HYSrORdwHFBDkY2NW!inNtVp^7`;Pv@Hh*QbV*fC~YOv&;&;MLdQR9jJr10 z7%O&GKg4b`5`Un*Lc$))T|;APHS_9C6rN-gmQMYgsk56a`2`Fy->LUQuFm@>+CM7A^M*X4pPi_Xy4Nt7a8CER!CP zVT^+`LMb8JS;=#B+t0((EyfDflPQ{!_P?ib&f_ypN4 zppLQLEr?-XKZh7zOBprG#fi->fYYvz9Vb@g;v}pBv3C|X;zpUd(?bZO;_N`?`sK9t zH5~9IH6;O@K6g2>M!3RV1<0ytpZy+C=V&ZS+y^A&T+VVvP?F$9iQ@E6 z`Y<1qG7@(YF|XZS`2ZkiIqpgS!ZXHqmLUZ`h16L5tTh(!vUY?pSAfhioB{tDo=-Qv z@WSld09iNdR{TARaJ&ZK@;xU*4D{RDS7qCND>4ET{4Iso&r5F71~YxRONL`Vf(7c+ z-r~Hwtfaq42~ZgC_#s)CMEEJ?D?Vlrg)zS(scAz|j1sT(IxXA zTU@$;y?b4~@CmL4)A6l?Zb`T+p2!wRs^hasEp>!%?jV90vFn*i$*f#V{059bxAL(N+4LfE6R|!o}XBG1(o*0lje3)@SZuw!zbXJL) zBVnA4hH}Gy0~XaB{*$bkMavP)TryEzw~S2FbQ{4vs^^?hxHFEis;+E`Rw$7wMRHZ{ zX5-|l+|7u|RaI29SXoaWZUN5gAyKn5CBQ_jMdE-z$hXdgHMy$K>NQ4U0Sdt|$F=Pd zJo~Kn)4$8OEE{UypR?fc!z)s(dG!6^!o0T(f4moX;X*&%$z9TOHrZ|&gHd}|6tY~7 z_hcHT(S)rk9#qUIPe{81+ble2TyR}sa3OYn3u?G3^)_^;4paSlbqP~|JgbnPK z^5d;x^T$>LUEzjWcx!n5V{1c|szH9d zHN5k&)zF}7kRNXinU7q98n+#pw#)1ftc)@5MlF#*sf)7m%oHb5U~b$g z`WO7NeNzv(5rX871ze5r^A(=-fakthpV)r!8^G4!M{BOR-IIs1}=%BBZF%TgGZnsa1pDRq91pxRfrEEs}L9P{~L~*a?MBM zIFc%ll8WQ16uo4-)pNS{8--i!(rent;OT|IBhX9H#E;`HfgG8En^`#;<7|g!0G`oc z=MOest%$)k?S-w{kwg&55`$ablO}XLqfW{j(X}~urUiu?;*z1WFxbDHKa+N*f24ly zVY_bD?Xrfoi>lvX{3_M1r38*VToOpKXS=LEL>Fw@PYdJjHtqhx;C*fywH37PbjtqA za{U#XW;SPFrp%L$cxsc<5$h}{;>$@Jj^3=Q1TWl?#9Losa3M@_0oQ+o))ZV+vIkmE z7p~VOAm6t5NUFR>IW~l6l$w*b9%e_ zc|Lo@z5NYbwV8i5ssa&m#65;b4P5s=r?TT8F;lK+HWCM5`qy`6)jgIenTsBpi-?EA zWmuf2)TYqEhz#_k_r2ArQB*3_NOr_Djg5xUGQ&q&&$EqL}E&wd$WCQ2Y=jA<*AP!&QU3DqEkO=Bc$KnNSh2sI(p zfKW8tVvMP2Lg2^Lkf-R3F>ywl&f@R~{I$De7qBR;t`e5pysW{h zGfp)Y@EzVd<#UIwA27O~hsIg?u3tO34?QugT4C`lNMC)zREust-n6lK4T zrJ#H4Wn*GII}~h-9JoGtF!8c*Uc%Jp&IX@`gvPCDMk0zuED(mLlre^w*M~!(5lMV$ z7$j~8A@sFyjWMQ?B)*O$ZmL0O21z`PB#x29Elmim4#!a`C{GfrePED)arnMNlUQ7^ z@V!`*xNE6`->XTyM3eY_P2#0}3jTm5@iI-~hc$_pZwGuBiBn6^DlZX>*5!YtW^?Uc z@S(m>=Zx&$`+0Nk^L--sKHuxNq7++hsZamqF`+mNBpim>{m|A!arIsMdX80hD^%Tg z;HnImH>g(|cUsa8q=OD5S1|JQz~JO7lzwd_XbCK!V?UsD?5n6_-zxHh1}v>+L)v`Z zv>p>qGVWSutau@Pu`Aa;kE#mDH5YtrVQ?V{l~v|B4PGtN;JjONQ-zV}U`xJzxtanO zNjpZ+tYdR@GqPHB3@0vy%DD;s?84}|*iR}9E`+_3*25-r71>2g9Q9+`W+L|cu7dn1 zo4|#{(+DUN-TuaybIQztb3%y83Pb6}#}P3Y$94H!CaEmvH@|xR^jAGo=lRL|OF4B$ z99(zF>o>(1gi#Ms@b_G28VT}5owYiwdNlD#D1+Ek6>NdWGpXlUyY_tfdSM#4;O3FR z*A)gAq9FDnxDjcrm|bkFIJX3kADmrOhaF-(iO~Br$@5mkIIjP#vyHEm&Nq6uB1S(6 z+Ss4i+;&(^A~UxXSHB;KYglF;ym9}cbP%TRnI#Beo2wL$EZ}$OjMznW5TtClnOt1_ zWBeK`4vg359Yni7pJ?q_MltEG9ju;hJ=i5>-S z&~?D~y^7duT1pkJiHg4nuGsu9iY<=sE{T01zPq^f54;4QR06K0ZmoUZXHj{B%~56P zUooM*w(oVc;Tblr@-wAlmKnHn5l~!1a#q^bp*1OZPO@fcg`7F&pI)EL_?K2aEFz;Vy(X|-0dWEn1t z=bPt2jEM+d;dA0`WPQjt80Zg2Ef@y#H}OV!y%ix*DtD$!0GLQQ{vKgkUQsIwl^jIJ zjq3E`FcL2T7O_6W^^{x!%NR@jfc1Fx$KlT4>Th=TJ;X2TY9-4sgivsY97@rc?eFfQ zs`5`q`BG=cNmA1(#C#1C34K%|&)L*rAO+uvxhI-^PA2OXJgk)C!5tU_rM;y{E*a@R zLR!E#Ls8;cIJ1P|AW=%Em79>P9-H+4FsJ{6S?Y^E(8^Jk*-PB&V&L0ywHEeGO%K<6O|ZvkUnd=4c+b;&bvBmHC9^jmcL^izA5dRR8qHaFF> zky8EHO*MbdR7YgX+OAW{$?lO7zUn5Fn`X4-Hrr;S<4E*Fw$wp4aS38ws%4?%d!b6Q zyBk4uo3PrL-A{hWGcV`AdlPN>DuJzVw3a*DLTA6E9H9 z$(-xFSmC}PPbFE($F5X5vd*UE0x;&o2|;=CR!^O~J=ymO$6mL!PMpFf{cBeUI6cdS zEScC3P`PwR`oC0zzLR^$h&y#tur*m{za6okqdq(SC2#~%{_vSFkq$bz-d5ts@NwlO+ zG^si?)c&2QQF0uXXD|MTbXRw9=K5C2>|FCHsritvOL9#BBk=%oTaT5I`HT*+FWS$` zQy~9@7M1PvCcve?^-D;aASV=Vu}hFIj11=KsC{K>xQu1wX@J6X>xQ#eCUqrcgqE!N zn{3^DuQ+uY;N4OZg^XHEI48pOXdIXR$$6zRo`l~ZHcwWsc*zpQ^McyJpj4peIQ%Jq zyIcFP`>Xr*tSh+hb=7~gy7K&`2SdQq{vgj;dK=Z^A?hjIgT$$P_zAb#7|mvRsu zkz2~?_toiU7r|2mAXy-WiygBrqM*^Axrk(WSi6;ft`g-L9dAG<$LftWyQ??3P=pKd zSD}i?K+Z12djr8BFjSZA*#oeGlt}_QGW}#A5uR`i3dKJY;TBK0%@dA$!kwOQmnXc$ z6JF{GFY|<#d&1qGaGxi<$rGOFhLej0&)!gNX+!OBhg!??P(+O8WQiUmIxOv(Ncd3`tevA+zZTH+aI0 zI*gZmn;0}!M#BeA#pGLIti%0?R$9#da z6L*BmvEb^VLZ+5hyc9*?&P0`rI}l2N&zG7courT=Q{R106mf5q+;P@@*-baxbn~p6 zl+!g2F_8Esu7M)slhXe`(pKILxcYN;ugWE8dUTyNnf?h`k%OGnWgE74KXQ zd%{KFP5gi6Vi-L7qPSMWea0t`Z$hbcC=M?knpS^l`|bcFY3%dKvq#~SZ{6Ddp%Qb6 z(fe>|3;NgIVr?H~{B+|j&)7%8^(y^4<=n13%_D09_-7_Dr{D}i`dmD|X(mf+>XM5$ zlpcu{Bvx@X?N0@2EB27PZRJQS-a@Mr zQ4BsglFj6*A*QhYK4gv?qUJkpW3n@h1ai$Cu2Z88{g?1Y!X`Z}(i^BBCCB8`Q5c@)!s#`syk;NwGxgX>^yo>gl?A z`(HhfQfTyxxZjUBNU6|r*45eD>g`?n&ez@mTH~Iv;jgokF4jfXUoz?M^_0r2FY?S? z?z@eRp~%z`=>5X-PDVib#4MuC@3_i(^5E0qInYxPB6YfH^AyaaSEzuIyjcaT^-w5Z z>;aGRCCM+z?Qadczp(Wv(|KqKRR^^;gm+{dTT8gT2^t|6p@qbA`ZXyKi!d0PSE}51 zcI{CJUZl@-RiPZtT5kD5;jB|3YH*ECJ5Vjic2o_B3 zcZZicaMlQ=rZ_Cco(3{`m^T`BUwjgG#N?$k{JfSex{0&7v#Oiz1}O}uG+b>h$CtYM zMF?*;PY9dMQDih8+`;`^JqT=z*^tAQ95{JjYFiHr1s{?EomI>5#RnKmozdZ*qVjAH zWx6^QNx$sUBA=wgEF8yUE{0n%3#yhHj1IUUWzu(hyH;>bZ;&6)aEA5(<6)ist}-@| z*s4`Dg9&5ECl{E%1uWm}M{#8&mP@>(bq_Xitg76ujNz%L;W7OX+jx1%Slq`0VT;!W zw-_BZ3*)*sjzA>yhs?8U5J2czsp}UAyLJS7egHS=nfCXWR%DHwkD5pTlMzInj34gp zDE4M4(iFK6Lq=ny{ln70{(;snxM{MdIn-c1LMMogbz33v*_ASG(vzi6!SVBio7u?A zoW^sLIhn>$AR|X3c?c9KsY5VLyChpPEM7b^lM4cY-H=TC&8os}(r8C)a(jmDiJj-R zCqG*j`E`EopQ_n^1{3eEXqDcg5ZUapNLRtilsAGZvB9pbPTlcO$>8`Ih>eH1on`mq z8-3fcSR&Tr0njq`nfnCu5Wsk^wa&RGh>=$3tPZO#-N@I!whK@R{T;|}IxV=x{oTR4 z&%{6{UmQhG0M zwBvbQyo&aAUI*e4fP9xWw;LNlU?`Wd4MUO1vYC*&BUUBBGLBMEsZ*FVotw7O&H4_ITymLkQfkz%= zrJVRf>C+<+tJT})je|!;g!L_f7FhEE&wU1=0`_As9k07#_nx{E__d)751kd&R^Qw( z_u4vVa^tzq1e^;vBRqKC>6y&V8ndhwXFo)%+DHcb6Q*O<(9t*dM?4xC#1`aOdBI-U zG01y-$C8HutPK^B>apQ@+nGV`=gD?QCbOuIt)^0?xQ}%z_Ddfd87K{d4gqO#&HydV z2E|;VK~DC(5`e2pK^90LbNKwP{q3O{=8sO!Z+W9Lh9nnh!JsdqVcQqk#meYe- zPB%JMpjP2_n&tV5_)5huGHURs5pav}DU?T4^nOSVEH!isiE3|%;tgz#L|ya7`s4(p zINfwwgRpNZ4szyTAhtp`%zlIWS|LO9x94<5H_8-DQx~CQ3y-wasQ{@F#j_1LTe~}4 zxB`Y1-lc8FuLSEoo94`^s2*x<%MR{kszIjH76dKLqGxdGRkz^VWp2zZ?$gBIuE<8I z)pDJ)Vox%``z6yA!X-}LGbn6jx~_2R((Y4ERyWyz{#mMPz5So<+OBCxqxw!yUBjf( zUoWxNv_V-8v{vZ>0hu78e`OPOXlIp3jYUE1*JnT4jvPrLr5sb1R>-i3?FvU&`#15j zDkJfxmrDkv?P`PbIRWHz(GI}vwUOkVa^7Os0kaOZ-S^<|TEjxKXh&wds2=G?J!7XY zbOYzOfivB}1UGQJ8~BVHIMNMZc95ArJxT}U?6+Wr*M5KwWDn%> znFQW;n~hO|IJHQy<^%(+4LIF?0-yY_hJv%2_dF@w`x#InyYxL?vCK`cw;j zobHj?3_Q^YcG0oFVi+?=NPZq_q{62-NR|hgMcajqynxK2ZEV!(7W1@@QjPIj?7Zyi zH?oQLPQ?C07L7&ZQ@p>Po5<%ADGb({%%X`HP?))_RoveM2l8a0+j~}bm5ie~y75#! z^tQV!^Rv5Eu3Vdl6WjG;r zIIsn}-(?GP6>iBYAl`bVBUF_yxx|9$5tAz)S*^pVF8j$mrNXNfYU(`C>NHu51byJM zGM#OA7x?oDP>4goXQiZz_*^W|=#j$5j7o6>j3{52OgsPb{nP91>u}A4bGL{X`%>I6 zZ>Q>^?cy}T7UgRsH?`+(UnnTNQnLBx0ZHRmaT6*%Zx5oV_-~AW@%26!FMa;|n6SLP zU;^in@NfMR=YNmR2-5{PJEt@HV7J*dR`{;Ee<5vj*Zdcm&OLqLXiUtT9jj46tj!@N3Z8qVXY6jsFRTene+-U7~1NT%GMJ#ql&CDGZ3E!V*>w~1MwCH z9|tk**K(Q^EIVU#ttv6KEt0PytBADj2jW$((@nSD2<=fBZ2=;WaBvcpNJ=0S##-NE zt!4?;G3bsgv|R9P-5-U9zN$*q^OaJ-oJ#Refb;PIS^q%1PvAXWsW=n*s}LNw!SEOe zK4n`H7s9l8dc(Fl6;L?H7;_0uK;JCL8e_hSLn4?IV%NKLPqtLz1T4}^6VzDXkpy>m zHB`wK`Zu!ayQ|#xLRfqv7o9yI3i?hOyly?5_|mBpawTDRcvd|vF(y>;gRfRWOnryf zO0c0qZlf7I9vM?R#pP7-mgjYJRQPjO{;CtHnl}XZVSnIk+5}A1Zmz(Tx7YVwA1|%^ z!sGlv0dpoO=vA(y+jh69j<6N(63G=1Q3dEBd;EM>+;$Fx(KG+Xb7fnmn#SDUt0cHx z@dCteX8b0^--JWoSN9k8W~VSqze>r!^>u4|k$J#c#xUpFe;bW`EOlLa*)X`2{5as7 z(@Wix^}>omP5RfLtxlukRQ%@IRJ2Z(W(U@~y<&UWZp9?PrINawv8q5#Y)+qPm*Qdr%@}BCKS-8sETHTW`xVh@aHA1dqbLT8q4n|` zb$8XqZNrN$7<4GA0Ph){7buuel^k@_@4$bX6dF?Lm|EQN`Rcr5BUYvq?}p*$AmgsS z#9AY960%|&1TPsMi;x-=`zft3U(Q`g;pth1s-%DFK`wZ0WpVH5!#W+8hj#GVSZRd= z74;xITa9mA$YUg)L_lT!q12PUTat_3^T0`K1pAxXVDvyeWt&KZ@e zKucuRHrR_T#yaN_W~g)RP^liaB?4;{@?n;F)`Z{qGDJajr%J-zxhj;Pi_GQ2^!3Z* zFf1~6Z4;!FT?_cvG_Vy-p1+q$cv{2tK$_yTuAAcl|K>>>#G{5)IS+^X@QWgcxK4py z(gv2Rs;lm3Kov&9VxsDGMnWE>gbk@i(>&7^*BLO!meRN%DU?HM#m}) zsCs0nsIzdPLSh{g;35d@C9$Wo%w=>ug-7Em(J3{0oZKFiVmLYlzY$r3B9Mi6muC;ThW4*g6rp3cgb zs!*&si5ugf+G5O0k7wm;7kkFJxXi|#JW9SgUBOSld~zw~dPIya3NR0uoS$%%w7T!W zHYPMKC{frJB|G?tP)q^?9nR>naU23k1AvhYZb01W#On%onp(MTvujIr=NU_~y4{97$a$Ykgz zP)Scdc%ls@iRe!sMwuQOymA{PPxU{Ih0J+=GJGOmq{X(tjQz^a=U%nik2Yn`k43A& zqs)6$!du}ngL3Naly^&7CP>vz6j%D+^ayWVxO07RY>~#LKDjgzB&su*nGT*VLCayO zh6i9p2(AwAm9@T-x{8dv=b78pa+H5C3{Ok(rZk;Im~?~0DE(X|aFyL>lGY|+1 z?bguMx6Vv1fbAT!`Zc$H!`|Kg3bJH+Pev9^bm#Y<@gqtQ_50z3Z00B+o8NzhpMU=}Afee{>bE6T!O9 z9$F`6L9H8hSHUWV;n{~e+EF^f3+}>Svl(X;)Iw?Hy=Q;%&|pOZM8(RH}bij8%$#jd|)2zy7mSElSXbG5GFnln)gOW;hga~>@ zRxnZzRB5Vd^+<^^I3HXp77L|V86D+R-L%bOopyD}C!Fni4B&bjg)WY{q`~i;>F2KJ7f@napWOlj1jLBdpX~+geOyG++q;wzb3)bGyXc>xqd;%u-Lx*CpnD zPfUZvbR$MMDD^ldyB}uK_+ZgLSCY+<%se04y z*zOA*hjhZ%-_;jsgRke+7wLho->EOs0AG)(FSZ+B5Aw_TuC$ff=zaW# zvtr_I1bQ#4(o2raGce{+>bs6mYSf(>Kmy$5A%)0TwYrx{vpVkZ#!<)wu=#^B)cC^5 zCe#o6RwI9O+#(&5+-O2xPadHk3jf|0YErB}2pc6-&US&0Ll#`LNMh#guTJ zfMbnbvf5T0QB*$Nt;SUn0W~S{a1K*5*>wlgC6{;N2Rm2zOXc{I)INxt zZLqCtk*g>K`<3C&O^(cBzAwCsJQvm0GbhpjR?)tu95gA$61nwQ(^(+iYn@(EdImN^_1;&Ph-!**(}5gy+nbbn=t88HUp-~LMCf>W`>UH z2BTmTYUs>5Y?77|W1q}duZ@mxQ7slTwrT&>mG@G!Hh$Xk6`p-KU4zS-x%J+W!GV#2 z6N{qY53=H1sZcq-YhjaNVdqbt#J1XeA#qr36~5h-DylrpuOA zH&F=0#$!v1RR*x7W_7a)upUAz5|$E0Z%B&{-oW6}$5$`8#a+W)Vz$4r92AENHd=IV z)4oG&6(?>bXzV@uAhC^tY%I2IA`Vz4r}Se%b^L5CkGz2j7*NS<3{HgC4ixFdOPNpf~E zZps-bUHv5hthJ>8IBlZ=v)Zt-?l?#?t{o^%01P-XJ~L3dm>*ayMlvucThcH~94LXu zxy+H=Z|rlFHdZ4Wo!sw5_~PQLNqucqU(?jrdiBNq5TyK(`f5{OzdBX&#qp)b%3`6r z$85p{49q6%o}B+|zAmL$ejNxGIvL6E8|JRLTveZX9-ZukP=isBHGo)cqtT`v2<2Th zJ!(&(l#<0(+t@(s@y_gW=WO`F@342<8`rQ$HJ@g>WOON#r8c2dmj??KXmDYu$8aI| zo5(LR$+HI>%3CFHi;gqKBWP20XZU>hgDL^14sWgmP)X+!NN1yiiyFRgja4#i3hMl| zvxc2qj|Deu2Qn+*LTPZY+PnHWa-2^t=VCZw?|(idCd2S%9fjqAgh$)8>ULx}nc^{G zKtUib-NDVdCGBk4iwnt$R{3)tjIskgz98B&E~;SCsUgbN|0d$-*-Ryh3JAqe_3#bX%;23-QLa|g#3f2NDYGa@pD|;>}ngHRIqDS;BjH4abPUs% z#)up%M(&XO4L6)`zszBZffWl+%q*IQ#>3ki+Jls3ts;3!Vh%TRCcCyk|O=*?0DhiSO#)N>4SDLv;6qUnz_FN*%kX4D!4 z{aJ}3y*R1Z@7mAVkE`@HE)@k~@8ap9y!|fg4b#ILaHP#L29!4pFif)vFrwqSIG3Z8 zj+ux7nw+h{IeKV5q+Fe~)8Y^ZCwkM#kKQ5CVB@Ss%vu!?AF!i2rA^3=I(MH=9KJY0 z)o_eD%Xp_aa|c;_EzDd;THg-A1G*W=sVL<^8*75qyITKgtTBrtr=L5z^;LvQ5h`o_6GHnV zRNji=-BlsDg8}QR`?0BygP3y8uU^}%v)imMVe6E=FNh<|lM$(Zaf`|061_BGJF%d)UK9XnF34P$SrVP1@bhr+Vy7jveD zbkt>BJb6Wl-RwCyA^w(5L)d8vdFM@Fq)OybMl}e~EtnA9y$Sqyhd>OQ?a?sAi7wsfxQ)cN);A8{3ZY<-p_r5%LEJ#7O&i$f(OZBZ z=x;_4EjSjXPsBh25OUxI#UeF|O0hG3kK$1QVWTIrh(iCcr)H!c-lq1OX>X$K~Ct>Hj@I{$hDvg!r zg)X{S<~kf9WFxvNIMG09(1elWEQ(2aXhI#{c~hO9NVT}j5b+V2h}kx;Cv$obmfqvGjm7nGJ@<++3`eb|=zA|@hk-c@<-;Z=7XFzbw%~0?Fpl;_(!fU+U zU4RF0vuN@b$o4r6!i3f;<@SCuW8C{~$U7e8=6bXfs*StNVa17LQFmIB7N zli;=?yi(`%P|9CK3rMBsZ&<=r7hSB}pN4x9VfA9;pyYR5{~;6PtIFSP6$j^udc~sF zjO}mGH02SO31wC6%T7qEmR3+oiseJ`Hcl`z$|(ft_J#EMLN@tAw)jHm3RD;aI&&3< z4EjQL_(Fz!Apsc^g=iqhX9`lM%r{SkFC^p(sq}@Y@mdJCiN1M6N)*J}^vxsVyGXwk`9hZXLYDeMmia=K`$D>XA$`7(O}>yVzL0IcknO&Z zL0`xYU&xRzBp`}YAs*F-01L>SGT%HEzL1bFL>yxaaxe9z!ZKu{FQmp7V){ZFd?Ag# zkS1RUEp3IdZt;b*`9k8pkWODnmoH?AFJ!4NWSK8yxi6&K7t-eo+2jk^;tSd43)$`q z8T5th@P!QdLIR?H6&ydlkTPFLg)b!J3sD+iAq=W~^YDmdVIHmVg)~4xE}W;)7t-Vl zndS>=@rAVcLgK!VPG3luFQmzr2Ge{YExwR8Ux?`oY4C+K5@M}lf6SrD z;u0yVG|DkqXa07?+3Kw961)_SYcKR^*&0}oEE-WWi-@IdspWfF%| z>|GKEEZqq>o&eW2N?jQ@K+%ev6eZf-S@GDZNJ3yeNo*LhDftZ69A3>9(4aE$ravni zFHEYQl9WR_#+93<8gqY_-e22+J?1g?+*F+Fa&3Hi34t5R;}vKof5&n~mF%XgwCK^a zE`O64sM6|_Hw2wkgevm_7e=yeEQ#$6UKnYegW))k^#S%+FF|2ET9Y^z0sHm%Q@Xrf z*vdW0B?%udz+2_k<3*}md44Kaq@*b!a=5R(uKF)V2VVWkx&Wd$V6EtE&o^neW{=2m zXSGm(HBPUCmBk#}@J!{blEnFo30@0P7{Xfx3PX7Bgqd7)sr)?Dpwe;Glv%`zY>Sr` zfzs8gk5)%8iMOCn{dlv&gS(G89|PqV^6 zd@-Q3Aq~WrAjE$#J~0UADZ;XAV^$9PT5f!`AwtHNXTLPp0i7HbY|#(7*!FADGNww3 z3oB?UdEA@ia5oi!IyS$#%RP{NN#Ey5pI_1@U&t0;$TnZdc3;S#FJy-=WXKm1P{La1 zmEWGAFQm*DB37n?bPoCEsU#%1XfaVtKGdZ!RlH8**zxy+IW(JrrS6rK%a=$>y}3kW znew_^N*F_tqR3cyb}kMs;*29}x~9NAZEvs-(=~@Sof>Rb!N>qX!5q3Sc3K|$F4bjP zbIJl9uBIhjRi(HRwkR>US&tEkfRT7Phey^z_@u;nk?Ns%%XE?GDUN9+PE%L!#s!8V zeNxT2U?YMencSn3Id{Z-j|`E8sq+rhJ8FANo_^ZuCf$qYek!#brcyl&*W?$fDdieM zJMNK`X98(=%fc0^o7m~>u=@b>9n)Kw%2_3e^OC)P2}v$0m!F5qR5~>vmkIOVz4dQbWHGl}kd%_|ERum0k z1l%_e;y*L#)JW?VogqIDP2`W-f~il!?@dHL^JNyr@fS)A{<6jD!U(!9<&6wEXbP_- zNfoPrhXu^&Ig}W}1XJrrB|*%WpckE!G*k92cW{ZanuVOw_a{m*GE1ro zY-^h@WV<9@v`Ky*dP1dBoxKGg=+rN{_$Ry8ORD94lFF4vDpiio%MqdITxj6!U|x1& z|41zf9xW}A#QAJn<_oFtg@g!6E(*xcL!~O6Y9lMkZ{zz!Fu8n)Kd!`O(Ru7WsM|RB zS`lQCR#z44igu~HD6^=H>r42FD>EnSEC`S91>Ut6_>#TAYxV*+_X2O)3%p@3@W#Es zr|kvavKROcsP$TO6r}IaUf_Yflpov+ylgMJq? zTRP^kIo%Poi0Nh(@cTk~WOx~yj+&@61N3|vv1&4a?ClWG6|C(W1A!Wh8=0bYxyZ*1 z;xX1REf7Ru-rKkqu#ikk&Gp6C2i!CF5pmqk?c8S;g=m%jKkU5=d|X#`FFXzoxL_DV z(~J8x9~_DdHj$l~(ZeGrrXFh~k7CJIG_tJ#{p8WiNE$57h}K8fImg}p^9Vxfw(A|_9@yRiVph} zy+IV+mH11P0A&SoU6x}L{p7JSb z7e!C|6#a}Sdd8r03D<#-mydLp@#?$_&Q4yX&xQX${uR3@wMBU03_D8~#*RPKt zh+r46Dbm$=8gN7x=6{-VsC@3tiRx2uMZPA{@py1{j$uRo7x;8u&uf7=H@Ii7%fJU9P# z?jpJ15?6UEQXKBv#PcKHV}|2$8#~%Wt|SPBj4&c^@drk9Xmq7qc7O`y>ll; z=$ixEXud}zsCwrfI1KL5J9hwRc6b{edpiCgc=XR5FW&TE0@=Z%7EQds%-)+GB!LpQ zQ3IFyI=&Y?8pT7;?0>v9cytq<9>MG2UlWKCGuMgu6YRfN0=&xzqchhTqMUI&z{!MS z>dbXw86RyrOfQKKNX3B+=Gz>6@r2lm6GM0SHd06#@F)V3!@W^;cJ5?9*x)=A4UkqG zaMIs6K?9?}LF*|HV~Eh0?#VzW&{v_lyniJ*xviHjEwNJ;ioZb2f&yuLuq(yMXA_aDo&uxG1j89Jya!_ZrclQ(wOoUZt`{A{B_;fmol^ zC3ZGfbvJe9(ST|W>M2Q2P z?iT1o4LH$>LWlmVVm43A{=(`&866g2ojpaYEl~a)?gwbrPpXo+lg!zU{RmE-Lhz6i zagv$g+?U81?Ta>zs|1FL#&{=#e%ZnuSm!6nRZmF?rT z9iY9ho__-}P*V8^j=3o27A~Q)->Z3mX!aDzXXGME)AS-3-Cdj}mPgW5paM@hr&p`? zh>p^=k#gF~yCpn&=MJ+BHg^{_0||jzS5O9e1mxu`-#+{BwEQmpaTgVPs4c@oc;%N)@ek0g%ls(EHuF8<;xaj5};!oe)H1}3_zln6|6bU)B-9yMR&(KW?@In?y>SiN;l=a>X+) z0`7p$x6iKsUji5BXD}Ln$hy8DLGh#Vb+y)u4aDFvy7pZIQqKkNZU{J{UpEU~O(;-v zze`>3ox6iDS0u zFp)I&bKl`_i<@QFdJsttS5XJ76NF;_5k@f`ue`Ga(h;YJ*SXwvn$GfeA)Z;hkZ z9jl)R9(^feIP{Ncs@~8jHq|cr?a#FuwnpG z&??2?EOdZLOmFq;HkHvGy~`$85@ilj4rKqM^IU}Qep{f8^LWiFAV;D~(bQwrKk2GI z(N+CZ@FV!oKNmdu|I(0w-#;^VXf?k%SGrEET>ATqPvZmji5XmxChvQQev|M3KJW-* zKy9Ed{(!4i{Ld%g76eI3+CNK8e*0`2VG{nH`4glSvN%W!5i6&d0&IClqT}=ldba0RhP8m_%3g$GGb)UY&;zhB%&a?qQtcj8~sHJBn}s=e|lk`WTI^ zvA5?DGpY84R;rUHPZ2JuO#^lT1)$#b!{D0N6VS-Fg@sa0*#%J|zZQ~iKx7r;aIUM9 z+^8vMVKO6xF>|k>b8rZD`!0k77U$oP@%0}B-}5xS_h%A-0*}rekvLX)Bl^TPDAf6@ z`7sO*8S7*xzjN*nP3$`Iy(s97gFGE=T8|7m!o|%{OusW&yV8kf8(QKf5^!{>h>^iO2y|o_&W$* zj^nS}^k~;(D^7Gk%?)FmZu8UBCY`hV)ou79xb3#tv)ACLWLNcj@!+ zRK;1SaWFzsgl50Q`{(*N4`eMEI&e8o2igf9Ei!#)@`C95=t!WvdhRgoaZ-6X&0l-| z?FcA>kIX**7WiNh)q|v^Z4V(ikhv2fvc(FFA{l5uHYw2y5^8@IpTQRAwzmcEd@~-Y z)t>aqJ9}3=|I)L_AHN2nN1$uv3>}t+`%gzN$fdv%c{wn9)A0VuQ z==D>xUs{EH9>ZOzfidha^8s50ZH@5vqi6GT^g2#ac}mG!8%X;H=v(HE6d_{Q`!fu19omusx$FC``L;{3PP@(w> zftn`%>^=Vk+e47M4mfh-iRy`QNO|)=hI$n{^6xKU5Wzb?k8j|4&^c;_mefQO|;OB6O(i3!ux%xH8KC$5Gl}+o;p#80f@vHpT zvoE|lc;|C?q`O^s0o>4f7XFt;q!9m9@a~WBM9NN*pq=P= zGI;dol+AR$4Nq7gYf1rj$(8x!(=Wa>cQ@1K*&pNX*FUAPd{x0aeci7nR{Y?lzo|aPx~=vvmEif|j}bjl z77;yjbdSQJsUm#dS@Z~sK$0Z;{--mJw?0+7=uQ*~ht@Sx%G9$oQM>3?6dnJ-zsa6B zz7$1)g29*n6fn3?z~F@yiDT z3Pct$1viO9oyX4MlHJ)ynWY7feG3U(D}2M9^hMdLr>f7~a3}SHyUSwL(4B%c4gDgq zCSGpm-WI>DM;5U8#E_#3U z+?{vhFZk+*%kQjm9+=CAtG`CM+z=)8TOtQc9jkafR#F*%o54x?SsSGL_taVy!Dc${ zASPJB%{TZYT3O%m`4g0}2Jbd^+<70KaW}w^fE}EVZ#7qcjdJ-z^S_T0IT|Uc-Aj8N zJT@qh)V7q@$R-!%5H+p+%(du@^vxhth*7f!BvrHmF;_;Y2_DN4MR+ehAQ@pl9;xAR z+D$mRol`;+zv&JO;)o2vCOwUBy5o7y`xK@``Rd+u2RT{AHb#QbiVm*c!aib3LQvPMc{j!6kdhC(dGfsJ-Wvpe=M#DaSl5g+#3`pkWaU- z58*HU(DQ!v44C5Jz!@Us2xuu=p+ZgMY1At|g6IK<*U0ZtLvG=__xMpJ=(gqcrF+GG zg*-JtcA)vs{)?ESX`ZA1LaCeX2=PR`mYY;SAELZtx1$2C$r*%Pyx~4>9;x>sGQx(B zGfyV1`IL;CkSr%{ic3=4H@?}J-{{Y zV{jnj<4q?yoA-zP=DBcx>i^`{|>FO5+ zN_;c%*b8f`Cuph=dXi@o)n{J-wr)lPv)@@!i6t;cgtD{`6#W8_9L+&C&`bU#`S~#E zXTu5%rcZ)JJiY>->3FL6+&NsmOOnXk$q?0Z7-=5EbXFcZr}gdXN$LPuPrvj7F_tLX zP=1S3Oi`t2;$z5}yMua-yK#fRcsE!0WqO-TKHH9+5k`;R;O@Ic*A;m>xt>r_sW#YD z?VUR!(EXpWhmErNZD8(9pW_-BF*({ssWcu>J(AEg2TYG^q$NBaf&W6_JWw=dIo zdG5SMYXPCzQ@m<}_jI5!=jh=kGj~#v5i#<^iy1j6EHo%VYe0b%MPL%Mn9+aoIT~cS zshP*YuQx}BQGJq@9`S&}HW5<4$%-MSKgJE%CIxt^hXd!?xdU#(bFk?mQh>snzii_$0rU;LW{P&;9}&`hV6Gf7YY%v$sJ_J@UYJvi8Pqk z=>*;sup{aSq{S^e_xumQHeUU3({)TYdf|D2{oaWtYySVBHVnTj#Gr8x^$NVTMrz@0 zC=5L6zOjWHnEywj`NEU@(N}|!FbMgp^M8gSLWbZ5$XxUb(g`$F`ZaZWQwZ-NZqp1x z#p2%UYP=}{R$0!(W^cb4tKwmNkAQSDq2)F;V=i6#S;8L@Xz!xBXka~@2l>mfYB!6C z$Y2mjBW)U@0xoqyWkDpP!F$djg_{`u`t;Aq?)<~)7hl?X4-%Dco^FwOe}TLQSC;>< zC;epN_{uYEWWhbnkIB|$6qn%9HK0|ex5<}2iI_H7&B>0fNBWfAn2w;!0FzxFOuj{^1qS)FLWPP5J3Z;HX zpb~2Q>=)^3k^nX)lTAlnxTc@b;rl2)^1=#!z6OPf^wUqq@7o_`c&|v@|783qCx}dd zo%WJbo|DJ)R{w!-@m>QwO;nFDo*z3CJo*i^OP52n0`=Y@Uzs~h*QX%kr)Ye?fltu* zs`$&}i!nQ@Tz|YDv;NeR@w@kblzRcJ_&W9J7*cX1M?SdzRfv)mJo+Gwu4b3l0cu2M zDcEa*28UbGAzi48B*aoc@ONByLGAdB4i}X3eH7JW_frEjv^mu6t^VF!loqgv&z*b# zBct8^V?oNcZzr%E&m24zgK$+?L)z+EBXgVMtpru*rwSC|c$=Ent>^{cCJ0faSJ=Ph z-G1{sP(%=>1&m;YV1pTfK>vcB3LCn=X2~_l(4`N|zgVZj{ir_wzfi$k1skxW9IMA2 zTV1XmijzJ2#Z!cS!J|8Yo_06Btw_Vy2?4<9c_CDL@7vG!ztx(R^+34!ELt+V^Xs2; zb;s>PBfIkz43=z67GKhY>x5VI2IJ4pe-_R40G>S%w4SF8xy^i64`S*m`4{ug7xctB z_=X-_)g%RD;Qj*wLCTMu!xe6iPzqzcgTHj`f5z?^sti$;T^Est-iGK+!@X3$N^}7f?O8= zqNn;l`l?SlxE(xlA-)PPE1(tV84Uuw?Cih6;)LaVkiD&>oq#V^`67#QL^5z$CMF%W zHyAR3h*l!K5@9%j@iedOFbiuS8@*0LZNP~Y7U4Kv1|;)2h}5q}cv5av`}Yx+(I<@-f|N5vZ4bI+{KyWI{)L2?3w)VsztXgkuTd%xzCb&UwUPr?zL z#UTJP*JD@$KZHO8_%z8b&zzW7U3Id2QC4Ca1RpIl}%VjO_1v;?s4^**=JYW6>kbYf(n5ct4s460X|k9 z2z&qL2@*k9Hl6+nf+;e-#u=FC(>O5BIgiSmRi|GkbAC(atUgW021laNz}&ejemW5jm-E2XH;Hu_`^-XK;W)@^ zN9zfzn|hBoJqDqdG@5Cfd@18x^;{8?@O2nRN1;2nO$N*V>NCgIqN2&E#9WWqQ?@t_#n@oT^K1?ne}FzC!{ zaQV!BP%b;(WfTK@KXaG0*rDNG^vAGE!~2?Q^O}P2%SF$t9I-CfknW13V`vQP+amga zAenqmfpogsh#ml(?Ct;3uW+0?p!+J$C3+0t(Ax|gXXA(gEA(PI4JTq^+7M_31gHxf zv-dt>Hhvv9=Hu%1(uwB zR~ad|$4+BM0$%|vs0o6@muz1xaeufR9f&VOuUAZV?4=W@zC?Lw;QyI{cCt2>c?+@Cu|@_umBy@i`Cb5AJS|?|5hL-ZKP^xsOd#cmp#3{3eqH z;g*w_`x)d_o}0f9nLI5Ha~53{_IBAd6uXL@vn%T&XFJ@>5QOiPU~ zOKao2z9GDIm4S{%6ee~p;4KGLZuRdbeVDv+{l-TIPlY0M=7(Wt)5lrLgJV6BDe_xn z3TD$D$SFK2&H_*(!oHjMC~kRHb;&J+%#Rb|*%n6{kg`dsDQeME#8;A^{i#`c@t0wF|t$HH#n)4kru)n`3GJ4%PrWeTQgq*SK4a-X-RC zYz%Cg1L=$V)t*uCa?3!%&-+(Yp&OXO+z4U1mM!Q#wTphPW|3(1tz5p97U$XjPKR)H z(5>|l9+*8BfZI>r5l50Fj(J9P>4|i^>kUi2aVx*EO}(+57KeOer|XT7dZUHkNT@fO z9B=%z>y4;-W18O>Qg7t=4VF;7fy_u21=rv?aY(Tsy(epyko@ca&Y7AePt`1Wx@O5U zHA|kYS#q{!$#XSJ0t7f;7_6#U!V((pXhWkA-=haj_8!2Sa$yP1fiQ+OhrE_bj^BGfzw^+?>5q`bUb>e?B`(~maQi~?I)36l zu6yzX*JVZz2Yg*OW7oy8D`c;zyngl+y>m_Qo)IdPD-KL4Z6|Q}fem{A5Le`wW3AtkC1v`Z}#yEiuUW<5?tL(|c zR3?y|cE6G~KOiOY-N_+a*vF|rn_xK5bIIyXLAI zU#EO`O%7z`(Mrb$%4;m}}?Hj&f|B}S=L&MllX z_%!W>uR8na_pu582eho7K%O$lejU$j=s)@|R8wH^+=Il3k9|LQbSwDq?1!!o0AEDW z>?vCFpw8dHZ|pkB8`ubB||@Yma9Q z(NMLi^jf?vHgeYdlI7S`TI1YQTJy^&a&9WEacvQ;dB-nNvD_kB1D$QH-X2i^l<#z{RP;a zkv}AopM)WVlKVySbKeq4X&~;v8Cxoq7UG}8IZjGWi^^5`?qMV!VLk?ppC;TPr{9h; z+(CHcE3^)T9T7JZ`#QL?dw=Z=ab@1M|~CgaomU)HH`zlBenLItr=_f~*p z{_l}gCZTThLBdE$J_H-7cg)>EBG>Gh*LU2J0FMbC`yk$zB;i;d&kX!y8GfP(c@Li0 zo02bJiLu2Tu^Ya4-C?vzcujI6ArQG; z&Nr!Sj-m+^aZ=peH2Xc+9>3wU=RilhtKU7FJj+`Q?{RmI4!24>sn{wQthrSnRaa=X zdIeNE<KPNtus6IrV`RZ%5t+=g!eARmFw(NWV3VZBB8-@ zw27R@X+S6Or5-Q_avY~LjhT+cQNHYf8qXKdLV$YvJU%G8$gWvYVt4)YzUZ;4Plv?` z0Ha6+kTBKIfLlgbF{>bgr$HQgo$nCUgdbs@Np4rv7(pyQF z^g!EZfu19)o2YA)k>E`?F?4s|u-}2MJZJXpB=_x!!;d6raKWRzTpl6!86^H0zZ1ug zQ4w}h=?VGsYw-)8x(4WGTe8SOuVGMsdn z784gd%94#lFg_YKdpi+{>u7~3dUjX@sW?-4E!UX;SF|CXPT~o^Kga$Kf9Ja#JmgyN z5blilK1X$sMB6CpVM$>tbyFZK(COO4(EyxC=epM5L51ZD#vdn$_+)lNB$TMJj@nU} zjXRZT9X!Yr@UQep*g?8Nlq?>E*Uu3g8dwj64%7gx2U-UtNzxvHy#0>8iu+)}83n*8 zVmi~PhfdHRJNIspdzT{@&XQ=R6~2CgwFHm;7qrIgC3y6==uxm3x=WLpg7^f$)X#2~ z;=+1CJ-$Z$P+!B}zxZ|9w)pnh)Nz{sR!AA2q8e&qrHO}}c;yB?Mu-Yvyw|N;kB8tf zI(!Jh^BE+Z8`zpdsm>sF947MIBR21{OS-A#(|#q*R8ke*=(5}M9En0DZbgOJ+eu30 zs7Nw<_IB)+A8kXK8tnXfu1KhR+P0hk(Ft{hb0HCxPjQ*p*qf`K;6?CjIJ=*m_3gjjyhcd1oz{=^C#>~ z;2ADpuAdfHDiCNj(k$~j^4cBG^tjnbM~!rckq#MY-spAYF*$RjZ*@G=<31zZWuym; z^q`Tx%}DPt(mh6cw~_8Q((g6WKX0UCMmlMv<3_sMNbfMx2_t=rk=|*fdyVu>M*5vb z`aMQ^$Vhh@>AgmJyOG{yr2C9?vyt9pq;E9R?=#Y$G}4xlX4>P(TS2tQ@pFxlewC4? z_y^9PYmM})jr41b^eQ9$6Goa&H#&b_XQWwvb5wY}QBLxW^XI3H^#5g~f5u2(Z=`?L zNWa}kHyP=5M*1B_`kh94y^-Evq~B$v$^F^+!yZqL4D#=C{%kVRHyUX=yyyH08|jFV zZZXoWM!L;Nw;SorMmlPwJB;)eBfZT?$BZ;x0^|JYG}3V+-DRY^jWjvbI)7NWc4Uy- zzVqi6BfZl|_ZsOwBfZN=?>5r?Mw+B5=g%G^z1K+ZGtxsw`Zgo|o<*kLYt(D^9xx0BxOq<6Q|Yuo9y?eyAq zdTl$sww+$vPOojJ*S6DZ+wt1=oyp!nZ*s?AAlcv973fNK1_lNPb_E7w+o`NS(6cKU zhNAqz|Q^<{)h2Dg8wb}--`c~-;V#A@jr_H9rz#brC)pT zt8Wi}CFxfzj$d87=+~`*-tJ@~(Azl(pv8Itk9|G605IeYP~HIN?d@#|^u?3=0s~aq z*R^X;AUj>o7W1iz8^F71l&Ej(a+}uWbc?cZs#u_2s#m=T1`=LIE>MihFle-- z)`D!KE4i_=&k8tFy^fR>7@OFUE%%_Av25|6NF~cf3_7qbvx)yXGjo9*y~DAA?ZcVu zNM&reP$>h$RbIL<3AD+Lytn=vYk6|-3zQli!fp`dDX zJeAJ?@G3c$nw(5Ysvw@RoYksTb1f;16MqC=t5(XnvZGDoHSY7e+%&L2jE~otc%%hk zefYyxZZb8NwU?quzBl*to2GKp*$KNK4?bU{&W8e-Y`!ol9t%^cG$w|YmwXJUEczA* zo=ReHVI)-#i`mg)wlr=PQ{^lWHBin?W-;^BkbKlx+)zj-(NKJQFVjx7NCK(ANMJfJ z6BtRQ4+Ki(RIwZwtK>4-z(jVmTpBM_CNkM#phz@Xr?{w`!wVvxA2U;xsX%6mbMO~r zK94_Cm74+*j{&E}8!ADi(_B0w3Z})MnLx81E>mr5vXIdWPXQubDV7RF-y$OMjs-kf zsFbpnB!-TB*#f9=j_Jv|QET03fG1KT8>cqD+nCe$gFXSe%tLP3eOq#{r*r3UI6&Eo zwdic-FC|{Zx>Z0Lv!_rI(%Qkw#DP?PQ>m~i9N5dxTddwf3c$DWg|amYa-InsJiyce zFXz+Qek{aTCR0>mAP~MK;uHk?ATCa((uI;Ula~Bsww#)9X40xZl$x2qGSk^!@+P~O z4&?Hp2h@LjgLwULBDO0I*(#Ggm`n4(i~=dM>LK^Bs2QtVu+qgWfn>4* z5*oM>?cB&SANYTmx4bvBvE%38cSBQPUFpVkr2tG8fZ0$uOaN;S;KA9{1mI>3p+aD& z2RvkO98G6RfuZ6gC39ddAIt`Zhz7@VC9H&*K)ff}-y6FP-5*U=Cdvp5HeC*+i-l5Y zJe32@D}W0Dd9#N$V(HP_`I3G*RLbh-Y)RJuW7=3k6B82wOyEZ1Q-{D84<6{`fexid zl0u9J@asC_vu?f+PU%_yuB@@Up8|#;hSOOWC$IUT|VHhY*qqD~*kTp># zmOvZDCu;K}-DS)OnEEiN9@w!pIkb&wj&7AJFgAS@Mahg1uhf*!@>;v0-X$cSgL@(VL^QmKl}anunn?PJ;4 zQL!&|Alq3f7D*+A zN)c*A-O2WVDDs1wC~=Ld3roW%TR^lVi;O{v`pyA~9Q3l2CR~h5zKhIwcB(vXW;(~? zrA|QOVUidjeXT2Pv9LbWL^5?y$jCTB^#mEn1cqWHL3U20N~Hu=xlAXq$SDb`!R7n< zWU3Rg$QaSyscaEq)sRSwxf37&0mECJ_nF3T;%Y2VNgw`rc}BcXa)oU6I3}po$6^II|lJnrNmbQL-FirE>B3s z@5J$ea#kTC3Mpw1P0k^;DIZm%GO1e?RCH%{hR6^G&%-MLBP*bIL*2Ovps5^kH?UlP zv701JRDk>^e%m9YJk?Kn=GWt?aw;$c{NPnNNJN@b1Y}*-)47-Q7jy#^d-|LSQUJRP z>53>re@66dI}s3#2_dUQs?lb3ZqRxV5ihI$Ky1C=Scu7}XofmE(UP{pIF z-v=#ffccU$M?LQXm?ZFtrAqf<}h#9vA_t0W;*2GdD>RC*{j!I#|F%X$B~EV8opJ10w=dV$nfb z%n<-67nHdSqLdn$$i^z=!a#NkQX5HDk|fY7WHAF-=!(J(s)3}y4QHJ_`P>I8*;^~A z;(@?Wr92vS<2&W3c_4zDqd|_AH^rxN{5ONY65+t%hNefO?FT1?^fS~QZQq;A03*;m zSfc~A?Gp592Pu;SP*g#I^c(o5Z@#lWu?Utzb5aQH;qUAfCIpC{4j7`>jIVYlsJlR& zOp#uW1cn9%n9uN6DMgd)N^};>X+d;E;ciy;ojC&C70B_)fdTZF-qQ^^)7*c%j%o>2 z+)e9@{vvdtB6uFRYkW-!DkwC;Eps$r1_oT@fRfxxPzy+A)V$2l-QF{m;T1;Z73jUh z*$9AXW@K`{MWTn4a=|VGvYfLde!B8VzfwF#yp6FAj%O#aPIMY9lT-o$Es@(R#7lae z+ZI>={*anv`6?V3!rG@)Pbmfteh}@+3==laYynZ0)gZELgjrvX480oa+z#;Mr98mM z11g$j?7`;-IAJ#K$hCpbHHixg>e5Zj3o1IG2|gh)IXRx1@~j%p>?}-%4)pBW5r_@$?i=op^$frS1rux%Hu=uMp50`sAK1|~m<;so z=^gCphc?+i(9;(ixDBTJ&VfK@Z%_aB-LV1K=G7BS8M|UTx&{Kt*xs&T_4-f-;`kx# zss!k%i#0cT>X&LhXA?OjIe_Z2kkwh30%{`}hiu0W08*|rPP`Vmns;!DM7dt<*07>@ zW2KneI67}vn=!QGv^dy|w%4#oz%=z;bf2D^q~MaPyyV0c&8;BazJfB)`*!LGO~ z3HS`7erKYqbEhaks;3jc;g^u;ClJ~R`8o=A#jtgu3g{Jg&i32-W69)j=k7jIy$4~p zRdq$LhIjYJI(r6h3k>(|9_;C+UL<;UVK!8?PK;+=MJL7BR3WE^W7~J{wfi9Qx?vqi zb`Er5-@#oOCj6ehp7(Uchxc|34Av}6>>hZJF0>m%FL%)>?EcAN4BpmncfpZ2yleMB zU#wR)wR>P^Y@jP9Qk{DS2D)|)VwRFS2Y2_2%ouPINadWe?g4<9RBBX~-yP_>bx&7v zaM)cW?1V4`wUcVQ#oAS{@K?~cl2y!>E5$tUip$6tO%|TiL2y~(tF#uOa3>FjhdcWO z1&}#r`e1~LBlLnWC{r>d-WM-+jzf&dRVK00U~EA*@VA>N2?(j9Bcmh}OL;`t$Yp{} zFv;=^dIiCr6xmJ~GT2rKQ@E1qOMwp%hh+{YDszX2+}(i%nIvpTRBW~)t<;kPTej#b z`e}h4Nh7*#0Yg69G)hp09j56aQjV22Ooj%km)y}aT(2I=xn5saGFG=DRp6RrYM%r% z$dw>304DSm${Pi(hXtN=^WoCK4juz{)3<=$fSLi0rVStfgi`U?av+sy2@d{7TG$i} zt2}z(v3wyOCvJ5Vwauk6_TJln$5nDNsjG}85z`n-E9#AEJ1W*E?XYEag%XU%MXNkcIqGGyUI;M? zJ;MH7C11>@3uAeRv>7YKwlSD7sC#xo?4BG-m8>b)N>C5GZ`7(?gLxpghc3w}g?EGS zbFeantQa)!9;Ga_2WvTX9u_W$GPJX&=8NHkeu;KKtQu*C7aOenv<#^whp@=)L9(+T zz>z)8Dhb=GRT$+lKzE#=@0ZzBOtX`+#Pl{>Z24Es0wPF5dqY+1obohU69t%rief+l zp6ItU>on5wjIf_jpOu719Twx42Em2eQ3F!r#{AHoH54!e&p*d|jWN4ODFiy1Sr1 zbj1l2SyvHub#y8ECJ2~%PlL~$t)UkPXg>(XfkbR@n4E@$Lj--yTRzYO*COdL;rITY z{(5hdHpw)sL3oS!;EsQARh+$u3#{-p4{bIpk|L^X3S}b)TZ)Q zVdVW#Vle~<*R#h%Br8XQBhNT~ZKE7p8iPrd;3FsKz(ipT+1Pl~Fqz8F$hkmW!34`h;m2XN#oPnfnHd2_AxfG3XS0E~E5MfWI6g1tf69wzabomX9Ds0fd;;0 z@Jr1ie0ZsggMc%pnJ^Kj8fK;dpHkQ^hP!(Pl7sYm?J5oisrKzLpQJwt&j+Hj4!<-4 zNvBUaR#t)Mf|mu*ynKjAooouk(eWNu3HhrDp{|ghn8B)~O$i|x3X6gEcx%}dVX-MS zg3TmuCIHhQtZ12yY8kL28Pk>p+X^|`Qsb3h>`Lm7y4~y)JZz6Nmv4{uchL2)odb^s z00BfR2W*vYf}KKVn#A_GmiKx6Dw$rac7fHF>=j` zD&n@Vz0AA!OkBu=E2Xrir*ap0ev zVYPBZKUF>K_Kan%3?xc+WfgV=#g?!{B>42Yltu81$xT)!g@3Pbp>(&a>XEwCK)n=6 zfMs%b%oX6`v;|&HzU|p|2uTM9Qini5i1|(yguAdIY*|WLDb2v7GHH&-cl=@ph^s0% zkuzKdgpyV-IV8%@n{Iqs9LP@7KCcU{qH=QA#KJQOjjf@uNX(`q0k; za)@q`&jUG)mJ00fl8^#4gL+*k0{{2ObO=9H3?pFA7Hq7Q(=@P}6~$UZfUuKgH0fJ;NG|1(^qxWJgkRI}_yu7wJ`s_YdZZ zg*@rBFcKDXLiR6Nlj1xBwMjqpimmrSloZDpSZN}QCA*(Mr!l@Su;w6qwxQO++d-7` z-Z_XSyzx`QcuW$!ZiIA|5~Po8QTEqSzXThWFs=z9Q%xr~Munog;yc21Nm|ZHlN=?x zS_z99P!WrfHk#xLOg5!Ki_6Pg3E}~kZEos=P9a^IS2Wj#*s4@C# z)Ej}No3tcy=%NmTJWR147yzOi?s$Yup!=nDAT!Pfg6R_fJbqn}+@Rg$=iw9pmvY)GsukT))kZ8Ss;EmJL$p zq*|`lT>bhmzZ&(8tsB2}&k!=|`L26C4>mIc=z!+HeKotRC_5xugPySWxWw3ubL|W5 zis|04uj?~Wg0TtOkMS=*$bS8`%h@jclxdkFw{6qa_e{0v?`+hWwyay|#S+ zKx1@*xCpljmK)*Y48KH76>r#+S0Xrfy&7VK{_9t0gu=i+m7B`i_+`{58EbSR1^)uF z=GK1Aq|1Vj4S?(qDD_G7$L%%}?}F1$JUJX2BsUCl8{+R1^OUk5Y@6hW%4VyS)JrXH z#MfKHFgV`?BMzGtidh!Z*_;VRjk5*vhvZbZ9SUDkums{d` z_N2o!lTi$sL1(Xv@Fs{`qTPn-N62xJ?_1yKK#Nm zO3&^}+UQ~S+fh$cGT`7|bhX=&_2i@*JjG|+OpK&10B%PIM8rUh@9V`UybO3MTw^!z z-IOPA1diM!ZGI!c6)^Z$ed36hjQV1IAk)1%WIabdP7AgWDOEho@qOV*;->GmxlL9? zQ-1X%-Q@4FbBmY&MfHZWr3kSEGC7KdYP6&I3Cf*9Ipeab1t~2uICO3u&;SP&yjPh^Lk?{SAjh{I@x}Jy(twtXL*B1=7`=+AG&u;NAb+(PAL&VqB2EK;buO`x@9EN%qLdmVb(1p?IKOb zR?%t;ryvi~`P3~VQBF>8Nrm`fW=ksE%#Ew#uUkeo%M95-t4Qh=Iz$>xM8p%?XlaIC zQY_I77W z3r-jtpWdwpr#3g7LT)&vWHI2>qT$r4;Ix^*6d^FR)Bsb!1E-EQhK~uScwua$kk1m7 zfJ%&1OT?!dBd$5q_2)MfQQhsJY4xmw?#`Bw)n6VxF*d3*$n%07js>OBZ6L<{I@p; z*H30D=SeOl`wcIK|M~*X08xGZyZq}*!ih*Utuw`cU+!>f0F&y|Aw!-EhwI=|vTGUG z*isPc;s|v002MOmk%E&iK3&OhGVm!R@yUc!UrWd%@h)CB@RDbP%CrkYtHpXrb?On` zx?;UoUTqhMVbb5_8DCx9M-QrTZAZUyzUocDTo0fc?L=4csa0;=6)_2j5@ma4_k6tG~X!OVIc86h3RL@S5b?tE-#%8*cO0L(yMS z)0ahLcCX~iTTwUhy1mU`&$?paW8iyxhk%dC?{~GgI#|FW`CNUG_(Bpr&w}ybgB-6( z=U%DfjY#?+q!?RI+|{*vN7ru06rZO#yCHpg2?nZ~q;Ua*wW5=ukTkPMyQT-vyOIvd z9+6gkGTu|L$SpU(&@OHI8)1A`CjA@u85aGGD0h=bA?Rovmjb(O=adF!U175_E_aY| zIaJFAsm7!CDWv(m=6KF?m%=@$%`P)L_9_guM2g>fP*F9g1$P$A^%+%&YRKKY)I7ah z#wF=&D5B)-8ho0@bp;yKJ@_2HoZxfm4eDxLM3fy}fQNK8mp;nt;!4CH!+xdVbOGU0 z*Lr~?em*<5%V0S^KZ~emoo)8lZ~B+ber2;dp(!Y)kh(BBZVmI6T0fd!Mz4@@8}faq zU6`>{k+P_3U?F@o+NetimUg4_)zaGS{6jt1?c}FJ)h4 zII;WQ@>p5r`V+L(CcPKh+^V*F7wsgYtm>LBD>${g<(exVP9{Eu{r%Dgvgs^ESXe$& z^CDzYDcog;PUtYP|}lM&J~Qwr`fq&ZVD9>zcIMEYgnb zHbO1OeyQSHeok(odQPyO^&=UXDOV@Em(85B6w&&U6J(Fxr5L`UmoFon+*opXZ%=vr z3__uHUN2ZX?sc>5c(fS4e#y-iT0d)P3$p<=97&B3eF2aRIKd&Agddph*_E2TsI{}g zQtbDJZM#j`ve~zQ%?%;1_qU=Cs=tx&0{vZvon%|w7f8Rr_KM3_q?T)d8i$h4mpYEc z1KzW#pm#>ZCPJ+q^Dz>=uEHU?-&@08nj{D0I>Pd$>bHV-i|T(ZJgR?p{M>LQf64nkq&4kkva^!cQ8B&dT@jUEiTM10Igg>PWN)q;;l9(vis z$4^vT68@<5!3cB}f5bXcbT1t7-~YQ}*OzH`4cCwpmv4P7VSDS6s~ei{D?DnC`1^ak z{PAd+=upIeKS;sH>c{nG%fQTDmdY#b3z_RKQh(iDg_oe?5hb_QlDoA7PYnTfBpjhr z(j)}Yf#eSDYlQ-Gyn?e8vV|j(QxY_^wMLZ&bDqNyX-GEY?mf6z0}-d}^LXg~5)bMw zWl3BdMZCryI%!rOIWHycp{;H`T*1kTbQ1M&d1+~FyirM5Lh5C+spSKwa7N&hDG%3! z)8fwyEgMSdQ=o13DNxC9?8Uag5yu7`Rca%eXFZO{^(dugB`;rvpMQu3bDf6U7QjF6 zGQEW8=ON-EW9g@jYa*HlPVHCWedd5gOEC6BwL{z{OeQxnWvH`EWA>+(|4KOG0@BxA+;>okla>YpQTBq+W`BKH%Nb61)lgj;6>A$e@Ln9Tzn%fyL;t0IR8yXH!pXG`FCl5uQf}rEIkDV} z1}z_ZmV_6Gpo^bgh1WEPx>I^+DkPp-A}!(om!XHgCo94O)F5@sza3jcqp8_nd5})Y zOP5W51^Kh%ghl=LeW<^653esjgzK?Gk6pMWB=N#nM+^4*e1wGs96Xq;)H^U+XM~!r z(g_IqX=!6ixTdSIbg?pRQFt=YeZ4{8IWXJk@M>AET#oBtc_cHb6GSpbW?d*K_AX5a zGEAm!p>DjKdM9udeA-7tSprW~t}h!tqX-W=Hc>ca#j_KY>8!Pju2Rb5W~?Nx#KE0z zh*ONaswXBKzS@@_dXlpv-l)NoE*2bHIs_jIg<6?1G{-a?`-?eT3yFy|K<6U4uXNk8 ziFXQKFf)j_J@w&bg<7K{y>#WOP%uD{6UacuDav6cy5J=a)YY*bk?Cv@9XE}HaUJIzIudvJXKDmlHiLk2pCgjz|CP~n!F zW0R>5;%1R%r}U zFgrs&MaXahsarmkQ1h5b>I+!D5p~_3=nKRlmwqgpWgL42H=FM@1~>A<;7B-&73_uR zZf_pDmZm$NjIXs*VVft=y&G^cRI#FGzHrlV?%NxW-yVtzik@wg@~OHHAeJA&MJo_W z>8hLY?1ZfgVVzz?&yWk`dZ%OEFA%v$$)%7&1*Ua~jW3%YC^!x5u=+z`kMy~8LU#Eb zWT|1Bamt@9n_C2&upsH@Dx8Xw&I787KPou2Dz`fUu28dHcb6YNDN>~<)5X{+RqGFQ zo$V3IY-8iq2P&y4_;OnPIUEt!0;eKUI;?ynb~Jf%2)ihrqoArEo2B1hOGwCvHh(Ur zQ<*H}nz8XRhXb*2vdt?1>xgTMW(rz%b58Pb=MHEf}y2%GAi`h#HY2t*_{QOKE-){r1W@ z%hx?^X9Ydr^M0@kG2Ikihd`WIa!=A}hIC2COO;mSp;5hX7b~n708oTL$kvMzQNR}K z-Z7)-qzNAuih+k$Jba|SpyAUdD3gufgg*njcUU{2G32b4%SkYijHJckiqq!Yy7pLU zFPtlm2hZ9Sg;)CiZP++@v9zwZC(O? zT?~4EgRd2PF$90(`A~dikBFwEoiQTdq~*8muuapAqvRBMIq5tGgf5&$L)H)5{^5WV z@7P|2lk2))Ek9^DNq>{8a9RLPt->$oDxCb`lx~lR{o4`Y_-Vr_9<%y(?}%AL{cS_~ zRK3f(cO`5YDLS5M7mg&6lwrTx4mkBETZKXWlDT5~Zgm@^+-(KLej=CGRc{=I>~f)! z9>@4_>c53_of4AwOot!h;cOdv~7)N*9N!Um$l0?OL*cyM)%46`XLqL;{MiiSelnFTvPQ z_zDJ+Lq1niV8tq#TtUcAIS{4og;X&^F1hCqrI z;kO8fB6azZq4a%u0vU($U>L4MiKIYfOAVME!&Gm0Nx zS86?V&cGiY4tbfeY?=M?Ix8bJPOvQUBmv=y!&*d1cef21BF{SMSET(3?>L0Xk0?sQ z(fn&`wrbq)ljL(wk;tex@1)no%t)a)X6uBnv<3y3Ego1 zqR>V(!H{$TN_z|~KyekEJa!Vf|I{2$l~Y!Cu`p&Oqqf^GP?CZ4N->et^ej;Dfmu@U zBYDxF=0|*5ZaadN?91h}3s@|Zn!<7N+Vo_xIA!X#ZeJCI6kKq18Qv))zNRc}LHRjLwE%i9JTS{J81c}kF)E&3YxxK^Ic(FMn)4ocF#Y$Kk7#+PD?Z#ea_4Fqt=ipc|<5w*> z(!IA=BL|T+#-!9N25Gvb;VIXv2cA~}S<7X@B~M1%q~osg7gY4GyW4_+%tP>(h2<%7 z)qqLN(DB`3faz1RkZHA!jII2cM_OfkiHNlLD1D@RVkVOt%UQAht|5!}JzQp$MZ-mD z`|_xv|ItHv;6U+vUl&tpG{hwti-J{sXHzC>^(0HhA2hte(yz;e*Iu0dEs98fE`Tk5 z+utodxH+fbtBt@3ELsFEr8w7i3{!RQK??*Nb^NXs&r-s&O|dFNvTSKP(O*8VOAs9L zx`wO7Lz})yJiOfCs$dDQY5*d9H~=WXO@LLPC%~$etP%gh0#>c>aGQv~Bcxp=?ZN*- zt?%W7t6bqYg?I&EuA&E>=!9%`m2P;44@NYRoYNDXs@lnDYAu!Gc2p+Vr% zA1OS$l}1SVRCkFMVYzG}4r@cFeZ8yCHc3EW4aTDM1obx}a(H~*g<{&YeY3ix%$=G` zh*8PG(uR{7tkx7l&5A=vN~af!>u@^O6t$x0kF7)stiu2o;tO&i>K1IB(gu>&sv71C zskB&eZ6o5Z)+-4Qk~!=cv>ejfE5g|NafTbO{?#=*7AxIZqQt6 z-$4@C75`G}Dw2`s3`V5ALgP)V_bQCV14q)H7Sm|smb%kl zX(O_8p36#+=KAIwH+YtSMaGUM7$h%9*G64~9;gaFD!x*Oj6((NVS^|0FQUskQxn-- z#_C24<4Xi6Up!K-5etcp%Sn@X-AO*L@G6{=bjif4!4@mBDHK^on3?V*m+jhf!b$P9 zw)Qsnez{tIgRRW>T~=f*7AK*-nKb}zpT0mc#$hOA(lJ`<)Z3~MkO=HA78HJAn2hZVUvy&3Yn2?8Qy>+*;4sRCnK6a zWy0znf)18@Z2MWEFosJ9lI0ZGk^!!ZF7+%r1{mlYQ!+)V>f6-nEj%JZ_)&Hv6JGZE zy9%#7OdSGRw)~@_U1nMpo+&-8KMq&jycN0BxYaldQ*_V7ElI|}1#C;ddpo4I4x;Fm z$M0M7Hwh;Qihxx+nEswC8Da`v+TX5CscQ2`!z^`!<*kG1$xuZv2{}`thfhW;?zC^ zOUm~eUbhrxxEmK$Uu=LAs}-@}Av+%sExa!(PiYBzR=bZqD`|~+ELltQy_V+=Yit-_ z0;_0kHlp!H>(MQy{5wc0G~vo}uBJYojMmblIJF@UMAakEom#LW45tfj67#O_xpgjr<#%#M!mU+f|ZI-kg8iiJtC;}i{U zc+s`5ODQ2Me8V|(A?QU#KsS3G=gM^Ik4%I8omMQ5GwEX%g?`l-rxvj`qc$S*NehS& z5bUMpF?lp9{K5KC$7|M>lhPd+8Gc4(TqAp&w{%{KTQq9^Lm7YsKkef5CvCRNby7gs z|E~CsE(=%YXu=IrbFt3F-q45#onZttG)Ow#!-%wa71D%HRH{QZ-Vl6runL@N2Tg$| zaqZP{A@`2u;Uzbx^It+r!ZuZD$>wW{ehaTehdx^iZWm#-DH3xDG`X4wDos3#viA=dpOy=2 z(5ITwGqu>WSi&wfmKy4>@QYTfYzfZ5Qf<*KEKI-ZsJ~kORd@!!d6o~b`|gkvG#^Zo z9;Pppb15dv>&2mlhgIm$=X3>4lj=Iqd+5Bo63(mOI0No@;?GxB~g&`jr@PN>xZOBXHSG)*7MttNP?xVQC&EK57 zSi<4&O{frkxh&>lr%A1cR0f{z^wToR7Q&Vmv18}p%VL~+hnjB?vK59E5zjMQc!(Qy zezcjNIp3>PM75R2pF}Qoq>G_%tx^wi&*zTpq(!>}SL1MMd__y{a2UHP#bZabm7R}DMV`4J0E(58$?BJOpq=z50; zCt}dA{=$I+*}OGas1)-s`sd459Csen+Zt<>ma(zc5Pg=qu4@W=j{Pw;PONACaj)xv zEFwAUW*RrFA;%jQ0?Wsoa;?l`8jhZWzK;)HhlmX0k{n8Tg zg4PQ!J!@C-N?r8K#EVM=uO(~*^O`kVRerj>siUE ziCmc_(C%E>gD6*kSXCQN>OMySr$f1NdK`fn6}Y6#az$>B zFV2&_EuCC@;3Mg@FMKW$J6nWRUQsuLoh`Jh)1cAAhfZZ{;S(z~%Lp*x!(m%=>UqXo zc!1U2Yxbk(X+OP#)}6urmQ@E_HcqIVWu!-$Jqz{iYD-_19y;GH?T+Azw){l!^SdVW z3SfjL-Ac*$3Ld(ZEN4?3@ZH7x?DI*DD(tmz$>r|}zbT^RO2n*rLY~~M?C@6M4u`i@ z)DeeC1-n8VCWUC)WN-mveDL~}evnE(?2z{#tN6Wa_aywg3SY7Dg77rgx3nU%1O2q&1{M4OT#_DE za<{}n+=@tV5Ln_Ia}gF z=YkMFTSyus${-M4>q}_ueS&3)3UV=_-RQcG8 z;77`4|6RFTxk#Vpx(3b0&N0?A*{bAp&v>KMzV2uQ$#2AY z26b$6lO_)!_a2+HIllH3Eav#J@mq~=5ErD;IZU1_7ZH#mp=J>c_*LpYfz^2Weo<*cPHzWFNmmlgPRwhM2Tj^UpHP3;l_vxG;)v0;u6Xs{&Y(zP!}pb z4^9oRWYI3d8QJ)qQx`soQ^wt?$sEPIck?_+nhf8|M*MBf1#OI8n}X{)M_@sy`BvwR z!q^DrAGIEGo$w8|2C_J5q{)!u)~e-N5$@eS3dBewY=kB$&IEUPNpS7ssorBlivP5C zw6|`Kw2#u?mQ;HSo|qpslN)(1lg2GZK2zm!jXodxt5EY2ST1Ytuqk{PX$uK?q)o1W zC71L}PNmXpt7NP0vR+A010omW3>8D9&V2o;_Q$^G@PXT>;oshiBTTJwD0u1BBX0uUQ=*_6^!|p51e-F=mHU< zQ>z2GIxaV%(Ft1g(!#he0-YMSktrp{*s`rJ+Opxa5r2}Alyi_=HSuMY}Ef7E>sA#uD}t}e*;i1M)!n!B~Wcf)x* zu1m^mZ;zT3#~{1f>cW@6)v)}tnxf-lz3j&!)dxKed5@vMO6PnGEW>=%-`$Zb&Ymtk zABT6H9EyIZ z`&)6Jfq;*uqqilso%0HGT{PhnHT^zsal?l#*sUr?$)c6*rFbDgF)-+EeHF41HGm~K zzq|hwJRI?^pQ0c!GE(!j9FEX2$@{w`iRS{3#SO6QpDcT?u-n*gC#45Xr=&aC9uUW6@LR6!UY8=} z-uu0@Cp|suD=Xn64^%qf({>d;z#j>pi1dHB3ZEK$%tL>=aTC^+Lzq45YE-N%>_4zP z?Z6uemn)p^L~HT&D^l$7^7U{n_#jC7SYL|VcT73a!_D+17md2{NOe{0E!cJ@V>4Xv zv$|UkQe)K?QIG=GXI4|~Q* zaWF1M%tEz4ba|nM;?Fj`gr}RfPt=0fG9C%6Z{2sp>%t!iZ2Sx*8Nd|$R2-cM9MI^e zBP8P;df}Jso*wkj-sM%W)Y?*B`!>rmNG?uxd7Nkc%%OUm3QwXTsEPQgfhS3h8z(j! zuE+?53NLJUMH`3LC0bjH*wR(RtoCO2B2A@Uc(n+7pg-N_?_Uh6tya<^V548Lx4Rb! z3c#bcqx>vht&-mYI+cxl!5N0MF!N}mYB0fBy& z2AAd4DkPP?oVIN=9+~H&NHrn2Vcq2sSe`ch*y+jVxbdQq$ImTNaiArWA=QAv!WwWN zZ3v&tbDj>n&&=pVszh$vd7Sl}n81;2@3C{Qn+8FR06`&v$)3t)OiF~2z#UI)T6IIp zFc3C=jD`$?AJO3{8j3og_>{U=v$aLstLYuLjx|c)aBb?-Lms&-B1+UAu3q=bpKr6In-2M3;&oqYESI)+CG{X*!Cq^& zJxbwyCL;0Pmh)@D1-{}-bEj9#bTM|kMF?mMQ$|~z)F;FiG8L=!l97Jo;ZRD*YZnks zZfbaWZx|@}sP!eH)G$|7eAR_V(5po_=_^!@)%;Zg&P#WbsWPH(J9(=F)p-S|5nGa` z^l1yU=3a`MdDh-r)brm)qGu?Sg~6BpLaH+6e_sv(&mlpSKxMrw^gKz5A)kXqI+<(( zL`2=mV?qcbMJ=k)&^dfXUttCpb^u?v#0zk@&*itLio|`+?`W5zvgSG5MT11eU|R%8 zY9Dx0c%tDEst1ofyxC@A$&wk*%ZQ*VIO+Hr5s_ol2|BjDuTZ3mR^jrRwptt#`T1kd zB0zOXPf(h0Y8C3Qpgj29-1mxvQ!QFlbKxmCZI<^Mse4jwe9EP9M|e4Vz;YTSjq`wR ztT6O5L0CX21rdfaB6U-nyBHb_D2tALro1-1p?KJUulnDX75k*P&t3gU{zCmP6-IGY z1$1|WXDsFp@Li=G=0TAR9c-mhPoBCXu64kKVZaJ50pTNRkQ~W^uK@NA(j1>kW02KCf7Sd5?;4(>MfBgi-FX@NZyy)+jR4{4 zzl?8O7yec^E{!jhXC|_~(rkx{?6Xv4^BiAlY%XZQnB$4Cwz9x{Sp5@~F^ewn?w?4_ z5EF5WoQ*^%q6MQR1vAhBuYfvQy0_nmhtK{vKJ!3^UPm8=y$Q5Y2Q6N09!-&8SM~oiD)@e)4wYlE?J2$Om&F=yWnEAwAVkZ zK-Ne?36GhQ?3ey#N|$1OSsA;1=s;A#r`5w()W*sAuPLc|nAH4o29!xJ6`b1IvBL1P zSUl1Jc0v0Ib+oygY~KQp!s@!aR|1^cBN5@BzsU7=rNAi@)^y1ipRUkw_8vJ!!>L8U z%UpL?;Ux5*Oh)3fNk)@YdM*40 z#0_{I;v~uC3@3Gai^mM3PEZInN1Z8Jgq~7cg)`--tfWuKXFbjbURD=w>ta)l%a*Zd zP3~nVb$az(h?)YwHmmahZv6%PPr%E^G38Q042ORZX(7z_D2Qj=^8$we@!W!E91-9; zxX=anO&Dekm2m;Eu?~D|^MkAK#kN^vr#t{(8UIqzN2KL_;bI@K=6d(R-|%MWMjQ&e zQG=P<<1#%7gxyd%0vNGoMPVa$YSn;Y#&Q^PeC+V`W6hfIQhH_!os99(GcWJ;jzH+V zu4%oiHBReYUGhZhT>{TGN?+9VuKD$dKfg|9i@9vc*gCt)he8T&xb=irxVet6!p&cf z)^OW=6>hj$$@gp^K~C*ID!!rM2CL*%e5(gH>9?rlZ2ed6l3<joXsc_mw|KIBojP7DiHF5){s@T(J^yk98U9$0E7Dd&{OC zufMdh!5Pn0eDF-`XlqMbTU%>uTO`vGYH4d}X~Q0Nb6+7{DQB%vTMJ)G;9@;57f*8^ zDQKZcs$!M1pBSHa!L2&tyrR07zyTMluWdPQCU`lajh3rhy?7IH<4vm7Jf2WLi+yMc1PV z22oLGa^t!y3E@(XNH~HglVk!}LnfO91$WnF)xSS?msQri+#3ZI6$NipRJ`%V8*jYv z#%sl04gdG5UiDGaGnsG*m}x#tX1-NjUH$6StM^{Ls!EYETR9i+nY!X(6fSp3w*>L3 zyc9NK7m$%2Wq71!27e357eSABBb;2CLJx1O?N*7~os<$no(MXW$Lv6DMh=j(c+3fG z-O+n^gN;9=FEo@DG5K0l&-;tB?qTBSN~^A>v=W0qI#T*g&qc`=+2lJ`sGvSd{m7Tiqeh2$XvGJ*_jIaL|Bh}FHH5C`leVuD+JqJEJ z(Tc+2?V+BtYcUEZpFQ7g(=Qff2RQ)o-1Hkg!UFP+WQ!WN&csYNynFOQ&>E06Y);{f zlhJ1Is>r~ap4ds(vSuGq)19&D;xn<29mFSdKBEJ2hH^d|J>oDRo84Eyg+ktw?>a9D z{l}&c?YHX49o7%Wk3I|rcAu4dy+%)@ab3_UR?h7$Tc759G%0af5>CEu2GLb2=(RmJ zcM&7Bx8G&6s62DObFDFV`kn0O*!bwk zcR2098l7lObToHZH6=S}^QA17R*H3mf>(Pk;?q*e(IZNlVw_I2KFH~piR9?Sx3Y2P z7L0oKEw;Xt?RxZKMKE&$S4nw^Sg}ImK7ZdjtFpZz4kxqMVt7T$z}90AbIN+H)F}a` znTY-_<^@VhrFnq~iMh=!bLLw1b{fw15!&wpKW1xxoIdNWF zad}M4JR!S9hfZjQ#e%JkNvpUzgI3vd8zT#=G^5$+yp=C!iuQ5dOCZr$8P3Pp@8!do zcK5M21P8GvOemN6DXdS)QS9?-v`dZCe9}SZ{-GxJib7^%vlWHuCR)YY+5NCg?uVis zecm^HN9^f-FLW+=MhigdgkrdWdrDoK`PlECS?RamJHa*EGCG&T84tvJ*PhMJANyq{oS(l!^j%o+nCXs~iZr*|7VoMTb z!^#rnC1s^$iL#QirXrZgEQhs*PCp|0j!4d~Z*EOA;__lVcr(@2Z2P*n`-TXN9ZYz2 zFg}b?xI}n$z)oZYwJFR=DhSNUZ4=mU{VS1IkjgGdI`o%T?Ab-p91gUVi+F-|U<`@n z%)UYh?NOqikVE$Qq)fWz=+|TV@omV7dO7-aOFt2p&;b1xw!ANmmKR~~Eh#Q*g1LCV z{wub7OOcGWwz9Qhn?3d+3E4=!(~*3ct=g^dCJ8@DO26g9YAW5vfkYQF4=D#@LOpzz zl4prt*(G+EJfm1>F26v?a4`p3Xf#D*s1QT{_I)M%j0jg2f3d1m0fh8OX)9y-Ugr1@gC#-arBSp}=x3kTorZpsnrF`P3T%|uV*eO9d4ti#rQY*)*e1kE)UJ)j= z(~UPIp9LLaDf%MN0b@8^LWqZMfW=ls0Ud1N#9{2k0d+-jKsz{L4n6dVr<=H!f;#+m z*(Nhf7*)37E_;-Q2~z~zGU@CONnQ*3i1BSG@<}@SR5_i)84|3bk*B=CkKddQ2aouVkQ4Z{Q!fe@|y@0kfO-B&ptt}@=FZI4h>NJtRwvw$eiQ-V!>TK>51BBhZWzp!JoXntP z_}DEmTkqyBI@Zs9rolY#*JESZ`+kypourlX{_pi;9a}%N=~L1J`tYDKXF@64?kk3Hd0NRsC~4BsXHH2-v6Ssgy%dujX?_&5 zLxH-PF0%a?GQFH}KLbDYMtV{ID*-K*Nz7OYx7X}Ag6YRjv?`n1n_80A$kZiZTWWQH z=<^Cu4{ypVCV#-(};vxx7i_U6W!sT-QX$k0QdLanC1TuSIWJjN;-anQoxvu@QV| zj&7OP(-FUwksP=6J)~Pzyt5NJP;&wfkLjfw>I(TT_^Yv;`ehkV3@*lBRV}dk%Nh}f zSsq+<*vPwQ54OHayFL}QD~e>yAj$X?kkER2t}}ro^ytlLlqOOnGwYFLj|zGfll%fw z(Rc`aHL}vGZA-Ry=Jr!dk^69t1*4PgKf``F3S$i*ewT$FWBhf)oO)UGd!ns&Ws}uA zV5W1f$^Ei{#!K*mIDB?&bL-5;Q(Me5RS;#Zjq@bkf-%?@ z`$RHGuN|R>rS*i!bb?(O{OL3`(cUqqgLh3}v+eCQ62cuccqXbHuaa!>duLzLy{P=2 zMNK~M$pJNE@wAXBRkpsNAMGzip=QbPp?Vw(-N%~ zQ>%L$V=-!_(yLMU1Kf58n8};Wx3bSrpdiaY--q>E!8&_R3z@8-<(~bSaLP^8JTwzZ|2B6)P#Kh!vF_ z7LD~f5;2J-=p^=4j1rlEd&nN+bgFDTE#BH0pPA^fkL0^4ykxq?VlXno<=Fq6ZX=Q~ zdEk{&y-*8x(IwCL zLKew>5H7XeW@QQb2ssul5&?={`%2I!laA5jzudsf@`PgjhO;L zQs`95s*q@RdA{te zt#A)3d}Z*7;ohFi27&K(6rUXOAgw&*43lxe3x%)a7AVeUm-akt>gfqW4vTo}l9YJs z+9F8@k^-*1O(@0RbAHdJ#v(`ow(F!Agp2{vqTaklSiGk!!x$m zMn78+tt(L|bF{A0%X&ti4E-#}KhU|vJ`y?pVQN=t6QB5ic<=7yk2Jn)yR}X`LZe8x zphw6Z5$^=l;dIH+uiP8R*>b0c)81m|X#d5PJAy*#B2c~a7!|Y*MbIt7_|-f3hxR{` z$1QH;VEkn-AJ@~kZu z%&s8%ltxP$N@AtMN{it{@)-Od2IrIGzTc_*1Dh@2j@7-yt`O%MNOl*<=bb_RWOJZ> zX7K~7^qHNujqENk;_Gqja^l)jPG#IWPt%sHD#_-^AMfrGf@Z?Lb)5j@$Y_^`qcb_D zVHT|1WBmfw#-~+=gx(|MwL>pk9(neHbT-lA%PqE8U+l>;f*owD`uRH=O2kN)qf;xN zN@t3-%uj+&x&D_q&PDV;hh90p%E(s@{M>5SxF^f0oLmRu*nCCw%Jsu6`=L#*TtD>d zhYezfGKxFisrYI;t=iop{YtX;gnZA*tu*~GExmI6(9;jo(Mg>1)XnMhy+&`B>6FtO zaIduV_F!6i<@#U7{wMe<*Z-P5bYiP{OX`IlT1xXRE`6cYs%&UTbjX`B?Ih~ESZI@S z0Oz;kppotAL|L=}bO*OTt5k}k$q{buP&=+l@SQ_9TaL+e^Ph+4={)Ez?$?5FMz)W) zr+;qC$h>XlFWs>nQ|^}z-E#cpk^hoDA^M@q{*n9PP9ndgXt8fc+}r06$Z{(h&GA(x zz7qW}$5+|e)egOKeC6RQ+Ith!79IpT z1Z>F)vu<{DYY+7Yd8aigQhN*Hp6!kJSwtq=eZDyL&?hmT6%`dR{Swx%G082xcXfMw zCTwpZy}kvL@~*J-t(+N@gVjB28+NuxvJ|>Sdq%gC9YeRBW(HcOUyRn5rtn=7HXSeW zVZ0qgz^!*NcQ=Kf$xGv`Hx>O=Y?GKZ-AZ>1<83|Nd^gl|x#oLDH#k-v#k(xutJ{&^ zNX(%t)h+3Fh=S^`j=JJO?A0w<$9}lu8eHQYrw5P(zYOK$op^mXM`BI~a*kvydl&0S zgBD+`mT|ETc~`{i0GHUW1MQh^GiG=JS$@E{#YS+cA55(8Xl`td=SD7}>!i>v+Ecpi zAi=xSj9e_-#pb_Z^|aof^hfADy#Gv!x6OhbAFYzsL`O*neAvAQ!WNmXDC;|Xom0l{ zV(+!g*CF9Dq%;S4igp(DE8*e}d$+fK)pO!47M=%L*%)tw<38+ag0!P*(u#>g<9NIj zTW)w5oF6Y%Y#qwJ!=V9(K|1x`R7Df(6Duxi6!j@1{{Ry@C~pM4aJ%^txZS*5AA1*x zdI*XW3&$YrS=7U|>`~gwISb`kTH*v$6~Tz^Q=II#1KGqBYX9|*zV9j1{X6iU*mj~l z=~(Sl{(=+RVRLtObn>p*qW=Az!f|`g`!cBk4KDMsdxf%nVE8cK1F*?o??}6%JQ+4;|9D#9-F`R8}j7wPSihzUw!ItO?A8& zJMa}42a5M-swiUn0n|51aqN@gXC&IKW1Bl>HM{!IR(hX&nt^Hd{D@*$Vu8OzM}zgh z_%mZi6K7ge0g{^UYXaMAtYLVE@s%xfEJ<-#3HnqFi*XSgYhv?OMdDmQPM?XbXT)tb z9og87=ijA}%ieFvv(_4=kYH2PF4%EM#o|Cs*-z(jQtd<=a0ogT7sa@yRmAtFJSTlB<3D(<_tbE`>g&Q8q3zjSN0O zFTwGU(Z?E}tZ#1F76+VCutHHxI&_@2BH8(dMSK3(miKW|*y)dlPLq>!+FQZSZtb*O zW8-(RD`sLXkG^Ho4SOCkmt*G;f5G$@I)ug9c;D5|n57q4^h;Y0i#D-yWF5!i;^NHGf+nFeP#v{8v9sE7-wI%7_;|)H%+S z?F-L5l)jrBy8I*MbZRTNDscLQ8~F6T*+kf9^R~=eYwy7(ZJH{av39!Tj+M4ZO}j=6 zHCnqJi@BeyAvVl=ei&=V#?bSo`)tjj;p*M zxDWO!wc`%FMC@^R1mok>83a}>1)q&qX;E2ec}aOuSyO3oc}ZDQS)!~I=dyXdYCC!O zp-(pzY~e)w@>wmcG;j{`f|y0X$OXn1#0NJ2O8vBgx1J+`s9}Wwf-RCL0)bDFlwkZv znwd;NXV}k}M}E+;0r1K$x=*RCVl(rs)7B*0J89k)+$I&y6fV5tVeDN19_Gy9LM5P& zl;b8`&P)o61H~D!ur&$4x=USRy?g zeYQsIbzA$2ekuHiO^GIMciQ8f!*}cq7}(%nT0iXxZMH|W9t!_mrLPKl3H~Z6Yu6H1^83e%xjkUZsoHo`)0|f6mDyS^vEk^qq91I5dC>Dids!@N zG$q!?Ezje{Q5J7gRNTb=y6Dv0nSc>*UVXBCCM*+(&#Uc>Gxf^LE&d*h9`>#tsaD&G zbR|Lo&E)Q|<+q?4bSe??%==euoYAcY!gE|+uO2u!yw(w4YhhaoDPeT7%~+Zt#>%hV zVb-11+tzbL{bAh})}MOD7S~@gg|cv22)#Cz72if1n)td-F&^0Uhi0)xCEFVk)}%SJ z>v{Nqr=NqJL$8%Bw|bk#qyF>p!PQRPT0Gv#651u#F2J$#kpx5~oSPxV5Qi3;&5>>D^iY(iAnbVy?^ zr}S6YZH3v7vYe|a0!LB`9kz5R;ND2b;OFn{AGcJ`X_V1A7Tt#CMdXpdZ(hWv5y)1- zEIvdM06)aQ7uPbFI>_K1(`oQ!W ztsm!fNu^JPTV8IVry+Z~WaCp2gGCyy@uQ2)HO?TIr5qlXW*n*T&}CN>xT5Fy6T!tF zqW?ftxA4e$`wuu^Ew(1BvNhh4oS7nOdMt8#z$@8{T_K{f=|eWJWRk+7{|NdNMg8^6 zn%W|mZ`fu6MvO;235eXWdL?O*i3-6#G`(7H%i-A_b6RIwBgc-e;i{R(PIKJV*(x)F zMDk2p7R=&E4xc~{?!!(K=5Nc>#)=q=mx{9JGB((V{&HG#GIh10Y=37QQL|W}OchVZ z?{-)UlY`75@3%U|86Sp~7O^*hc_qp^|6gWj2W<(LF4i^W^F)B0-d^gm|%XPn!2agQ)Wp;JEp`5 zc_wh(M`+c$6_hTN9Tiu$#Y7*4%5+;&o|ykj&YO{%X`@U2akG9S8}?xl-| zceh-zl66n7%CZx!y>#~jL8tQ4?&-93{3G;FnM@u{M)C&iNKQg3IsL4@frnp!`!}_p zZCifwcC?+EiyZni(Y|R#F&_Eo_)9yCJ62MXU*Wl+>dm7A~&#(yA?R&DOTYPfgU%qkv)y7D6;9mtPdvJLjW^^A%@w`A))=6I@|g)_gs zeU-D|vog4lLS^NA{u92E{{iXcp6+yQhT$)n(#DOF;eaQ~d!>>`hI?6R3uXf(mIAXx z%$Q{M&ZH_!uJKLqQ)67(pPuoPn?By@V2MP2?``Ypyk})I@nPR$`x=;PpGN0%kJF9A zXuhXR1gfTMXXicK`=3bfvsM0UPqWLKP4>hPO1A8yb=uu$rYu`}@!8a9w1NDN&UhsE z3k)lb)4b}|30^OgWI+g<3%VDOqQ47%E-r^iNbKyk9WKAu)aK53dW)RzMus(}-EO#- zfXe_D3@mr{tlmfTSf}N(G|a{Ofz`*yP4Xj4@~pPV0;A75y}5IiRXaQ0-U-3*Y1w=$ zry{;JHun*4Y$_sySg`%ir3o$BTt3q#P;c!_#Ai#6 zM}IP9qepBbW&&Bz*pi5W2!n}D_Pq$clOmDUSqPp`iqX$r?#gs=adx?h>ks+T#@;x-& z;j1ziUy;t{bUETHTj9-kdU_U&B+I9g93L^kosKSBBA>PwAH_4vr=IZ9RtqGVUQG=^ zDW*uX&#cC|Z8UhXUh4E1(S^4Co&n5`Bz@W?hq>dow~y~KT}pe-4`fV#xAY#FE@e5o zuzp1Qli2;Jl|sS-wUEeQZC) zPDdXKA%dL}gf#*C>e(tYC{g@-F)Sj0z+;xD1ip*ND_fP`u7s88+SKIRAE!3AcjAWm zuGw*aBQ4tqhFxu}6RTKC5@o~68q12xOUsLk>iO7?pJ;C+T4>f~Li6nUIUW9Ihk)58 zY%%}E0MrAw-+~E0i;MNYbaPK``BY5%ofb#=I&+u@XCuAm{cAhhA#kSyrd5*LETV50 z^AFi{isk6!8=ppc07x6gKd=muuRF2hd0qV}6F)g_kRFPjV%ZU$(G`-#77g9FJTmU? z#x2$K;Y;>Brl41B813^w>k54PU)?xY_uGb3Gm@KVN76=&U-8Bmlg7mrY#9nV`x!q0 zUD^|H91YvP6gGGpJC%QBQr4P0(nTPyOl{j~aa;Z2%$8Ask~Jp!4fpuWdUWSu6m%)B zr+tG<#KyQnUe9T5NY1uuN7Z@9DewiccsKjlnXQhoB*u3vQh6<(Jzd3SC(@nR$lMb4 z{6wsY$Ad&;2`)G6`RO@r(9EOavzzhtoJmV;X#dH|p1)wq8`*Er-879{glXV1F^$bYBUzJ`oag*`}pzG zt(xTNz?8+-s2tU0%Cd7w}r{z}+gho>fPESd&O_sp}#YR=8G1#u9ESyDhOqP9u9@A?o(r@r4 z+SjgkQTFw2;ivq4`;`WQi+b0`>A+vHuY~YlO-?k-YE8n**Ll|1*4E@{d@m7L_UR5o z@%UV}$*K_{>$l@zL1NLpFM*>bWxbDRLyX7&+VmQIyfi#`h_l6JAso?_Nn`SwKE5-V z()^30F-bGwu(2S^?->>BID&4?LYuEjhsF3hFIrt~>mQTHj2uzsJon>Bg(Au3GwG!lqkE6U9H4)^knH=C4`pb2>U_$2;I` zQ1`-gtN8FD+h`QV()R3%SyUTnqot(l?L?=(sx!11WI>W##?stH0Ys=Ga zY$&(hCipCx;M)W^dYhYmiQ3cSZMpqkUE@%_I7h1(HXPv>jYDp_jRNblqZ4*@wyK+F zLcDW}#biFSrd+eGUe3wrTJZ~2krV~*JfEx~J9{A8JDBxH;MggVOcDnRi}V@nND@Rkw`xL6s_RnJ`7<#-F89ey&wOTXQJa|<}bvqx^=4gu171G z-(p3X#>uJ8^$;o34BM8ud?3BTW)^fRE$923iQOU`JvBKyk+5nfjI2%T0JW#;dp_lt zeg?N2pO&b1eIvzZ@?$Mg2$LLk>g_dBneiY-c3bz^mQ{DWs;NttMZIBPIqo4WZ(tqR zu^W>~Sn||iK|@qnBW5+v2D@>DI3C^OG4$74Z9Ox4VQ=5!-H?cR?Yi>|%j@r8b3`_; zIJ8%;N_6Q_Vn+yYxT1OMYF}Ed>CcDR+AceM)VF=(nYi7d2b{4c=C`=DPxJLdCr_$M zc3L8?)phn28?j)@lVYoJX&pO!4I-08XtlHZ8N^`oz-oEcAm$0DrUSJF!^3(!q+>?g z7uH^J{{VODim+h22r}=W44>#AIED$$Io6Y6z6S;gc~D+K--s>(&(Vjo3j}p=MJGoe z&lzWePaxWk&*36N{1V5V0kD%C8OJq= zOo7EM9+-{{3{7FR!&2Ay$?X!0OYuHa6Ri->T?3(^mF*32IA|ACb{4$U8@)`9+_T#Y z7TGhoC*oIjGJ5$&(n=Gc-$wkbIQI?sjk%m``*><|1K3u4!ydL+gfSN~-1cTLVbXzt z=}!UIr`@PF|n)gl{dbsVW0R4s5o5dUWx8fo^um>)Z zb3><2Vhb+3K0A-PY5VN5RW~zf3sSu0x1mU7THa~Xr=+-~siYD9#Yz$-6ibL?8alNO z)dh4_k4Vm*4d=Yl7NaTiaa&2IOcP1jC{6;nJAbwYpd5_2x4A(I%#g?|>bax(15uFHl#wqfU4-{fc%xML{oXHYCwQ~P_Ri9Fst zM0-viuoM_QYyxMbPo^mZnLc8FJzFpD5q+|iM7y5ho0d+rZYZmMX7f?+p%Zxh`M5^w z3wlPU?|y%SRj`~sV!p0N{jC?#XN&l!_w+NtN8nar{_mdkv+q8gguMaB{EC?Y*6(t3 z8tU;|3Oz~a0m342=rl6kF|T%fZ;yKubQ1jzW>vUf%9h_SN05McxAqi+#MT17d(s>1 zTDnSYd!(eiECxFimBPmTKq1aY8LV2HI@?huWij0?nQgMZO}=rkM|_qr^+ex>(cfqM z-{>RO;GZVAkYB{#?MI(ovtL2<5szmtrTvK5cr~##AuV2J zQAglz-1cY9NefA`56=^Qsz(b+oGDxX2tL6#LhdvQdyLLYsKJ|0i(w=rhzK-uG- zj}vrC#O-klyBo>p9Gzr-vgs7#DLH;3dxPdbY<`LoKNa(HQMN0czCvBh9{83nymXh5Pe3KHuGEj8#Ce%)nZK7- z-)+W9r$2!dm-wnS6G!#9^X*#Jt`l!1RSe28bQx31|6DfkIi@p8SuGv4J+&z9x5O()NI zm!nf!I(f#sotI8@NDWvZY~m#CX2$Y_oMX@UEH>!Q$>O6Y*!(rjEw6T7x_w*JO3PoK z@o(p)(@w`RLV!3ev zR;8y6KUU=V4`DySYSCT7e)`t@Khpe%O()MhQTOufyFNjimY;Hdvh;^(p&uh1f9)cE zG9mQ8b^mo5y7}s7bvt9|#Ezj{I(q=(nNsC`M!NMb4NayS1P}Vef8nW_u!(O+CVtz2 zbdv_nZ`1Cy>E+Qca`d9Goz(b3;;$l)-ISwOT6&3i%p8CDEjP5|!b(b`{G7sQ35&#l zU~!5UA33qksvTEWT3TjR9h(y0yB&8Gf_=9z6gcB<%))23#V72gS!QVWyI6S<+b5@l z&Z{jNCg{=}PmXWiE&{zsUY3zDnm3CRthy2Cw7;2W5wCrSM>mc{F;CeLg@`7&5)`ik zR3iRqZXKVbgBsZefyhGasMlioG#$Qu5VkqnJ0yX!Mqd<-VISS+`kfT730yzrgD3GH-jsiIfOthaC zZy7zVPB~>}OVjBi+7t241R9r#xt)l5ulZ3$nQxi!e~mWZ%KI<;KdTW=I%-TznLMh( zo0pY0x; zE~O_rYub|ym5q&X@_on1(c{F8s-D*;KcE@nH~nSxsi8>8DXlHZhEvDSf!7q-Jn7@) zRE5(=+|TKh{{GrT=j4_SQ8fGODIZ=uV>&P2lf`MCY0a&0zF+N}_NI74!t)IG52A0) zta%;H4e^%h#A(e9i5j3)qO}uFa80(>&S`5)ws(qqDF4`2a0a$wPMfwOhxae#pOpCN z9GJsv6!(ps+nH$Xfa1MxuPB%w$TFg(xvf4KZ*Q!Ht;t(wI%QIMbYe>_)Y1EH-t-A@ z;Ei)He#3Ne!phhVD#n!s)2FmGLa~%KKHk;_H4ycr@zybw%>`e#gs zW)(q39r-LJF ziPA`(vii7K#!2S#)|D=k&?%RZ5af!NVV!i&vZ81Q9|5f5u7{W8NbhO!=FX9)fxzsT z+&nvxoa3e!wFei*Y{YEstZj(5B)se;9xM2BR69tndN$J4HlN|j>?v=2d~Wk>PqMh5 zKW}V9vbDL%!^xieM>Eq$`JCnAqAnIqApC%pT8-IRfCyYMztlr`S>u=wmCY_O$m%!*Trnxae zKiO{_3=}X3gbWTFOMC8Ex?Q|@99P|j+ zn3$3-Zlu4S`gyCya(M2Sg$v~H+@B`ht{*mp&-3l{$<1&ys5gVB{50wI{k3fA3+t7l z6uh4|yiX$4pQn!jEk@S1`1|qk&6j;#@|UN}UCNQ8Je^gJIsn#DPOpy7j?Z+_Ku(ug z%t`lWAt#;cM9#xrWpj3XQhc^+SgNj>J{n?^-A?*^(wVdU8c@cuTg)YE?0l1UaJPx z>(mzm*Q-_Pjp~opo75B3o7D#bx2SRTR`nG1HZ`HHQqNFtS6>d?p`NMUss3DDtxi_& zQ3L9I>M-?w)lk={`RYUJ0QC`dAN6t7RM)Eg)F;#t>XYhd^%=EBU8mNm&#SHKi)x$t zidwI(SEs0NsG9ngdZhZc8d5i?5%oQFZ}kK92kOV_Zt6z0zxs(SArGdZ{)$Pd>joQKLP1;fFt=b;yZQ3Apl{QnoT{}j- zQ#)2&ttsjQ+TrRW+Ft78+9B!_+DP?DZJhd)R;E6$wW}{{v(#6#pQ!6KReeW0Lj6Gd zzWT9tsQQUEO8rzDuYRVLt6ymy>Ni@m+NGVUo~i%Xx>yfHFVXX(i}gr!iLOR3)&Cd0 zO#d``xqfkUslGURg??%DO8xTaRr(dtW%?V@tM#{{*XZv=m+SXLSLk0yuhlP!UZ*dK zUawyky+L0Zy-~k1dXs)t^k)6)=t_Ng^cMZv=&kzo(cAPJqpS3rqqpm~MDNgVi{7c< z9$l^98NExtD|)wnZ}cAh{^-5>n&^G{L(%*7hocYZk3`q#k47KVAB#SuKOTKpe=_=r z{!H{yeO>f1{l)0x`YX}3`m50=^!3pv_1B_L>90qh*58aiqrV+}R^JePPJcJLPJb`@ zy#9Xl1^t8Qi~5Jrm-LULFYBL0U(x>_eO3QQbXhRpxGnetw*==^TA=p3&A6e^}*rBYr#t6^%}4J2=XCCpg;J5FBH?8ysuA7d*yzKX|P1L2#V$VQ{?hQE-Csad4us zF<4`K5hvp&>H3w%@%mN9 z3HmbQMEx4$WPQ1DioU|wYv8p;K)=q=^y>{(zroP;8;ziTlVRvL8zFtAk*D8c^wDoM z!uoASUwxI4uis&q`klsZ`f6i>ewPu|?>1ukJ;o^gUZX_6&nVUJH>&jqjADI_F;aif zsL&rWhUpI*N9vClKhz&Jj?y19exyHc{8(RW9IZcLOw^w=hU-rmmHN|0mHvz|LVwmM z)1Nbn^mWEK{dwb9{RN|3f6*ADzhsQpUpB_-uNb5CSB+!z^~T})Yeql)b)&!jhA~)w z)7Vpg%lMxDwsD~TjDX_R_yJcGouCD5v_M-LI$ygYbd`2h=mPDU(ErnxhrVZB z8(OAa7rI)zK6H(CLuk2nW9T96rqDv|=FlVB%Fv_QEun|CTSF_f+d_|NcZGhh-5t76 zyC?Jq?cUHIwfjPU((VuaS$iP#7i~@GBJIJ@U$uuqf72cg{at$`^bhUP&_A`uLjTep z5B*zP8(O425xQ7=GPGEGIy3kVX`Op>GYoTkk*F)E7Z-lPb z-VEKKy%oAqdpmTK_D<+#Z9{0K_HO7F?Y+>g+WVo~v=2h7v=2kKYafN~&^`{`scj6c z);CB=lyHYHF=8$Ezesz zXhq(#L96l_3vSPwQE*3IqTtTFLkm{tl@#2Sw_m~CdHWaKmlrBnlXq0XgLxwg9?g4t z;A44D4tzW>Uhr(*J_Rr2omKE+-q{5&yrQ2k%t z!hv7s{eIv#c^3}s%KO8>^?mLye67!gg|GMNbKo0&@(+BoPvpS2`h*YM(C5Gd-|f@) z!1wwLD15(9zrqjtK0I~c4dH16Zw%KByeT|=;LYLV2d)eU2i_Lm z-C7ksc+ef;Lk8UwK4IX!;S&em7d~m={o#`bJ{T?-_)vI{!H*5bZLDVO#Av9h%9kb*1v9#pWp?{ekt zzLyr<)A!(ld;5k5-QV{V<)OX<3LfeEr$LYPT~hFP--ipI>YF#{*}jJqtm}Jr!3%xQ zDtM{yB?VviU0m>L{`al*`D=r(%HI(DD*xT!fAil9UK~-)OCkYtaYQqhM0E4gNYK12Vwjgl zLgvy)o_R&2k9lPzY+e=VYc7lAn^#97<~0%1TproYToLJKUK{CeUKiQjygssrc|&AR z^Tx>c%$p*6nKwtiZ?23CFmH+MZQdH$$Gk1_19MemU-S0Je&!vK{mnZg2bilPmU&lX zpm}$sz`Q3i$h4q2?ozq2{BJ!_3Db zhntT_jxg6oqUIBknE7O+$b2eNY(5<+F`tQ)n$Jec%;zHI=DJ9Q`Fv!U`9kDK^VP`F z=K9ER^R-B&`Ff{IUqz;y7n`xzC1z1< zu~{5jVwS`%HA`ccnPsud&GOh%vm$ndIV^Uid1UM=^M|oz=25Y$%^$_CF@GFeZXO+5 zVGfU7YgWdtGpl0PncIoF03~ zJU;fYc|z_1E&zo2Gf5E(_|BL4G{x6v;`oC;m+y52wy8f@4*Y{s<-q8Ow^Tz(Kn>Y1; z!@Rlwo94>?Z<)9Bf7`sZ|2yVw{WqAa`oC-5-v2%Gj{fhPclQ6lT;2ae^RE6MnRoa9 z*qj~PX#O?{m1-W>`U|f*e3J+{$H6J`~TPcs{dy5 z3Tw$8%dAyjq^~*U3t4*O|)XuI0*>l&+^ z+m%%QuWO=mUe_Gu*IiST-*in6{I=@?bwSsS%EGQwl;3x)30&CqNMQbEOZn60a^=sP zOO(HCu23%8T&DbWbCL45&BK(xZ!T8;u{oyvb91Tkugy{A%FTx;S8YC2S+;qoa`ooJ zlxsF0t}Netgt7wCu7!Np!F|`mJvTsEH^MzPL0LCL*(;&kTcEt#H~&b{6?sO^v6XV) zaumo>AV+~51#%R~Q6NWw90hU|$Wb6ifgA;L6v$B^M}Zs#aumo>AV+~51#%R~QD8?? zVEyLJn?J6ETELf&AE3XZd9BtT4T*4l{7d#{^T(SN<-iSn5AR<^=_BxO;?YMd|MpkB zZaJFc8^zx{H*fysFJYC@(aPpuVwr%?zq7dbVR+u^DrNMD5l31>Mo*Y>uoWvkyy)T1MP_>Y%Lzx(i?%AWLBJ!6uh&h4lEAU~A15Hj}z zd|yfvD>w$gZ&>=ou2J||Y4$riFehy0RrbaFV(rlwmV=iugTCjvFcCj4>V)^6N9h;S zUwqa-==*W_x7xGO|{mid@uzr+5%+lb! z2NJdiMT-XA_=#O#~ zq%EQ!OEBM5v)=`QDs#a3T9s)n&@0U$=LRdy=-Ec#m*$X4(}JWbvtJcF_@4V8dF*j~ z&U(6EEI32#bHeaF@Iovvz`iO!=6`tm6Xw1*N>~-;!*;4BY%yY^&Gl;F&#a+_!_OI% zb~HW{D(7GSYI8W=6NNYOyhdLI>AQr=D8;{w=c>(xYTyC$B6XCxNIe05)P;%Q#{yUd z;3NRY()W`v_g$_ZPz=`lYby6#_zwKl?+ngfjPD0%2(pfcX#=Jqb)j<68D<{#nF>lT zz)W!ONx)}VW)0z|aXcDm;e}#a3#GB(?rJj{NboeI|9O;_kN3e9h5!E`?Dq(`d2IMx zbId5S=6G}Xscv4w_FPN%upoEmp3&wCH89JS*@C=ZQ{D#nF6e3nrU_Cin8!ll0av;_ zNQ-L9V`4_2#aQZdClW6B2Wiko*rAx0wPiEp=Iyb7(kd~n5qa6dZq4ekl+xVwh`Q>E zWk2H1Ga8s6FxBS64V3mNmYtCg*ZJ}xw#QHus&FmB4~MqU=Z`msRGHCJObhtX>HA2V z8FWtt-ZR1MHw#|Kg0FK4pNKf41B#9j9@_td@|=%(u!|hWnti%Cd@_44tkY`Ba|7m? zg7UbD5$<&84=mGk_Hzak3-@qZeoptCh4-+>nnOmJ(GyIImy5I)&xcw z7!=s}yphV;gq_aQ4}PbEfLnm$$+Ih>GS=)j z37$IyzMe<;C5XfOpD*-@Xou(Jkxy=*ypHS$jE7>_GuKMb#Jasn7#pkLH)5LzbMtn7 z7!u$T?=T#`TZEMd;74YD(FO%l_=LS%Bb8ADMWnRt7@Iv=A6Q6vv5h(X&%jq>Y0D_> zM|RrJSQ@_18cK^|+Hqz-q|-};9f}xhOJ}UvL}?>2Z4}DQU!dBgjDeqfB9pVmXdKxv0z8jO`#)*`~DBVC}MYLivg=0oAp&I%)qifp!^?Wekdz2 z(W!G@1VI=J=sAH#o;C!q11U|xG+8!n5|80LT0?mc5as;Rc}5GR`O*43N;?ZH0d<=} zbisNrp|n3xTA;=$b2X*Sr!+xNyzeDSyM)r>t}-`K+9{%*i<~m|q=EfSx-XFAX-JDG zrOm=LnHDp=v^bISG97~P^iS=+JeSf2VL2=<&eHH1f26b(l;#@eFLaOd*w@yN@$BmNSOZn(VZ|NKsEr zpGE0Qob+muj?X~f3N|ROsX`3kRd=$*U z$E4{L)#s(Uy`VPjdeKjepN0e%1tT)a8f&6}v(ok)2PPsy8L90?u*1?zGS z^zP=DM&d6|5J zG8{WRMel<#E%3gd(l;E+iS7;`aQ)iu7pZj(d}>yVG>12sQD`SL=kfNoAaa z1wmch^+tD+(_1;smr(w-l;71CK}~-V-q|<54ci$H31IDD9_I_lz`{q1C1v z*T+Fw6=Yc4AAldC%~JGFR1bcxnsrs?j6fZb_4mHECF}oG9^po$VdGJ)AR9Wxc-PA zEIn`%B{ThND5a0Ubm(ghuD&*g(#Y@8kA_cnUn8X*Z3#9>6_hp+ z(@u5ye+X|!9PXLxqEQQ_{hHF;`p0>c_DhjQ(i7{kBtx02DUI30@H{RVxi0b&rA?(W z-Fn|9N;^SH!*|ZG*uDa|PdwMeHR%)5y4HX(m_o*DR!JMVBveuVO_B3|;h39HRE?GoUsRA(dB zyWjWW11>g}Yf+VZ3HUn=rL<>t$N;nsOyP}-_l=>nZ}4VJJCCPfziOnk4>1ki;p{-* z7Geu#lb=KBc^af==4bHZg|*T^8it13u`W+jd5kyN^PKT=Bc)A(d{|F6zvSc1aMj@l zqzRn?W%dwCTY_m!-Z}nZ&KPDR3^Cv8LgDP5mc1T_yP9?#yM@eFQxg_vx3t6`tsxq_q9>l z40>L@tDXxe?L|?SN~bPMDUFS5P*3-L_hv|2PicPi{F>6{;`11vaB3sD2JC|%=rH&p zJ+Fk){K~9Jb07AD7E1e)`ZDwbTbIRWE}--P@l1dOE~YJ|v^w~X^%1;j!OwdsZGUm! zBorbRcmcSIiT7`yJhkxMeLtq@KR_^*?=j7yw0g_{&vlP^M`cK>%aGQYA#GuXv}GC6 z)?`R~Geeq~GqjvX&ic^y~}kXdfsB5V(Wi-vsa2<3ArN2YG>l(Ab z$LNe%NSn!&x5O^X=~r!(_Ag8Wng&P!<9!P#Z3d>XIy5uNVcJqk`>UPCI|ruSOKE?! z)A*zlrmd&6i!lwK2U85#7#95en$ixUcVc$1roq_AM{>O1+8;jPnt>m1e-pJO()TDz zy9v{vzAlXk3X?=mUGbgwJODo6^6L}P3~A#sq|M5Zc20)0MH$joWk_3>CJo!- zb4p|VGXpI!uVujpTtkRQTx|@LcIbwA$61&Y^v2Y@i{-p?Eta+0a zM~e5|dnx@zC%v86l#TIkQu<#o9e9{)qFfhI1|kT)Ui^^K_NBBbn8u#V`yATS6_oZM z>1_VGCWxu9woLO=Hld6I;s1Op=V|yZ^`VCad65Q7Dc=*655~^8ct_OF)=>HywC&{n zRR~=gn~I#F$m5$R|0!4=ytfc`jQWytao-*X|Q{QQSg5Z(kaIx2jmyZ3_Bd$Au(rh8kk08jq{x$JZqCYR=CnRfvcwT$x4$%7wICx`Ya zJ{*|+t_narLxtbeopz>XF0C4Cu7Lk5;s0v*zXtxVh5zf||9bep0se2SnhC{dW&m!V|v z+PP3fYTF^NPNp(0z=9YZ9A7x{PA8?eU^)_?j5!N_E~K=nm_~dY4IE?hG1B7(%5x^x z(L)asfi6GHddgdh}TM0 z=PD!PgUOUfe&!gsr;XC?NTF|v3_~JM0V4Z~3@m09l_h+4wr&y){M^kKm~8{){Vmm- z@`9^BfO67iB5a>M55`Q2QiLCj25roDf&3Sxw9hp7(VYxlt!oohbB#XATnqo#!T~q8<84|db*GSCKqVB(t@}G?P z;k^RW%{-J}O9`K6zz-_ys#P%*0Zkz+q<=<@t9&Ke%ExqQ4}W>bjv8#vRPn>gczP?#z&!t3JL@}RAgzVczQ+6D-F}BLJKlM&8G&|l)+n=WlsR{lIbWR)^Cnd(V*>KSN-FDI zDvQQg7*EdD!AY8j76LK^Jccnu1?2mH?qNCtBru)b`}}C&y_Cl>nKtAwe2}6rUm$w` z*O>90t0|3{RqUOS(|A1e3`*Ny2f)*wKJpI6aYauf65#e3@P7rB_jvbxmIcXz2h3M~ zY6qzh5IX{bBuAP{)k+8todQv^T*uy%O;{?*VB%+6uGR!@bjuKwH^V6}(}SG%W9{%0 z$Smm3+Mn`11NXUNnLRo{pv9~JHNpu`D zW>6kB?E?IT@qRcS%q4s^eCPKDc!+JF7CVgv!;4};(jv2X0M6YF6($ zDr=*s-cB6lEWm$Gc}n(xADQ_U^bcJd6gD@3{xm;$68s9>PCo*_$FzB&bhY8}I2-6$ ztj|L`)IvL8`zXcup(xlbp&whIZZLcR;m05jan&7wkAtsK!e7p+Z>ZYdTKalndGo2f z_eigyam=spf-@1u$_uc5M-FAmz&t*1dFs)75xiW>IAbLgH!knf-$*}C~!^-OaetnpZ{jsdv{TC@67 zbFCVHxjj_$n3ZF}E%(y>f1&%)j~xZonz{%Zzc)~xQz1Xfd2rg>I-kxAmDDi+#}bRu zp2qv&eeAwv!2_@sq`V?ujibD6m=~S_k-O{}7W|w=X#=sHNmdMZ#hmR4@B+%is!IAL z>i0_szs}YjwaZ}YgO!c+yO+|>55f9CcyAFOEb&+pO{Y$)&52Y$j@JsU*1ju*~>ATEB7VyL2^>4x}k=r{IbacK%N zS?Z-Jp%icgAXpCTukih1R}RgN1b4tGl%Ls*@clSSnnn1d^a?b^pv)!w1H$*B{J$eS zfIJPCc=Lb5cdU;l;nxwa6E5EHVZy_N?*YH@dK>;@Ir|YlnW2jE72!W6ynt{6DuDU_ zK==g0cPIR2YD$y|cwt-v=6{v&A9GkKCwxDh12i-%6A7O{copS8nec^#FD4xQbXa~d zu?ky12WjZ@LA;#^z}Cb8egWZ^V}FF}T>c04*XQ{ULk5HEX#Pi8PIwF9f)2M6em>!+ zQT`_h*TWo0625`(4#M*Z$9BScez-darV-ws@LCjja0&hyO!yMQ59G-Tz8{vehVT;! zA5FMQ3?6Lh|c@UX=* zqMX5N72%12{P!jNkMbDdp#ly}B>WA)f%}z3)Kvw)eai5lvVI_Zfs2}12?GBiefB5+ zE{+Fy{ebY}31>bKz+-@`aJNMjWcm=`V<~?HJ&>(K0Q@A%KZD{Ys2P+wgbyeDdyp5e z--+@G7v*0{xI#FEo+!5yF5*-uS$T%=)s%5RUcB-l;fn~Ta3&=P{RiJ`zLX#PA>uO# z7xgJ6T*NI3ei%o11-@sV9Ng#9`%iDu*vvQxpQhR14dH_R;|Le)Cj|W)07p9i`B+}?IaL1Xlz%w&Q&GtslN_)p|0R@v z5#<;4yp{0zgp2w-N%#!H1^=KOg74c;DklK)2=R@mkiaGCvk&2G2^ZxT5x#^aL3j<}LOxtbcvQl#B)lKtqMmmXzL5$L{r3gJS4;S(gfEitFbH0x z!#cu=EtCSnEoxXH504~#IN{>ClL%J`7ya%hgs&$-CHUl5gs&!C(B~q;7fJYX!sin% z=x{&bGYA*;d71Fx68<^imQ+q(==ewnMZyaRUr&rc$;vRoR}(JYtA_AJgbV(eN%(vT zKa=nogi|vpeNvE1$|y1d_6UYz~QV0_P(nL7xd2qy$9*Af^Z?9 z4~M#5_d7jo}sghwU(Lc;qIF6eLt;Ts7M_-ew}5+K^; zIl@;+_(y~0@u|5l> z{D%?VM!0B~YQk#>7xg)T@Ti2h6W&k4e@*yC>To0ultqNEC0vw$GvO;F{4v58O88rZ zw-GMr@HOEz621pC9MU05xadcR5Z;e)L5E7hH^^jqn#Q!4Iz!zLs$D+^-04BV6!9KPVUZ_RAZ2IV|Q0 zz78UMx78d!j{i}L2%katlZ1~Uyyz|tu(?0@8V6ieK$y`roU4z@Ov*obEl;?B(tknt zYtM4vH-!I=@Kc}Tz;6k^l<*uykPyfg9X3Bpo;g=l; zhCf`)=L&y+LU@cVe5Sc0z<)*f_o?8s@g}$y0*>$7M)eeY@;Ac8dT1dhS5P^Z59iNi z{&y$`*MH)B)sN#i^I-%2B$Xr9V~hTR&(>V+j=%BR0QnUkzuCuxgIesl{=@JPi@9(o zd_#DR8-(vVlRF`0p@jD(e7%J4PB@FZb*1f1xY$2RBw3;yP6h!h2Z?fszeU2~3^#-s zBw(eK^3Rv@A4T|52_HfDMhQQLaIsI4c))QCH<7N65c4`KVx`EnG1de_jMNKzfXFvUlabCgfArg6AAwd;rUYe{~{dyH16wC z!Us$EGKPngMG}5J;p-&)R)&KxkgmI^{30p;8p1{Y5w|@~xY*Z9;Lj3{{vr4EGU2Tf z{wBjiim=bcJ?~R~vHz98Kc)N?WX}uyE5c_o4vzgxl&Asqc!?kh(4I}%>O@Q|`ns{hf1ub1#qRE`)|#52Ydu1WbP z6TZ8IpFntlgx511+6(+5?yH&d$E5sig#S>&PbYk=gr7;}50}dSf0Tc+lz#!?CrkJr z2=9>azft*OpDpnY7gK(**O z)7Fzj>XTH?07pe(NzW6$QDW%z3^$Zj(gWV1{BxypJ|cV#*tPEK3&ICT_}7FFkp@DI zDV&C~PI_*b@DC-tKf^=HEUBCUgkL1#2N1qm!Uq$+LBbCsd^q@T+!u>6fcdXB3ICyZ zu7p<+zE;A=623{oxnDJ;SW>%8qx|zF{A9w#K31Zx3BtubQ37uve38_S9fXVhk3{}6 z2;V5>{}tf_gknWEoJV+tgkL~-orM3H;fA71eEv_u3nhFB;rmJWRaE|bsr>5*Un$|Y zP&q@Sa=72zP%0(-0m^@hgg-{*&mcWp(Crz*#lA=ae~HRDLn`MD%0EOZ=RLwJNWT^3 zd_v{?Q7UH>;nzy|W-4c?RKCFsx{xC51W|s3@P5*B_auCVg#UoyhVr=d+yctKLdt(I z;bQ+F@!Tkt^S)G0IprTNsc=6g{5%OCN%%?$A4lbXBbCqR5e=oUBnOVC{Ci7yobUrB zd=}wF5}ssuNLeq{=QP5jl8W^U!W9WWhsyu4RQ_)XA1&b*68;Mb|104aOZXzf?~w4z z84h-bRG(`IpCREl623{oR}sEi!tY_Yp-h&Z`w-!>oPUCFoX2oq>j=MJ!e3>0$o7Yb zd)}t}&q?_|B>XK2|D5noCH#MctCBnqF#n^W>>=TO2tP=|xxaF^6g~6%EdOq@I8pYe za*mYBDI|QXgbyWrii8&v-X!5i68aiqmrD56gx@6LH!vLJj8xCt2+l4If8Sy_*b&U$a#B8^a`ut*`OgTilJNghIUA(+Rhi=*{BKhJ zJcfr9F@GeUyc^*QrTXke_!h{>-=+L)6HD+*h<)4yg?4B8!S0aC*_-eItbdE#io)YF zLdtLnKZx@4@xjS|IN=MW{H27ik?^A!ZYWnt^&dg_3JE`k@LMJPIKuCi@H)aDk?>Op ze^$bq2!CC|XA}OBg!4Ve4CN~c{~6_9Ea7J{9ON)-Pls;5CS2_ICQ|smW#C_u^8bbM zFO~3r5x!2sFC}~c`zuO^y&ni4F5%Y`-X`I7#FQT`QDe!hR2q5MF~&lcMO zf3BDEKTGBG6BCkD)t3nu`=g0B;Crx{Y`uZN@bCL9zo8UK&;69)Cf|F?b;DPL4|ieg zE31de_IYq8g%}>P<3B~3$#6rdlAilL!fPa)?*(TljS@bH@+Txe$szRIh3v0*D#YJX zez6a>Na6G{lyjx>kEZ;8m+(=9-yq@R84mJ<{S~Fdo&=QtQ7Qiklz+XHzn*XruPaJw zCVY$tOrQk5ubrW25*<#b{1-|2&t$lv>?7s>f0Tcvl%Ma7XDCrA{~xHF2@?J{!hbH| z7ZW~T!ukGshVlmqUrzZimhhVhUoPRd6Mmb7^F8`NKaucaE-N-p`0M$VZwhR;r$7JPvS$q-yq0a zsof7?zd^1__+TpM=TiBH5&l~V=X(|!%HJgXhm;@VS=?6@;TX^2zQz*%wuJM24-Msi z5ZGCBiS0@HYs*Ny6VF{9XzFgz%>&d=udxNcd*L|104J zqr0K>m;7T9!Vi$}JqaHo;Xfe!NC__>{1^#8nD7%NoX24sN|S__Q~pi~|1sfbN%%;@ zF+RwBjU)Wu5?)LAatS}4@LMH3PWXcoK8x^m5}qXdT?s#p@Gm9&7liY8ALk9uA-un2 zkN=kN0TO;8;rmPYUkM*7;fn~bknqb1A1&e65I#l1ZzQ}y!dDUACgJxG{tF3zi0}mx z{siH&A7&llE2R9d5`K?_zfJg)68<6KJl@2i|L27B_z?&HAL03uA0WWu@C;>d3GYMr z5DDk<&QMAu{QH!@O2YRioX2Z8^(iF0PRc)&@SjL{G2y34_>qMFO2R7%|FwjVA^eXL zK9TT$O88X5ua@wW2)|9j8yOx_>eyfBeNUzQvLC6P@MooR<`FK|6^fGh`W8d^uay7) zD1S)u&zw*A?h^hd!Yv8^2jMXZUrhLqB>YOkkCE_e37;xA=pazSN9d6#f;#(+rKNI0MO7O0|pN%()I^1BG{Bl(Mh zEU@2D_LA^?!Vi@2JqQ=;^~96+A)L=A3sg}C5ZO8Acm z=kvYJbE^seidz{0Y-Y#<4!2r9uW z27-d(Cn{h7OdldD3M!(Akt8NiNdhY9hx%9bJvDQ-===QhD6{?cnNzoJ-L4MPGgBe> zfK26xypNRb*RkM5p8f=I_jx7vic`QJ^z>(eKk4!F!R37z=Msrr3hrNT%mkPBL(=-j z;0HbbYrv23uBWvDm-j2uKAphpdHSB0%_!HoA9X;LdGvGTt{R`lS zJ^l)Kt>C&{+GhoLBagoeF4vFK`nBMFJ^co7|N7@f@JXKjTkzQ)m+uF!9C^m$d!b+9 z@jt*n_4wc5KYF}U@By^Sk%Jzu3Vzt*HNlS!uE(VFa5{KRkDm)($K&7UT0DPRs2Z2xV_;BzCJzfg_q{nXp zU+D3P;IDan3ixV|-wXbk#~%j&&f|}P@Addo;Dq)VjyV*+@e@;EX%;O6}%&wqNrD@T6!{2ze6Q84eO&1QnjaZQ@f z126LQ3&0=o`11ib*V(-N`^(U;@$_$i|LXBo@VUtI`4C*r*CVONr{L{9{ny~vd3+oA z5RdN&xcMAMu-!ybk3HaxJpMbl`@IVHg2Ui4&pB#7OIOGKT{%+XwOa*zoX2Z`ukiS3 z;4?jb4)}jOej)f0k6#A9&f_s~Ip0mk-z4DX{W32P&7t4v`LqL<^V+me7w{h5xc7$t zA51%d`FM*Go7p7k`7W`Jv|5os4J$@(nnO^+&faiPs zA@Fe?p96lM$LE93_xN+*FMIqY@b^6a8u(WpUkSd$Js>E;r zPd$Dn_)d@41+V1g^WuP;>jUSeW3+!Y1fT2iB=|~?HwFL69-qHwy{m}3l^u2}d`-j#W zUekR3`crht-QM~O_(t#wc&>b2xc{k!TOaqiTBpAh{JW#XU_N}Bf!|(HKnD1Y;5Xy` zz5Bq+z)!?|K4ZYAflmR?27elSm&aFucgFkI?(N=hz^?~)@%#;bH~6LSKkq_9 z<#TwENImGE0-pe368shLW#H&`WCQpr@N=Qx1O5YeA^1rbN`KGCb-yj(ml__nePt?q zuEHnO5BIr3(Kl0gTf^;kcOg177;z3z^tlQj37@;*wdH zsdxM6B2SS^3=fMl1Nw(ez1T-Xd5W}C^u3{94ZWK;^1=6mw}Q`j@T7^?K7!w5GSBye zZ#2*LQCXfM&wy_OcjsZRnB}ne-+;c$#bVF|KI_4!f!_+g9lY8l0tSHp13t{-r(Pua z`~ckfWPo3b1nh)QC-8*X4(!9llM6lqyt%B7Oaxy7ei`^o@NMANRge`6z#BJ^<#(We z1^h7hUhp;GJ1-Xy{LZ@ha|`%hH{kF;;CP1U@wF+DV@w`xT^%14?(%jP_;B!vvN}>9 zd@uL|;8%lBj0v~}ychUUaRE<&7lOO*njU~SCmSAC4|cq5oSm@)LGzJ0ivDIZu3|p=UDJ| z(4S#=Sl;SF{|@x6p>G6!91PsNbS-%G_9C2udd>nrql55I;4>Qh7x4bzw}ZFtC}0G9 z9x*&D&IJm89zL&h5})^ulIOP+{rk|5?<%_K@)Wt(jE~LRaoq$A2mb>4k>Hu&+rbxr zW0)g{!G8u1el*0q<`lEzu>Ozs6oUuha~b$$y#%xXZvkEeJ`%h;_;&EV;5p#e^cJuI z`Me3d)^);19xcxg86KAB|3E+G2GLEGr^sv02RoJ`@b|%Q1Mdv}4fv2sjJn#-#0-R4%@DyQanJl|{_!#^GY$&<1IkDYJ=Z_9sa-Iaq!!5VZix!06zro>O33#RuqoYj|V>hek1(v2k(B9 zfKA{}gEtr_z|E_#flu}Lhv3`6U4FKLUproW-0{qA@OQwS|FPz{)7I5F*ik#5Q^6;J zJAFOyZQutnj!nS7yhYkQ3cNG;*S89Hb&>;~F;V#0(2oJ{e4Fs@@)Wrr{0VU9^BnkJ z;MnYg-$Jte>OV;g9N!B43XlH@e(vP*`cpC`KNCHk0se!>JAt>py}VC8_yUhl1Fv#N zdHo{reDFrHIDGYz--UvRg$ zm!OfD;Wg-6Fx>rF?VvyN9uY2vzAyOu;5$$!!@ys-PlPzViQEDH1NdX`c?f*s{Q_%NZiP5&DDR$%h2I41S#Hh|Sx? zM+BS+ek%AJaCcsF5%}8(+|7H)d1bowU*YyvL@AN!<$hr#awuYnyMR!5!%Ukct6`nSQ4drCm?yYc4F z&ETJ606&9%Klp#15wITo=!C>S>RAD6j*{oo4G-I{&w>8xMWVxDTqFVh82DB2?+CsL zJoue=v+jEEt6mhL8K&Sd0(=Dc1KRI4 z&Q|n`75<9hHlI!2mVUj3aapbC*DL%h_#A#md`4g#cYzOICBPj&S1>y)+wR5h3Ez%( zPX#|=jd1%rN%m16{HFJ1`F!wZ;E#VGyqi2ldV}u+4}O>2tSbe7f2{~{xDdGqyyHj0 zgWnf7e=Y|fyH0rUyW!@~ufV_mM7XQly@rR?+uzW4#)i^MUKTm6vE<yvXAP;OoHMym}k>Q9p^#7UcN>@Na$= z9{irP`Ew!ogk8eje(+uJHM`66t>88H3U_fH051aXBda6Tnn>Q(fV(&^0zV9X82YB* zhkg}+!{10(@Co~bABTSBga5f-_&M;o75uaV0)pRBHh(?@o;WD{WB5D=e(7Jr-8}Oa z_-t^LZ)79*#{Y@F3VePA{{bD!k=2o-u9Q5q{ab+JCxI^nck@OA@P_}0KKT7#^Jf#o z!?u^^3U8zEj__|+TLS+H#{)yabLtA;jDFn)ehntbFTrPm&&2n%pNjsz1pXrUO7Jz{ zBXGcr@``K&zX1na?)|dAz-L?{4Fa^uce48a@sD$86!N(C%FDXL6uFR#q%CJglCVL!TTj`f2c42mZFl zBgKRB2aRfw9my^nUX)dw+bb_8x3FVjPHssguOP3qec_mr(!A_pW~roCR(@VitNh&I zxdo-I3ya;V$l%=4R&6@8DlRT8?p|7)S1=f)MPb39yur;%4I3CK8I@JkuAnrxcw|<- zQCmru;==4^IXT6-B_*A^cg!ux3PjDz1`WzBX5wB3QSRu{+=7z4!h-H)MMZ_hrMWp+ zkylVuR@yPQbVy-N%iNOE;=(a4vhwo>W@Qhvtu-qx9NunF>NSyE8*kgJf}H%^V!Ph< zxn04aLetUix%s)-rKW{eBTZKgXkDB&Jhzo?x3t7DBQhN*>XbXm{M7hJS)F#p78?domY@kILZb9(4wrk zq_DW%@T|ePk?gFZ(z4=QL6Kq;T2_f$$}Pwmn4jA%%e=O%B)6jpp|Bv5lUEW#gXEYI zDK+Wyvm-WW!K9*1hd!;FA2E6u7_%~Bsv}6R*jbWYoNKyvZSI&Jw(XKW85u@2D61^r zG-d{&FxzGWq}vgsnNtihndq2RRAh_D{vDK@1E^3}cO@nngG})Zp^_~h80unxt?+iH zm?h`IVo6I8ZBGXb=+doKj~>?zXx+0@iyrMdcN#FDK}KdGGBPh`xEaCL z#f8IDr4*_)sR`!|!+FET3U8$Fq{0&lk1IT;@MtJcgm)_u-m7?cr{YSV%vHd!oW;Yt z8V~PjJiMdv@P5X_yBSv^$%qUI=8|RuF+-Ht3BZ(Y12f)5h57krh0F=r`GqC9u86%& z>ByN;EjiOiTh|@4@(OwkF0z*SOq#thN#Q+KlitW`yU=YE3Gg$qX-wj7+VU;boDL z8NO9yWGeAzDDh_~@n?i@0T~(Ln?Oc}(l2fFw83tu^sAwghlb((Z5-a+#^Jqf9NyW+ z;eBl!KD3R)GtfAEU>k?`r*U}q8;AF@QFt#Kh4->icrVQlz=v(g=DKSr4)0~7@Lo0w z?`5O#UN#EvWiq^%$?#q#!+V(w?`1N)m&x#6Cc}G~4DV$!yqC%FUM9kOnF#M?BD|O8 zVsO}?CBl1|2=8SgyqAg0h&hfoM}s(w3Tw!``5J~};eCsR_bnFQw^(@JV&Q!=Z&R6b zg5h}u_V_R~rtr?k!pAZeK9;fY{+erdVNFKE`x_1KZ#2BW(eVC8!@Cm=AIoTXFQehT zRQ8F=E>YPd+I?`y5w1DF4aMQTRQ8_A&NDN-m&&eF+jEAGrMBM;@1@y078d0exP!Bn zxg+zk%}Ja&b;Ze#J)Rn#H7pk=Qs$JY*qjrFQ=EN_&d6xcFyuw{pleiCo;{N`XG?Nc ziRE5-C3yq$^7Bf^;H=V|lcml{af%ITvw|`5(qXw{O2!N?%^DawPT}1RAJaHa=Gx}v zwWnW;nx8O-$Zno86DJD+?2_3G0w`u?60%EXiVB{@ zEG7~&I|fi(%*+}riHn()?UI?ZgC}{pISmPx+07$;-`dK3EbL zbBJJ<%mGC3BrfLQBUlobM&e=)YXT@P=8z~@5*KqgWtYssR`4V)=0Gi23S2VHhHREH zGa$iI;F)O-b%S+yoit>QA%mAoL+1E1SPB}-G{>&?1?G@9cnTWIY$z@b#k!$bHw;`d z8wM_!4Fi`M9j?2D1c&S_HV(Gm`Sx}O0{O1-K||`_SV6ZyiSTX z)9mmAC@(h$3&D~!Bt@GUmmW#cW|}i=D>0|z!IPMob9TFAt|A0a0?lz!uq4*z;y~~M zS(1Xzl=9A$g3dI@M8ONhT531b9I{y`wVNrmn`sUP11K*r2a>^(yiUqAQ_3{c9Fhj> zq*-$~YnRNSaquKA=CC?g5*Ml6Omn~mHLdDQ?CF9FONz^Mx`R7Qjt-q$f#6gRJM+&xjtcEC-oVX zts^QMP}H3M1?z$!qEfU`vri461R+HmHG69drD&s4tx>7nXr{PG(MHV?MxYcIb97>t zq*|j=tx>7gsLZrcDbuLbbyQ~Bs8nlIX4Ml9F=N~O0`C%TBA~}QJG?+QnXR2)~L+1Q7O!*lwwp0Gb)uFmBNflVMb-9jhX{} z8?KahRO&M-^KMj%HY#Nrm7Or8kK5|N|{Dw{)|eQMrHntN}0x_K4UU} z#-vPRs9ke5ZZZ**X*4E98#-wOtQnWEC+L#n=Oo}!p6%v!$jmd-?liH0*?Z%{bV^X^@soj{= zZcJ)7Ce<2~GL1=@#-vPRQl>FEAc#qs#-vPRQl>E};h2E%yD_QVnAC1eYBwhJ8Iux@Ntwo^l4DZIF{$L3)NV{_Hzu_kliH0* z?Z%{bV^X^@soj{=ZVbgIB^;9yj!6l}q=aKq!f`3#xRh{QN;obh9GBXSOYO#`cH>gJ zajD(7)NWjAH!igsm)ea>?Z%~c<5IhEsol8LZd__NF0~t%+Ko%?#-(=SQoC`f-MG|l zTxvHiMH`o*jZ4wSrD)?)v~elgxD;(%iZ(7q8<%2;OEJWygyT{ZajE3ERB~J@IWCnP zmr9OHCC6n0ic3MqrJ&|yK$-AxYTZ3YBw&m8<*OROYO#`cH>gJajD(7RBK$SH7?Z}muihmwZ^4d<5H~& zsnYeK3uA=R3YYE4MBCZt*uQmqN8)`V1RLaH?()tZoMO-QvSq*@bFtqG~tgj8!n zsx^UXl?^X08(ubgsojLsZbE7|A+?*3+D%C9CZuQ+QnU#v z+JqEsLW(vaMVpYKO-Ruuq-YaTvGZDcXb-Z9zqD@HACZuQ+QnU#v+JqEsLW(vaMVpYK zO-Ruuq-YaTvU`Z*kq!d_E3M?rF zmXrcZN`WP%z>-p6N!gr|vN;2bBxRFH%C?e}Z6zt&N>a9!q--Qf*+`PIktAg! zNy(vu&WnggsOn3G) zF-uFK!I|rPxw1Otg==#{%?&)}8mGClB(++2>%wev(@Bm;gKL-6^;FE<_28vmn-qKx zdlQYl8L6N&<(~5CmRpiH*4|`tK<=8v73^X0; zWo{X>#&*#ps{HLe$xSE{4bR4`qxQDG>L95h#W^z-T>8SZn0&ExDY9{l5 zWY=7FHq~WrbMWR5Gt~^wYF1pFHKs&fN|TBJi6M0p6W|ed;|1|{FEZ~6H1Ed_)1WhA&@pSYnR3d#fVRs}E1px1@N1bB+{5NK)56{Y zTjZOY770rCf_aB%YKuIAwX(M=5^ZU2 z^`k}i4p9hdHad?7!6}=Um6p1~4-)QHw9PVi7#3!i(muzniVV*kUXoiXjr4GDle)Df zvg^t#2<|)_P&|CVsI1cLA?A&l!NEooNJ;zQ;l4=0>|^n%9)&n>+sU?fYrs=T^%GfYrgxP+kYc zzx<2LCN7rU#|$4>m~V{DyItiam^FLkmqd!pEN{9wz`Q9oAjjM>X{R8&X}b`N8_Ncp zH=N84HE&Q}wwq7nW~y>8GWp;anSn{YsGJUQbSyKsTBafyZkJ3fW(FxlF}q+o6lM<# z6Pw8r73`Ef3oHxMmIZ61lRZ% z9Oye9@jkD!HJgk*Ho;2*+CBXqacbG!w;X`<-o)LtEX{Y5dsyKmH%puOBh~v7b8s-o zHB5I*JA^cpxaBUzdBd}c$GGfZ*M~*Be<)9S7ZwjQ2U=Mk?lNRdNuDW_V8$>1iXc)P z;CipJ$JzlhMSvE2nq6X-LNg@kUA3|%{hHJ}#%MUTYfJ^7A})ZSGP`A&;}H8AV-*g} zjhLebMFyGU3`uEAxkXtDR_+eAuTL)rcIn0LxV_zIu$9ZYK-R*fu@pzr^t$dt3d{0y zf<2xKPG01%Fq4w32oAW)YeSITz5-F|b#8Q1o1gL#c*$0`s5jf}W0ER>+&lpj>Cb;iF1gUeIU{(4| zC|IPklwdj42YjRfrIvECA9E;|0^SHy84raan~B)^D^fOQY|CvYsTDTm;cJ2#3}5AD zAu}7x=Ott-k{E(Kguf0$628)ng}>G-8-KMl%5_psVUK8nTV7-~=xuJH30>@wH$1nn zOm+n(S#(|!>R_*KKQ~||6MMM;R}^q`hq)sKG4ePw zFdyYWd6WmrxudHabEKP^L`}KT$ssA+pTU7Hjw{i6`hXU#DeFzC7IA@ zwE%OUPC-sqaSp98#b-h-H%tcE1NAUw4&;ugUFypbF9}YAL+V`u2#(bK*T_kMPwhc` zIpz*sx|olVm>s%Hti#Pln@>R@vyMr=kHF?A{s_h+>0WLxIR%y`KaTm^xEXkD6}_rl zN6KB+Dp!)usa*-G*mVet93+t3h&9NZgUeph4rP8`(ZE78=(GnkVfr|=#o!R$=1%@h zA9Nv~`V|Nlpu08^a?s-rPvizYjGnz3<~|b^c<>Inds*?IEORekxg&KE@Ik#jVaN{l z<6+9MBX9d5xkyR+DBE1>QBJLMJ+~ua z_XouhlR$HscW`cLsaceSIFV^J&;%dn3kt}-%vB?;Dpy19RpzYL99I-%kKq>tf18fl z7c(zTtHsRh)4Fu--mXu?e4^1^%t#-%*#4OFAM+Wy)DU`GUaH3}&FE*RstyHWwhOuh zZg(nUhG+IH$g>w6Q;zN`q@55_cBvhLy~Q!>881MntDb0ggb>Kdbu(yyD4v#2kk)(4h++qpDCOpw^Rcq3VWQFGR1-Lk@9k< zDOQdgnm?Q6m`|3bPsy$vKLDF&q6%kT3;)}$te;Ddy=k<=!B zB(ZS>FDTd9l#V-_hIDFeUq3jvv?wpfb;rouri~67g6>4x;`8t3Ylk9P6(fRD>rxO2~ zxcmNU>%Wn>`#v4s2;vh^am7P-3D$RzW?P4FID)D z3U}WF=KB|$n8Vt=TjBpv_?rr^U=w2=e!F`Ve)-X&_w(5g-1nKQ@Pf+WJ~P36pVt+> zSK;R!BmTb68igNH_{I4C4d3TFg+B@I=jUxj|F^==I4(T?CJHZ6_(uwlR0+@jmEeAV z3l;riioTki9L>Ye!`0xv|71n~Eb%;3!)|+DsrdXvdfwivS4+pkKIeh^@mx!K_US>K zeR36_@d|%b;mZ|%PIZajkMlZkKhKjC{c=UWo%jgK^FGC=>G9$5^ig=e!WV=4@vl(y ze<=Kf6Vl_$@z(+O^Omjf=g5c0_jBT054G^6JV*G0`~4cK=pRt{8w&qO;X4$btReZa zyPxgmf43dA0r%s76x@%0uA<+d@Z)PryT1QqaNmD{qCcuuxX&fv)@K~mZF@yOSmBQ= z{8fdoR`?EuS2-y>{xiVsxY)0#bK`QpqHjw2pGe=H_|L>gC_Zz+{rtbA=r<|6^2w$# z^YF(vL*XOAZM&0byv8f~mlgd*rv%L&(QXBNv6{`Nu}|gG{f@V7cQUoR2zsBt5AOHt zOnf1luWt(O>nAJxWreQ;xAEIuStIkmef*&4-#T5^JN;oW3-%k0ghA$Sh`a6i9LHthQmw@~6^dKI`FIMqPeu|=h4&3&}ZZEZKOMCWr=Iq1ro#uZR{|e%}h`&SrGbx^riF2O6QuwzD{|DU9 z!-*G~Ak4$&VHUMpTj3WG=Xe?_eC0)fec(Tr{I`Pp@%&5r$4TGe;!x%^KgzK8f74@NSyQeGPobl8>FvF{_hiK|4)ejM)7|R z?)z^heO2=Ri8%Z3CH_14{|4^++ut*@4_6N^KgZNhbM`-;_#Z~%@?Q(w_qV@)W*@%) zg~ZwaGU5l#>zse4;@^|>RgHc&#@GHXntj-I*?$Oe9^c`L|HGuW{^Q{PByskCmN@&{ z-%GO(KR>HTZ~gnj{}bZu|0Qwu->mrezAR`qmH(DF@5&~A$VgnChZ1N1LU2F+k)*fr zJO7Eq*?$W0KdIfj75^EeXa9M`*?$4?zsP@);=h#i?7xyY`>!T$zk=N5ZLQ+Jf%NQe zf2YkpY<;r-cH;Kj%lYqA{GVuGUDDfE4C8BmFU@iGUq+nA_jPc8eBUCyjo&i?lI*j&Hob}y_+xTlE z{{x6~{DX+^p>~IX`}r>>J^N1}&i<2$o3Ck4pHI93`9Guhzd(BS zUrwC;-yv>)o6L>x8pYrK{+xZd{fo>0CgSY>9r23fzeDlw-LSm>VO)>1zb9uO{`NbR zIFD~3xIexlNpJJx{3jCU_@@xBMDgFP_|G6c`_CiJ{tJj7P5z4%|D~j7|CPkqe>L%P z^QYp!f%NSE4RQA0PMqhTor-_mj9?g3^)n9VI}M2Mw&Q~L{msXzgNGe=9^Wg#{qb!^ zdK~p?^Ve(z&tGHd9OBc z)?Y%L^&^SfJZ#2xG?6%u;}qhY=exoEJkKCK`_CiJ{tJj7LwUBp=Vu?j|5DPk|4QQQ zznb{5Dm7u;_QEPRPtcQ-Tuak^REK#=f`}J zLGZA8>%Sc1+mtx_w<6Bt+aBEa?@D_1zn(bz=Mb+-@#iW2GgxoppIHHh$;7k~sU@-!HTeo6l+#|60X=1L@iS8{+K0op^Qf->LYY91FrZ;{6f( zyN34R&p&OzT|G>%CA#j!Ii9}6kEeJBfcyCzM0(p_=U+^m{l^eLf&3>Z{tHNN{qqt3 zQsV6YU*a79O2vOQ>Dhk+arWOx{6vcX8^wP+>DhljarXa{cn$LZNAbTjF5~IOw*&HH zzH%dYSkC@UiF1BhfcxXyp7b_;=iiGs`(IC-kBbH>{&}Ql|1#q2KaO}!%FnHe|DB{~ z{|AY)|19FQ$bYWl-yxCCv-Pi!{P!Ww{sV|}{&T?n{0}2N`;Q{d{u79wMDgFI_)jH0 z`#(gS{pS!rnf#wn{GTB``!6HT{>zD#nVe4TT9Up#8`qRn(ThcEfz4;oT;9-4UCfiOh+-`kE-;DJC zrFc3MUru}kaem+V1;zgzg&!oJ736=;72*B54&3%@Dd|TN=lAvIC_c-;?f&8ns;f^F z{T{_X(nR94@f1-!CxQFpa<#(yDSVW|?*g~&-bC%rAa3uKb=&(Q#piF*^LmijE&+eizU_?6}k; zegbj(lZsA%D)EbnpF`aK7NOJEBYr9I%Zb~cT6Fp(ar;}hj@#c~v=19+1LAFnUrxL; z@rJ~E6VD(%2;A2HJ5=YT#NQ=;3%I{M&LI6N(*H-%uT=C~75#BdZ5EC^Pq_lz#=nNz zZLjEa6n>M!?;`)z3k4M1s6rVD1zumiu zbN=TjJ`2HJo)1?K!il^}JVyC^lQ>@oSOsq5;XJPc_w%`t^qjZtioV7*5|@kfO2l~< z@i@hKK5>roVsJmshTwjj?G=8b!pD&R$5aoK!Cm~*QP1}g=X!pGIM?$W^5;CSB)*>7 z{fzhq;@imI9&dL*JiCZZ9Gd#JSyziF3OR z$e;6YnE02}Zq?>NIKh6w#^kp5n&AGp*9W)SugE9r`MCQ4#}T*roLfcOYt}}dtq<3E zf8t-0{~&Nbo-)#}BmFoc1-7o>pX)v_qPdg&gV#QyB#&6?da%EY5(sj z52q9Vfp{F;`ZOk=t4PoH|92zK+ue=CIsOvj-%`6vi1U2%FSuVP=XI8T**L43|F5hq z%a;@1X^@*w62x~AZvt+|i}xeVNzeYBh_ioB;#W}K`YQfeq-X!(#M!@;coXs;qxjzf z?&obj={f(eDf+bv|4HGIE;0@_pWA7CF9G-CnWymI72de3`1?M+!Tok`Q1r#5pG|R& zAYs z=7;B*i@|Nb?7HPR4{GG`wcuBK{4?-tiC;zS_67Ib9ZGs`cZA1XyJNxqalb?1Pk{UF zt|kAb6z3*I|8955o6V2?jK7;tJ_Gmte<1xeq(7kOEA&YFHzWOt;J*K*3U5L_&B>>| zqMt+h7NlRO=vR`yCFws_^xu)b73udW`jdO6^U#{~=Y#us=ui4Kq#vf}$C17*>8C0B zIpBW1EmZicDciA%$1!Z2~b58xQBF z9&wJRA-K&$2a4wkML!tak7u;PCy@`w^9ynQyxuW=Z1i%S(~iqHj7u%zJT7Mt??~~V z1MZJYlsM<%I`Zj6K0_4!NYZyE{bWV|0O`As{s~3@A#wg3+&;x8a$S(NVBEQ1ClKfT z{uSVM+`Cddt%-Ld-i>&7;$y-6dYA(4*Wp9NchT|5W5l^mJ_EOL_MmouBHoku8GR)W ze!uF0+j#hRz7cUg{=bfVdXfJS(sQ1RiF3cElaKul95-*wB0c*&MVx(JCZ9g!^DgPx z=U38SNBX}>zn}7-*)N^9zNG(-ct7Ghz->N%C7;^;(?0!4UkBXRcO(7vq#sRs&ch7S z-$45Lq~|;=CeA*ulaKulA~!DYlb(J4B>jz~KlXa*uk9D>YZB*n8-UyT%p#wwNY6g4 zNzZlIMbY;q&g~8(pMlhF5$SmxSCKxO^zSSBrZ=R=J%{uy!2NNbOq}PX8Q}hWGEd=) z$cN{RRp2(yc0ba;w#4@dao&%7Nj#V0-%S3zfB%&@kJmrsGl+bS9U$%db#ei?-`@;{ zcK~<&s)l~`A@af<#&gqEr5#k)@ zuM+1tKLYpT+)DmcO$PH3&o9I|o_)kQoXwuVZrL*>aBac;cLgTHt;j>JjHSTY&p<_9i`l4@Qonp91dUUyk@^5a;-3 z6X*Enfmbs9<^AI_;v9d~T*;3g|D_6VuJB&qF8CS>P- zD{=O}llYJd>Eqap;=hFS?EfZl_J5D~Q1bs!@&ACSE}N=)vhcu)Yeo%|j*fZ${jHm#K@t9dUl2 zu^ai@arq3}-3`QfTylvQQk+A{pXZGcq-X!}#Myrm@gnk{qWIrSdiI}9oc*69K7#xg zDE`Zdb6ssE&gXGIg8Oy#yTa?{$@toFWdBTX-)8{0nS2zx=u2dldeR!rxK&7KI;F_;JI- z<2h5|mnr;eg?Cl>FojQ6_~QzHQQ_|>{Bwo>3~uM2Vwyh>f&24V^@8xcU9Ipg;MRxl zU%C$5&3m;^7hm)1n!&^J-R6I{zso0HLUE2Df8I|`CeHKlqu_oWK1+IzbBUr~rRYCW z^jj7E&)~MdrPQxOr04jLDh$$d#OGUkDSRNf%|BmP9HHnZDEv9{;p2@Z3V)wC$NxET zzOK6!+#i=jkOigWEW{Zf_ucRkP0d4<*k2BZ%)cdbhodRQ$)2p8cl~Xa9SN|4RNd6#r+4^SHlB zJ|ig)>lFPq;>VgKxqj^>&c|to!ToVOvBU&z9&Wr2pC-$-iF1F?BfiH-UAq^7`{Q*b zaqe#?a6g`b`xzOGUH+mN39yAx;szQjk9{{Y3mggEDU9Qkm&cM|7z?;$>h+I^7xxqfDm zek|#qB|XRUIk-RW-zxk7`P=yWW8D8G&hb|snXVHa_p0FjxSvCunc13?&3Urs=WRh;v8oi;v8oOa6iuOq_^Yf{09(c|3Sq0_+*&kUrc)TpFo`b zCllx6lc|dTW5hYnFM<1cK5De&&*gLTsj_@LagOI?;+)Sj!2NtSAkOhLA)lLQerT`g z`;dMd=?5$N(cpf6XDNIW`P*?>jy&uj&Ux5Fobzx1+|R>bq-X!iW77F&|LVlYQ-5oM z`~Ihsp8YQ%&i?g@Payvc#lIDC9>;Fvb2Is5Df&_1{+x2kz>2Hpc5y;@sb_ ziSu}E1^4s0pE&n7W2}sqAOBSf?+otZ9EUjj5$8Au66ZJvgZpvbM4aP%65NmTd4<0P z?&9o^I6orJaehXe~>lk@h>3G@jp+T<6jEy$Nyi_v;S)1?7xoqEwue^Q2aNN zp8dBIXaC*AZzcczivORaXaA$eh0l}Kh)*Q{8sL6@E+Ee1dj+^Zj;$5m2i(=+;Zr2O z9O9gZVZ?bHi@^OjClTj39|HH|d_v(%!Cjo25$8(c9Or7{9OqhaKhAB$InMpyew`ja^KD>5NHUfi#v!To-nPMrI7DY)OS7UXa1VI1P= zOq}ECMV#a52kysHNSxyt4erNtufk_5d@;DoXFlS8ojAw;7IBXMJ#at%jl?Z^K&6_&QE7>KR?qHJ`emT6PAs0*U1v!BH|q9QsNxvYv6vID@o7(Yl*Y}2I74E z;VZ@e8`87?PU7sppEzHCIH>qny-o7rkNX+mN14_9{>a6OK1upX71GyHTPym0;Qlxk zk&o@~T8!5?;@scci1T>e3GR>AY~oy3i^2VP-XVV*&qBoWF>#LP3*sElCU8HVy~H`5 z%9CVV{CF+^x8q{tnT~ieh;uxRh;uwwfmbpfd>yzeagJvQxF63Q;4Yqg#Pa}gj%Oxu zj^}akN?trmh;uw2fcx?M4DRCTfOvi<&hZ>3&hb>3YyvTlO6Gsg&&k9&p8DW^JlBG| zcJ zbHeR5%jx~^u9IZ>OyV3*UE&;1J#assCd4_OZs2}ABgj9Pe-O`j;vCN;;vCNua6g_o z#5ta&;C?(C$Um5W5YIQnIiBsrIi8*1emwsY=Xg%JL&m|6Cl2oFc^u+tMx5hmOPu5B z2=2#|MV#X)0r%s%S>cZpZ63J4aq_X_ z-rwb!c)2_izn$9cNd7#J^&ma_-$NkwW5fp$f1G#$xZO@;<{x*Tz}>{Tu6|Q|4wIgJ&Ydpt`}06! z;&Ezs67fkD)A7t8&Y!!lbywOyK|b{rz8L%x^D@3a_D#}ryB`zhb}Qa3?fO1ffZP6Z zJl(lNaBKi&#(KmN7E8*1v?$=OoKh7}ufr!TosNQutQIXQ!gCbANb$GZo$y-0xQwxXr_p zl!qckf4ky8N8xWMK5M}JcE42gI~D)a9*{g(A6w_2)s*G)iE}+)N}TJtA-G@9Es1kI zbS59p+YO3-61ZOv3(3dEzZ~(uN}S_=lQ_q}3fzzXE8-mg_vAC5#(lq{k3J}Q_2a)* z;eEl~xXebs1`+3e4JXe1DhBuabvtqH*T>*~oO{XtDe7;98PYEsC!a6WQTQd`zJE`J zXOWK`-*L#paN?YYQsSJ4G2nh4?jp{4m`6VUq5i(0=)VW|`*lF!M?aL#o9$Oi^s5GO z?$>F=xnF02`~Auw&i%Ru+>f(|!UrpSyuxRJ+j#i?;g^YXJYN!TVP52p2ev8xzbX90 zhb5o3UB18lRB*q)mnggm`Lv{Xnk)LA3NIob{=Utd6#X*_e^ueD$e;84qr(3s{vI7~ z*Lg(p=I5s&xId096n$sXzfb=C6h4^vC!`-k{8i$U!TmT_D||os@bU0rMSsPkk_R{6 z_Q&?vn)o3jarN1e_|r5$bOX0}p`1h^m1Wa1ppY;ZrG|B}CrXD#AcO`PLdN1Wr?0Pe@L zgE+_Y54a!CS+j$5q|W;mBA$zhb36@+b3AcyKc05PIi4HA{djIBf197_h-Vscj^}>j z9M8kxemu_+=Xl-*_v87N{B1n>h-Wu(j^{Vx9M7NNemvFZNd7J7c+Lm+<7olz=JO7S zr!#Smrx$UKrysZGdA^1?$JvHB=eYy8pNH1BkQ#AmW_oVTyk->Dhk*arU1~ zobx_`fjH;kD{wy#-;mzs!TIkb&i?y}a~=*V{#ED8 zINEkO4|Tx(JR}v~8{Flg1M-kfoZ}oyobyl!UdhD6=eZ+EZ}Z^%ClY7>Da1JscY{~* z{GTAsd3Y7v&%-AQKdAU5o-z%Zhwsw~+~%!Oh4giReB!ph^^wof#JRsW6JJC=lfWw( z56u&IkANa4G3+9-M!YIQusx&Ut8| z`1dBxd3X{064NHXzrRW0mp@lN4{MQ!Cd4_;=EOMAXEpKKFuKpX<#(?z-qBr035q&LMpz z(*LUHJ1vrS{qgOq@O*Gr=L<2uqlt5VZYExC9tQXG^9XUy&r{%joG&W;6UFB*MSu3< z@I2H9xBY#A#-)*>F9Wyz;_LsnlFy6eb35tZu9zO*dlmmD$>$~VSwKFk$>({+=RNXS zLO!3659j}L;@q#D#KqL`g6eTc)dpL)>C{k6`xk*^E&x-RDAjB zL_V_>pQja{H^}F|)US6HpU)JZouub_*stgtzi5Is4?B*0{MHQIAIGkwztOzN)$=go zT%WfoKKGNJedZ|omlggVxZ976J0a*!Q5VI3DEU-1ULDZik;J*bF4bfaKGJ#3hw~!>Y+CB(}y_cX8`dxC_g#ietw3L-sa!=k0Q?g z6Ns-M|JxM*hlz9k=aSEx%m=~cO5UjdBiynMZ`JJ zW#E3E$C2LV+4rKa2G2|1@#-Urc-@<$sCdznVCY<5%RvJzlQvmfcx>s-w?g!oac4Kw^F;iiSzd!w_cIKaTVq&uyeHCH+)zKc3m-vzFR@j(oU2UngEh{;L%K z&7{AN>ZIyQ$)~X>cU*l6xF2U-(tk)kaYcVExE-&Ls9$}_hx;{F@tL9U`Q)>X;#s8V zSApAj)=@kg$cN+EtoT%X%NUr4pPw_pt^dd5e=)etGyC75_)H=_pC8R4&gbu6Dn36c z{2=*o-Y$IG_Db#(`=mm8zuXYqk3UJA=aas~N0}G7{d*4iuP6UJ((`_5H0eJj{dm%s zyN*Qq4WxgB^n9HE1nEB`{j-XGDd|5a{c=Tr7~HRu8twOOUyy$c+~%M2 z*@^UDlD-e=x!#J1ud0}CcN+P8MLsi0&pwNYv(JCY=WFs=N&3-L4S#=pOT(^z9T-?bk2=S)ir53^qqW`p~AeqZ6IeUctu&U0OGKhF(`bAGNMpFb#`cBJS0bRo|By8>`O z{@WEkgM9dW>M?LTUI!_j1*GSAUR3-ykk29V*`oOTrTEldFL}24oMirS$3^wP{r+A{ zdd|;KMPEjG_MbLUk+aNQ+b{BvAI}Y z$Nm+Goa*tl;1`4Y`Dp}hJ;qQz+bR0%6rM{yL&&E{(T^kjAksge=s!^S7mClfiheJ+ z%iCe(=Qr}<`u~%7BZ~7M;5`5APG_^N8QT?YRF#<6d#Iv}=8MUOJUH*H2w= zzdmym{*uBskU!UL^)2amxZOtJe!G20zk>3AtD;{|dVW7>JGjlyzm%WfNzd;GRo^Oc z`th6(Zu804w>v8ODWvEAE(5pmR5kxEuPyBzRCtYVWW66xOyOg}ZJZC7f86omgNlAO z>F=UEKd|2XN7A^m(szm)XHlKwSC|32xDBmFu> zzm@b=NdLW}KS27bq(7wSt9)mxjduCRd?cCCpqB8B2wM_ z<9v$1{rVYC`r}D|5AhR-&m(>!@g>A-5Pz3=P2$^$*CM_L-1e8hkMVbKKmID;8=-j^ zi^xgjQxn|!@cW7NNPjZv>nr+Zq(6o9trdMg(w|ED8x?&S=}#m5SVeyi=}#y9gNptc z(w{;4#fttN(w|BCHHv-<>1&hzJ4Jtx^kDw#%0i?I5)^7XCQS@U-UzhX~6#WCFKacc}DEg(~{&w-$kCHc^zpU^N6ut%A zgc3QQ;@L<10^(J+hqrry!aFGZdhkldj?WiL75&2sUkq;JzmVd5gZz1a{Wfu)SJxBg z6X~KHEvp$7#D2{TV+=e{KHj zQT{I=ei8Aj!Tmf8Cq4TVgWG)a@!J^1=MnO`nA&}se0W@zk^U0Wzd?H5zpMiHiq8Sk*C+iUMPL2rbe=CGeNAwiAC9vg=^K!~zM^kN`pZe*TG96-eM8dUsOWD3 z_w)8D`DBpKYVzUnT1$MU>9m`lHxcLU_tIY^Z+^SecBb>0N$t)A_qX4jq>qyRFGYXe zuJCrR1UD9u82MZa?zh{Y^l{P;Q}knra~@s-_w%qv;r(`}^HbIQxw*P54jVKS5_DWoS{Txr6^Kd%2-{1D6=Xi1zUaI&^ zR`^12m(SVA=c~jUQ@`FMeg*MW;C?>Wg8ThC{a4A4&#zW^A8_kG*ZkwgF;CIYC;dFq z|3;kif9}5Uc-n&7{4}Bd_5`=_@VJa6&i>OB|JM7%+x;Be`p>8Me<#lVM;{O$U*8zq z&+}k~FH`tBh5x1S<9$ZD!f$T%N74M#QAuBz2b8a+~%Pv_4hFO zaNdqT7~Zc;;#{A-!TtU|NcuUHpM}Kve#KXa^Zk%-EB^V1(s8o>IdDIoO$x8@XWEDR zRR`Snd4Tj!)AqZ7_@mU{_Y|M+NI!`5zY^#C{G<5P`zt*Dw%~sJ;}rh5!l(W(?a%#s zfcP_%hne7hyW16h@?r7!_3ah@q{81;_)di%RQS1nr~AwEe*wYKzo+=u|0mrquJi8Tew&?(zhdh7e${-`u3zBs_1Vf{k5c@r05?deFxG%rs$WDz9Z>hRrDW`z7y#`RrEVZ z--(1o6CjDU2 z_gC~INI!)1BNhEL(&v%>UPb>D>4%d3Sw;UQ>4%Yim7@Qe^!cRUs^|}pemLn5Df;Ra z)8kt}`kLVW_|_wRA?fQY`evjrB7JK`-;eYoNPnZEFC%?1>BlPidq`hG`Ue&LGo&vi z{bEJ`4(ZECzedq-A^k|wf2ZgVl71BF4=ef_mD1xon)IiD`{R2l>Bo@1p`vd^`mv;M zujmJm{wC7rDEcv^A4mELiv9u8k0<>jihdF4Cy@RnMZcQ#HT1 zZzX-?Xc|AQ{hg$LS~kq zzl-#Z6n#h1-%a{%iheNZ?;(A@qQ8~&_mcj0ML&!5_mO_CqF+Y(`$_-0qW_rm50L&d zMgKGDA0+)AMPKol^n5#m^v8nx+wWPVe~9#T6@8NQ50m~%Mc3M@e6# z=qHnYCh4at`o~E>i}dpq{cEJ3P5Kpzego;}kp3%0znk=rk$%6TKjzr<_&!ehYT*9( z)*<~|(qE|Pn~;7U>90}rJxTur>H8}BQQ-b{syh|_jl!!Qm(IhJ)NW1U^NH66_uFkk z`lm>L4Y0c!M zL4{vfCB0u@eS3uu1~;jU{D<7OC}M~ePC(mzZ39g6;xs_D9Yj`U}O+i~Rl)CKqR)0lh~l20@8;rz5!e6A;-MdUM3 z@tIEg#iXC3_y{}1V3 zC4I%}>3N37>ojm9jl4$svlM+M>0c*(QqgxH{eMZ{RnZS3{c_R|Q}nlx{tePkR`fGT zzk>9SEBd9Rf0OjDDf)G!UrG86ioVkEGA{o1(m>(O72aLp6BPcC!WSugg~B%}yxIxr zd4u=krz*Uz!s~v$FUyhZu%Kze?^vLA8wA4r`2^U42h^1q4n?0-M$ z-y!`xMZW;tuZQL2vx~eBUFVW5NCX!dawW zP5QcuK1upDq`y+pcP0J%r0=EZhmrmR(ibWE38ep!^tX|o^FI~bAIEv*vzC0GAs^2F z3yROX6#aMLem;*qDLkKND?9_-G#UAt+U-hwBk>W$Hxa*&_-5iS65m36 zJ@Ku?_Ywbwc#V^#Uj{|C5ziq0E%C0zzau_^`1i!`BmM*N7m5E!d_D2)#P<>3LA=H( z>G*#lo4PkayYeZ=I4vFjA>tXt|0Ld(_+P|Ji2slHWN=MiSwBaZrlA2`F}+E!xZPIr04nbYjD5aUr5jQ zlmDyePd!88xAAa)>w)|JNz(KE=baUOzQUg*A8vOMxXs(&l!rCM{~`W8@qdZ`L)?CW zl*|9=XQu0_0`VB}qlkAVUXl1v;+2R`CVn*Wxx_0I|1a@lh<`!+SmOJLA4j}e?R3AY z5RZfV!v6&K^K)jMaQ}R8tDi*mGf~l>T{oRK*4GF3 z^L8WYx!%53^gofFzhCHpqOW>hc)!jA_w&$P(f0ti^N*cE+`KVU(XS_cRm$5YaN90l zH@Ncrblx}*eZl>_Jx+Sg!?TM1dxal!L3n=70r&IsoT7hA;k7Od?^hDs?^hSn^ZcK! z=pQ0I=j~16%Su9j(x#xoSdK0ihc>{IsO%j{x5}}d2x6=QEih$L3Pl1|6SQik zsF_v`TCr-?;Hsuj;8u%9ts1pzl#1P~8YP8H5sNLFSnBGA+Bwv^q02TlJIA0R!xRvr zGOdbQ9h0g|Q;S-GNkoL-bMEup_Vlyf@9*{c{qlOX$$jU!&pr3tbI<*o#3p`@jlXT< z$Dcg>bnmk9N5rvyUe|n%w*J1Sc?XSTwTE8K|DeT>J%!7o^6T|EUL4zlVdFoy@!#3_ z$2NXU;qdiyfw*etYM0QOuh};7P2#v5f3M|HUr}J?S!I*w9W7p;?lv3$S{#?xk*5wn zUuTG`c>R08&eL2!4_t1O=V}{&z{Y7P|UNt-->)8h5x zf>k#0|F!WWCJtXer`!0QHon2ex7hgMrwu>dVjFJ}SM~F}wjRA@6aP@r@cGX;o!zSc zTKSysRB@I6Pg?$;Yp#EO@M+EesKu|)T>rf1HgR09y=M$9PotElQ1d)3|CyQ}q`6;Q zm0$ln`_e4x9XM+qmP*;g`!f;;Q_5d6tM<%gZhG^O6?- zXRRLIv+-|ie4m#8U@cExF_%-7XPM?d5?AGMX?~JTykCpg^G~*kzg&yg^IvBZKSy)D z9#+}-yEfi$;|HEKSPy#s3p8)n>fsvA_4V{Y&Gq<~#Ib!Ic=q6Q^*j@8e6HrtYUN32 z{#(tLiQ{y4Xz|Zz@q0Db&y$QiXZZF!SzNUr{k%uaCVr8Px7qk|8~@tI&-M>rpDV?& z9^SL@36qAO-?Psh%%9Zi?P+n$->t>#`?0+?@dy26_~~9`;}6@ow`BM{rQ&LN>E#LA z#NTG)KR$1;9zN0P;VjMns`-VQ>)V$q8-Gq5>+>Zo{x4eoE}Qr-wfK9q_#ZTXS@Rpt zAHLom5Lfl4PxmR!=hK_k{>&dW|Gk!fgH8VTZ2U_t&q^)-ffo$c|57dg&6@vC^O!i+ z=VMy@Pqp~}Xg*K#?KXLi4-A$^Kh8Q^^Ov;pSK4@39Lrf}<3HH=silME(f3bE#4-O3 zHu2AitL>m$tB1d9@%nj;4O;v-E&g4b_>(3N-`*|}SM6<$R&O`h#Q(#_@1HVQ507c( zc|vo2eOzke--@exI7G`cs%$X7UJnP0tN25;_@iy&Cus5cTD;#T{u0gg`MOEVbC{Or zPAy(9XT9cnyZw_mwv$m)hhJVt+W1R0?wiJWRQ(*TmGc~NwcPb`UM!B~nQ7y9Yx$4R z@+WNa|HdZI3tAqJmZ#Gu&*jsHub(y>f5*m;HipkrZsYT9e3^}}6Ib>BBW=Fk)ci=z zw`qQq=HF>PUh`4qgUk15&Ck^QP@1^4y*O7Km+vz+-l63=M$5lZ9NSO+g~Qipk&RCm zSM_tOmj6m|%>S6?3$^&?HP^4xRbDh$KVB_xk#|P87%bzfOzS`{#RX;vdrD_3hDz$-Lma1@Q_1zF>PIi<;o?{iC)oH|;+Vh8CV$w* ze`=GzPK(#q_j@(}P-};2aaEp^HGf}=*XQ?hah%_sHa_x-;nzE#IM(Oc;#faZZQ^UR z_*1m<&(>VuPqLM{H+;y7QgYVmshH^j~LMa%Q9O`fcl=Tt3z^p(T6tHZ=qJxtW% z3vA-g(&A6k;>&E}gIau%7Jq|H{H012VHt|hb{25yO6gYw;Io@f9}lH)`<#Eq<0w{5@KHsTN;v6aT0dKUs@^!X|!&IJVF5)x-Cz zw~MQOV~Uo4wm8;jT#GN$;+t*aQ{q^j?KVEDkUGwRhPu1Me{0ea_ z&nzvzT#KJ$6aSzVf1wutxJ`Ugi@!*VU#)qC=9_Ht{9B8kp~Zh`6TeT3zgUYu_}byy z!?EJ3JzS#2pJo#u(Bgwy{M9z`w~4EErSBg`ZQ>JJ{CX{ai%t9=Z2Th|&#fB19?r1w z^Tk#9_5Gy_ZTtb7JWtv9D>nX~mS3-jf7`@=ZR3vXcz#v+^*p1+alQDFjh}3j=X9I+ zDK=hdljmBS_}grJzD=HmHt~qVpotmd< zVOqyKdu;L_c>VCp{Sa|n?gchpqUCu}TOX&}_{ExcYUSKulmBBI->K!%uZQlji9hFt z;n(XsZTx8)kA#QM^E+|19_iOxJ8k0U+{k%Uzj~=wZwtj$9{srKVR2k8>utPS%YT`c z|8txCSuOr@Eq?S(gY85wk4IdUzfy}o$tJ#Ei&ys@Rmgo5do@3cCS|qTkuwMD=L#*q zQ(V=LexHd;9P8)jHvVTV|CL()m0JGaY3(zu#b2exzpcgV_4Bdj`gZN`YMw7F=VTkd zOB~zD0Ŷ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%0DW>I&GPQM!DZsNx#?bX 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
dBpIG7jIJr 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

=dBk9o}L-}Vui`Y2CnKR!}| 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
psk5Ph;4psK5IUr2D@|%1XVA_ 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

IQ2| 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 z¬6r;fg^)N^os-KV>*aq>~}IvZb%ay(J|nFPo6^;`NSIL(Gtavtjw0HqLU3>#vUk~9kc%kHL;rjXj`{DXL{U&(5)H(eoXTAEo^<`8-Sfj9VSo=WP|j z^?6Kt;Gyz+-LbbhbrQuRZ+ARh{LFEV>+>BxhU@bP{(|f8?I)!;b@cb-SHku8)epcU zf}Q_o`_nYu`FyBt>Oi%)~k6OWwW%D zg7`9cw)n_9ojMD|)8P91OWo6)y#Bt>BzTDYoVN@fEgo>UQzt?EJ9w)2UvT|>fD0!% zb@b=pKi~n9z^=~M?eR^W>Ur>(9#;Jm%!}=Qy38bXsMJX?In3yxQb*T3v|o%otp9FIE3`P$Fszr`k&*);xj*Te7pD) zn;owgKLl?Q&)nkVBYHT0+j*9K?0lXqe$OY4XNbQAFBG4%)yc0CUk5c#`-Yc&_-!YNt+-_$+vZ_%?XJ`7P&j zoH_x$oWD=={bl})frp9b zz@x=qfyax#4NnoTfoF;T37;q4b(b^067gvG2Jx%l)#4-IP2w-X!^2zlVO*{Ad5U=V zZyhfXzxq4JOU2j2w}{`p+sW67KM!vdUkVTD?fgG`yqe*o#bsJ0WTGQ1HM6gCA?aEKm3sRm3y6W1NyX_X9_$_ zyd0h&K4_ow|5LEb)!IpW{L3&pQE=+vnZzweOa!52Ay+v~-? z!_McC;wRuk#V`EL$&VJl5uPSK37##U11}K&9$qdUd&C*HTKre|A@QdhoqS+l=Wn~- zLBBhnM~FAThl(%!!^tO$UvSj%4Ds>sT=7@n1>&umoI0iASHd@lm&0qstKf&k>)-*A z&N#LYjqot>fMZTBMm!XrC_Vt5CVmY(M|?cIKs*axCO#LwUHmKfKJf;)-^DH0d)lAQ z=ON-D@F?+1;P&TTwr_Fp6v^KP&lFz;uN42cU#pW7suPcH<#@Ar6FlUSmh0Mhnv;(f z&ur~@g7_f(!a}O}IQTsAkKrZazricTgWEXc)`)M12lZ7B|aD)C!PsU5?>F`6c28X`HMdc z-!A@rpp$PBpK+$+(fwP_|5JFpctl4hpDg|eyimMzkdxmh{v$l}(w5`)?BwJV#m9Db zJXO31UMT)Eyi7bS*r`(`{xG~zyapaRpyfQ@JKL#~B7R1MyVUbM*Ip~zABx6C5kz&mn8YvmMWSH)TNrpyBNi`*|*t$i9E-59e)M8B=B^B*b z?F`rTl;7+1J?|gybI$zwcz>_^{yrd`Jj^qfAtzt_-57X@_`u=tkWpse5hLJ{;^XNF z;v4Ac;zQ#&k9Z!vN__Z8)VGR%Pwx~TdO7MHqs{rxjfW?SN7LQnlSiSxT72VZc$@ga zG4RkaX5TOPi-FPNr;X)2;up}<#mCcg#kbPS#7`fGe4qIE@$fG3&Ge82bABH^TKppZ z;#-pV2D(f9TY8!JOA|0pqj&4TZaKHGZ+u`;r%sFS$BgOOR3F7T^xA>7veKzV7#WUz>;%>T2Jdd6)zLZ`fzLH)kzK&iiUPW&bZ=-jKC(XgW zA|}~-59|Mru6M)J#WU}M=ZF{3i^PAXmx-^v8#z_tHS~J%_vkI+gXSW~FMcE4cBQ#5 zCp}zzF5Mx%iJmC_Dm_hnAKfJ$or5{^#i!6q#5dEM#Ltj0UE+et@1V{wX~}{2O|X_;2pT`6&`VlU^o%9=%HZ zQhL4kSbCHAWO}>!40^YCE0DdKO_o#F@RMdID`3i0Ioa6WzF zv+1qkJLtA+%zb@Cj}*U%Zy3rHKllLp7K&d}2(J>~M&BoHy??V)+|Bn=M^KTP&|WPCccGUEpA_i zoCfhL=xyRYdg4@b{tb^HCqvx*D14)Mq8DB-?xr`3m(l&=KDvFHIgg(nDL(uU=o>FS zpPnkdmYylTn_exxVL9>}#COrdt~ckj-hUkJ05Ir@6U@1>WCzesNu zU%3`Jp=suvA63Ak#Y3NgCyS@io#IRBh2neYHR5NkL%wagIZr-4Tzoq{O?>dP$Z?Ag zr&o!`R-(RHeA#+bMF2X8=qns_d~QapV#>N~~H*#fuUXyzY!iTUDtYTz#M zgYV4wd=*{92Uq*e0`0Ml@@niJxbaTI5OMD?O6k)x8$eQPKdd{8ZoU6|Z zR@iLC;#=v>;@=NNyI=nR zru)R5!AB+Rv8b;U-$ZW| z@1Td@W%m7e1pA8rL{AnE;{{io;v?y~;zjgg@uT!g@vBE-o(}Oz|7Cg~y9uLoX6Pb{p#V ziMul4ar4al(b;gXxOKgj-zYv{HR_wir_t^AnE8*<GTHi za(b6|D?NIlInM?BoQ_QK75v)Z z81V^oxA>pvk@uT9PaQ^1oOn4sReT%WCBBV_FZqdm#rM%G z#n1m4^|j(L^ltGlZGCzNOj&Hs`BEQvrg$U0MEpfw2(3|kX zJQL{=;y2P`#Ixv0;`h?i#f#}~@u%s9;+yC`anGrkzeU_j_ls|$Cls0c9djCTip8z# zvet-iKJb6H$-T_04%{k}Mqr{)0 zCyReZ&k+BdULwA0Ao^B{H_-j!*7cU{%gi}P@jA>I;urJ!$+_aA=*8mJb(kx}=dr$4 z+`2yVKJgW-Zx?T-_lQRh!g&aP#N5|pdXo4T^bGOX!N|!K&!Bt7%jlKjP4rsvNxX1o zlXxcGFa8ic*&$quhWynhyND)a*C(YJ>v7}rQ$2-)#Cf<4dTb?ZQ=vZ#XLRY zGw2asbH5(COT2psatg)6BjIJ@zo%D;PoVdRZ#@q=34bu>*>*nMDc(ab6pxNVeYJQq zy+yp=P}GMnH~W4_&k&z;0qU#7pO1!jh&zYD9gms$p$>Sy_$QaZ8^zaM29GE)bFAyh z$BE~RKz*V3r6b{W;@0)&o5auOb>=(7t?Sa;R+#gYus&Sex?X*Z_#W10id)yQ&lj)d z_3bx`kBP^=I>hIWg4w>RsZ~#=!H%kI+lS$0VSBpZGuMA&;B$JT?~f zQR2_j6U2AXJ>vbwA*W1y61`gdF1kFfb3~v>mMeh_} zOShMqbNcBK;%84mzFYj%YvG0BOX;QJKhWF6+ftF!B|dm6Jo!m;&bOw)GsM5ASBbAr zLw&vYh120p;&;&7#owTJi`#BMPRbf{&OPaHr+7ELT72NmsP~Dx=wVNp`NuO*A1&^> z1?~|)J`?U0A9E|bLfk{I5kE$^m7DYY^LFHfi;ukn?hwD9o-ck~7V1mHpQg8pJ7%H2 zQ@ntl^t3r=2tRnhDSiRnD}Hni@+-tU>9yj6-KcL9-$(BjKS)npYtA`#K61R`FXX`+ z#J^qyZx_$J7v3X2pC0{3vu_5@nET;g z@n`9k;xE!0#lNG6KV$a&_yOc+itj3fd&G~>E5)CB5cPH9o9IpAJLv7=A&ZgYSZB^T z=OK8K_#%3`__K7kcniHq{3m+7c-+J28~Us{k9`f?ExxD*UM9YkUMv1Cy+eHQR^&uh zntfxp!PCS)p%;n|c^UPM;!n{-*PHnfwWyC4A4|^=|A1a1KKB*m_{8no;r8duzFvBy z_$GRq_?0`5Q!IXnUMKFUL%m=8D|*xhbDo@6QSTA&_ZqxZd>Fk!d^f#Y+_e)qF&oXk zed^)4;$`#_@fv!i_-=Zwco)4d<|2X1@b?0eT+OJh#UuX(uN7ZLw{0?Wj)vQNAyK^VAb5%Rt_XOY z_y@m*H;bQpECMUGeeHV?c_{C#@F%VuBaBGjje|C3%N{^Y%=_la+%`^AUehx&+Gv+oo1 z9P#n_s4o`3iC!bVi{2_8SAd*^SIoX=JOEDk5C zcZr|(I6Pl`9KA$*CcRR8KD|l&OL~X6y%c?W#6#&}ubTS`r$>v&(-XvRrl*QK>6zkL zbdUIKx>tNIy+S;fUL(GQ-XQ)cy+wRI-7oH=+g>xzkNpXp&v5afbcgsLM? zo-2OYD)g-re`^igzSErZ>=)o^;#HgBZt*wiwc_7xLA_smxA{ zcZ&ao9`}a1uf2OwpDcce?iEjY2le&hZ_?Yv3;u?B`nO(qHp{zbIv?^v3T_-+^_hM4!B=DmTqq_^C!_G#nb8W;&bS!;`h^C;w$Kd z;+6C=@t5hg-R7MCIcD#LRPmC};a>6IeF680|AXEl{uSLX9_2?) zcpE)Q{5U;Bd{7VabHy*Ad&N`fmEw2M>%^DPo5Y`_cZk=~ZF|lA{*@jre(jH#zes$A zt#5BYxp*br`n;D@0#(7=E_$QXAE391AES4PchV!@G3USRH<%|y{7Je;y#FbvuM}TI zx5efa%=2X38F=(8#G~7KwlF&;;#Fz20@mv{P7tDywSuiUrM{(hTUmQ`h@;t$nzr6T0HSi}RN84g&EtoeidwyWV z`3pSRu~Vka7@p_Jnl+cN=geOeo4as9ZuUY?0efY;@0h(XYhE_a>;LyYDiH9Sz^$JI zCGquF)_LY@%lXnaB=98oou?i(J*2m!E;IODWwQ+m+=6|eHd{mx1IMtyE$DrMFHSh( z`rzvx5&Xjwj;Ir!2cO0SZoy1lpJK;)>vO+?wZS8*_x{(r(SfJI7MSu^x7J78|EmR` zMVT*cBLlBbw*Qu`r}tL6pTL6P{(}?g{wD@3*#Gjt?ZhKTj)g{x9oO-(&w@R^kbM%3#ky$qn3sS$h6+xjxNm6f6!LQN8!S z-pvg>J=yt7y6TMHA}_x%!Sfe9qt^V^_s_C`ovgpF3G)~IAN`90>rd9d@oMz%IH7;& zN&1(w|G>cGiAT~0=$|6}_5A%Quqarf>%AXhebb4df#=r#t;gU$tDS6pM)S$nhcVB3 z^l^P0-Fk5B$NESM_-Jj%dJO*9x1OI^n#}blTJX8neiX1%1GoS2_mAs!E^FVxtl;r= z;1_15>_$$AG@B=LjAJHEyG z!GVWs13zS~{?_`_07G}<6RrkFT5hbWFj7>As}(SQyHkvVA*jhAtvaxmlN7{yBvJw_Nc;D!0GwcgAB z{l53BMCUx`ah_BCJe}I_Z>{&X-uvbIzOQ+Cqc=VO&G)=$Q~KXla@ueHchjbqZrlFi z5!E?%Pp$UkcCnZ zSgQkTbzrRytkr?FI z2mWbw;K}vFwf{f<|K;EJeYLg!*KDv>2iEGqKc_nIwBP!dwYC4(Z1BHY9r&vM`p31k z|JQ7=RtMJVz*-$xs{?CwV66_U)q%A-uvQ1w>cCnZSgQm7AJ&1nc4OvXr!jNj-~;_; zZ+y_JMN;dv4>bn8*7BjwOcRdrPS@P{Eq=yknu~+h;1rxkdX2??yD@0a!ZFbqxL=dg zjkcmgOYMRA6@~r1rT$=P0l)6=4dy%e`(UeivfJqm@N=>`*wb!x$J>p?W*_bYa4)sn zdt3cMV{y89xY_8H>3)U#7H1$j(p=ut>GWo{OH_wDy@f`5Sbpy5v^%|#rK#{UKo#$r z9<)w0;d!vsYfiR1l9qjojj6V0a3c{ZNEG%gO*I!9-I8A9ran2}m}yETTyVi{;{CnG zLUU?qc2;$eeM?!2o!1oZZnp*n(psEJiN&F|*xhcb!CY7gGqt_V?qL2%voE%AT8v2P zP@{jmpyZG#?QTpTpKVMxr6^mAb5XS{&~!M@QW@Z5KYYTA1vNR{>i0XnG+8NhuHfaN zRvY6H-;4Y&|0Bgp{2w*$bV{U|xJl zt#-+nOrTR7G<(g?1j;6~mYkiWKkyb5u*mTh8 zWyoZ++vuSILsv4=>rC&OndvqAt}#B??DbonMGJ}QmNyN;Cpy|}&CN^oK~RLfa!Og* zHN>%*z0KJMdJhZ2no1TP>`eEg?gNW$^iXER-HpMt6q+#?Fx-1O-BXk%kcnm=C0JyQ z8MEPdYq{ALE0Dsj!JwgmTM@uGgXXds8;Y)!3$(1duiacgUz+z3g%5ORP%eeg%Fua` zlyX$NdcB79)k&f}OcV#`^rx1z2BgX?=rvASN_-G|Q$ndINX8beE0_9O5P46mVo95n zF-2Qd+A0!?y64hFDJ{djtrIQuAc)?oM8Tq{l&DON0c!aJi>+CVAkZX;GKYP@5VBJU z<6;3#Yh#aava!%@YXI8RcKhb>no|2vEfjU5IGaq%}g{=Gj%Kpio4O@7m(EQ z0zz5 zm3oo3Ug&AR<@#tiNp3@A*9a)vX;kQtQZ^3_WXX$amalLa_ockOQW%lu_<7&C&}o;E5^?O?Olt=X(b z2Ac_;aXi$+v|~SdyurSQmm27!9z+3ldfQ*y>~;L_`xl%3C;D^x`Cy~H6hxCtQ-dBx z1~2#SMCo92aSp?vi^N=$5BEIS+mTUYW+{fUr`PHC3k-E$Cv?G=b5lUO7U$X_WioOm zKqr^pw@ffw-S#Q(KHQv>A#ulYlbb0lXUCXV0lE!lJ!xEuF z4Wos(rbnASbU?x2X(bzum25axvf{+6{BH zGe=Sdl4>`cR=W|Zb|bOcjl^mvKRLLOLbVI-L@B8-BgL*{q*P%>3Kb@}V}%*vj$x!w zl}C~a1m9GFMvApzB$mTSEC-}A6y`{|tVa@?k2s^+5VyC9!dqx9HZa#Sg8GJ~P58ao z?{@m$?E*4kSZte9>~6n;navsUn>x+t#${IxiEN<7gs!P2zfO;yU`8)cxAm zc)wN*7OG$In+sh>zbjLW6Fv#H4`9-RozC%H!9Ko1$Mz>#Ph6I_h=N7RsHhsO8dY75 zj3CyE$XwAx5X>HteiX!J zU4lnCB_zSb{w${DNGC@{d*2e0nFLxQvNxnN#~5DHDr71gYyIBlv~y!-bpU%0*pBJj z8epb2)^|i&()6G?Q$rt*Nw&xPPRKIKmPFof4RfiYuZTuF?U}txSno>D9x-NSb7sZ@ zw4OdHj<*)4=S!MOgX$hk-+B#9QkL1*FXcttDN>NBj_$H=UD{ z^PQ#k%$~N@nPtr6AHl|qNNVV?*@^W$romo_`ebTHS_8~=f^)pnZ)x!df?#xw6+vS; z1*z-)Zevb`4kd+uLi{MoyIL?tvJ<3}V|)!Rhv$;Il0|Mh} zOKZD1{q~7kTopWVdnc%G!Q)cXbv7yVtL;!qM>-F6dhMBs#;JYFu_z-I=6XmywJ5q_ zRLziN1izuJ;T`E%!C0UPD(RRv({~XY+CM%i%DOSAZA@y2Z)_82`<;bJ>HVN%E}MwR zqTfqh&*wHSofijT8J#E|?93f(o@lmf-i4il@umK}GhoObYK@+Q$k;iK&D;fJ3T9a z5^{Y&j%6e{7}ypX1Mk%rvIXQ^E|KtP!%tK?&|GwmL#-~3S|k|hP8wnEzYEGcik^v_u+t?}12)$|#b3Hej){b=MuvbKb ziGkfX2W^mJXo4YZ8xyoUHenbfT%chvM05^?k-@p+$l?9WpX#@;l~Pn3cf905 zmf6kz{DjP)VmvyW-jDs22PO_mirskqU~9_FRFUH0?P3N$5m0OHZ44S}oP^pqYH8DWz+J!*utz8#Y_;9nhXeyFG=$tcH5ItKIHQ%MUb3|8qYM zpES<>t#(tBXR!t6WCN33FO%vc4r$L+?_COm#QRY-q|JMi@I!*Yy5H?8yU&*OYpB$y$fcXdA(FmczP62L^W+m^MxPxXGO^5`g+F>B~y?SfY9 zf<-Zkl3RE>7e*-^Kb&))?{qNSz<95Dq69G-9>=sK@S1c|aY6@&t5pbKR~KtiJ2i>=R@lKU3GHM1;CM42 zwU3-p=nq-?)b`9b7UxJ~tS^Zazb^BVSDSH|G4}R4-7cE8l&kw~F}dhXY>4wNMCak? zg4M4t7*)-}#CE}dP5NFm=pwOot z+WTVvb8>XoHu}B&#rJ7ycP$M%7)mh^>-_T|s;FxyIf+$*oCFQ!&afn3$I2Rd%3jga z1aj4zkxA_2pwlgc7=@@krwT%pDpnAvfPGmqu>)=i=&louR$G=dQk;%y0}2|umj;8*q7S2hT~eG!Q>8>D+>)0d zA8L$SHdn%e(CG@3=AZ||n6~>R!Wbx4YQ+Q+bjc$^i6d%BQ*cxap}$@eex<`7qTJhT zV|al*RngA&g41@pd?*jiH=Av3%)EmTf)3&b1s&-uP0woz^p~bUe{l*Nz$J|_okmBu zGu**ld+P@d)*swAF*$bs;rh1vR=vtppKI%aXaCaTv`cyGrg7mKRa^!;5g*F^-nupTb1 zIgN-~0m*eC-30PFo%X3Y?3>B>>X58V+>DoqTckMRZz_4G)iJI$uG(?EaVVzQn|s?{ zAGar1p1Pnxf~i8z5*RGbG~_seK~;7U_2S-vQv2KHW0uK2e9P+3BN_04w2s6?GmQy% z6ubI)buWlM&{1K1=c4TUIHd#C6@)ikB}O2)St zPn1Rbm;J>QB{FY_Xq~LMB4qD729ACD zk<3#esqml)xPMA7I0b{Id?|@RJw!6rw~&3F#`;N?u%VvHA6UdTl|#iEw>?f#>>8ol zvGLYMiP#p4-#qn^Cbh9x`J@40U6Y2jr-ylT({KK`2n?o*R&WJHgGEKT_*h_ePQbfE zwgu)QlqO-epgJMb@Jb&j8S9zczOf4^V83ZaTrXrc-F{n$M||kDy`n84aJd~@ob6yP z;EfywvGl<#$7NmPlbxj=*8DL!hLaFnnllM;l4N4!SP}x8OIv+f_gOr{m7E1hBrJ$A zVcl&zls-Rxx8J)ll{#Kf$(g}TS7cICtgJM-sSw@YEef1PwuMPd03olQguXF=q6)72 zxx#WP+oNGTDTcB=n#if({$Lu)a4D4GVkpC%GoepPMC3y z3TJj{x$9m_x&Po=vn|Z8QyT1@;E>Uj=9NPmPL%su%yg!-!>{(tOC-WNgnT zV>p|P;e0Y;<>6#dK_xhwjNyDTMh;J9^D=Tc)*23cjEyM46(-2qccdcGRoSn~{Zc+0*N2xTY}@N$4dpr-*SMFdb`&Js zknQriYxv8RUBYsepOH#GBbtKZgl0HSX!Ix&X9hERv!a1hI(?kQRU(z@H8i;yupcL* zdWPVoVJa#+j=ti_D$*to$&QI&Y)a0_l(aacI$3y{io&<_OxaUb#9bB9MSB1YlA3n{} zlW@oeMV?PkoVh3ZG=EQdMf%x@iHDK=)MqTt^;7i^vkAvzb^8E{p5ce^uvT+i@Amz`0Fwk!Hy z&1*mL#u1L`fqsn9$$(q(=${je_vC3a+;*S9eN>#BCce<{%`je@!N%mkYd{6zYYMS3U(m8CcfCz|y*J zBve*N-QacKNIHB4%(~Ro#u-1tkfg-&!xjeFq_iVj&JLEsCpvNoBDI%oCMPp5WKQ>+ zx9_E-c>8+ca84KsuUyQ-K7iajSL+du%w07T75{*#L#`UwQ>URmVjkl32!;7ZQafQl z-ZD*#ha^jdl5^pQf=vhUl9aj}DKblM@SK)sL70@S$-F@{eR@0`XL7}`DPbiMrK%_k zI~XNFsFOuW7^X^s;D!5Pd0a$pbi0yd(KrqEMV<|7ykgK3p7%hLfFy>hQEa?oG!b4t zi5Mv?6t$o-wYfC;@z%)hfCmF7(v}v@9!y$sS8W zOv9Uv1+U@{Pzshpb1r!dDMfR#aT4P$E}Y}qx?L4>)hZ))<4<-#jDa|-hX197YO%{s+)51~v{6UmHfI1umAD1zRA~3nk&!TR1W*jc?Kede zI?b>TRVkr8y2MX88DW2_BCO%%s<0~gGVS;#v18w=6ici={d`{)HsM@D(gzv}TjVnK zIyBzuHudQ|*Ti(^Mz8vWL4!};oUdSc>v{@dh2|Wu4C%=l`NErebY@oQ9HNI1JNk>N z;L&RAMo>E8(mOyYav>n!Ske1d6#D>ggz`aIA?ma{aHehIAr#zev}Xkd#)1q7 zRX$elC7Vc}0RLP>Y`k{r;VMjQhR#Fa!RQ4+FmRDqd8mpx+N2OtTw0a{6>-F#BK1KH zq#&rs1??UeJXGX@*53sWRk`5FNa`haW<_3+?RchA@DQhx1wlnFXq8{^P?ZawA*Eho ze_P}gxrhfE1rJrZh+75)4^=gaW^Dx@G?b>2(vXl9SEVpBaAf`S2}fRmI{ylV)zd%& zLC!y&uw=zN#8fEUCVn2)@*&WzQWb2eP45Eee?Bb}Aj52W;DBuut!ef71z{3z`3@Hz=wU)UL%ku4U# zo9D;rbkX!rQ8as0gVRRop5iSMKGQ(zXhED=30G*`CZNI+zYs`FA>MW(&v)bG(keOEj-sqkNurpn z?Xwnz@U^NOm0qi0*{3uIcQf1z!>+D&bp2w53F3IRkk+V7$>xg{FT~Z_bpRVH@%aIq zY?rCK7iR~CdR8IrlQtTV4>N9Z+87&q)vmJZGqU^2@GaZz(vy4J@VHS(0gKX=7fZ&f zMF(>t7m44^^c~i&iQV;mliTalXzS=2r&_pVaVm6YCdKhlLGIdF(tqy8^I&sWES5YM z19zUoVa#rM{Q^p0cV`*#CEjr*74IyW#f8N>Oej}Z@XV3BFD_}D(jK+mPtSj?{QRLX z>rcx&AH1)Q-abykGx;Dr9nl^cMVM544?~?#qLD|Ed^EFdybjP8d%TWP%&HUsI@@|* zm)>croajWO*OFVhb$Me&x89fc4(7XTZ3yyIOgWbBDVMN96yPm+5In&%(r4GPTZyEF zsHh+J!;M7aQ^H~!aVn%X=#a2HNEDNA{R7GyU0}U2EiWAM@k;%6?F<_PA+_=dm2|5Hr-|`VcCNs+4J!;{`Q8Ds3OV9d_BSBV7OGO#F?Kw_o z6JJl`oTgGGPH`$#Fyrwy#H3^u8`$GT()r~QpwAw$kfSaMDN?;fZzU2cfbHdxtqT%2 zs`^DnK`J}r^oWE7#urHn`tIzgK%KFRw7A(_kh^YO?z#nudjOF{>CJn)|5YibdtFpI z$<RLAf-S?n0FcKk5I_Rw>{(;Y;UcSrwkyu|oOb5t0@fmye!``*s(wG%(VSX)Yy* z%RR5A2PswoZAwx&b}h>}l9IG|YMW7D|E|c21>$h}{ATP@V6&`7>{X&h$Tc0y=A_i+ zWW>3+L&#~g#U=uKCYSI^Yr=FFyewvWQ8Uq*cyk6f8CF-Q5=R~<&BdCPpOzQ33N;$H z+^D+y?lq-J`z39Tkg%TtxvrWe>B>?i)HGxfZk5}oqgo^MSVfgs&{ctypUW+V!40u0 z6j!HjBTjCSYBU^n&Qck9{yvEeV5zlSk_;w=<|M&3)VxX}YFkBF*c>VeLai=J!cx2> zD0*?mh%*J}!|^yq7kRaLoYy#lr(RcEG?nKK-mhD2meb<|6kD-(v67KpDqn3%9Z06| z^cg~}J85xK_hN%|enBVWyUBCwGhHK_IKQ-u-m~jF^UzNK%^i;fH>G z3U#7>LcbnS&Y$cQ$SZ?#61Q3Evmtr++a69tsS#=1^&mMXY!-K#+yV8%R%qjJoUHcYKgzjkO1citJ-9^JHvw0QS3v1sloK&eIB)jpRO-GC4 z4u{R8nn~}-%#>Bmcoo}8_n zzio(&LM#h8B?YO3TrXXQudrLSfV-QLKI%Rm?y^zg-0|KcCom;c175Q0&?2LlJPj7?owGe^+F*K z&7`|%cCQ`M&5gR{zr0j$B)dLtrlv1Qa69$VVp6YsmRWyT-yL#0h3!cY3yrSdoW{hs zu;sfTA8?UQGaSjve8XmheV#EBPL?>rb!WnL{b4#Ng5tKBu$&&xL(?J2(x;O)_$^Pz zRNmJsq`s@PNc{_EiUw5=ZZz;d>{!_)jQT9R7z}!Ud*EPnCJX23w`4 z$~@uOIq}5ZS!a40&nV+u(RFoh`lC;->ozIHVpn#BVk@7xzpqaStD>?VrcN59+tTF> zq#|t1Bw?Ai1iBXzi5h3edZv2Yeb+8@j{9)3FJCs&Yr?n}wUlIl=FHZa$;4k?fz?ln zrnr5U)yJUv+_v^d6QpG$JQ0W z5ZD62`;4pv$i{LS5#FZ6T#tg>Otb7urFQ0D5?XD^;A{d=0j%G513RTbMDA@z78=(* z2<@8_sRwr-JB8*uENhaoMK}drUri_~ceh%3w-=lCHN*&*ho?8-Ce4MAf z6yM01wB|9BQH`>esl8d;zKHAII}s%HcC4TGQlOmGfxHB{jZdb?$RpXo1;JFVS9tyGz1zvT_pqyBbM5ywigiy`oVl8`+ttn{I@scO-PtY^Nyj z?d+FalgMfyPqx^!vzL6%SRf~3|g>*%knpM`oJQ#|sSP15EX4eAyhcD17viZc-;w*&yzs0CH8vOj=m{ z*E{$GSQ4DA|EExU@EV$q?k;5H(3<^BwtM}%n@ZFhQK-nVm zfq0?KFth%fizn(0e6BYa_H3(-7Eo{C3l<$bAJlD4uco%p!i%)=**~f}J{{!_$x9Ym z@&!AyLw(SxH)jfm4yhvgqn>?mCKt^j7G&MdNhG;5TOXY4WYf}1OUsAfKiPWZ5&7B- zCEr@3o1RbMLvUHCb%9fIXCRr-xPYC zDO_By6y}y(8Y~4+=mLu3q*oK6w~-%_bm2QZh_!*0R;e_s#swcT^QzH_Y-El8V7fj( z6W7_RDz-`S{(X~SA&$z^ZQv>lzDew32{DV_EJjzT$Yo={NRUG)oBii^$oxZwG78d! z0`vPyUzzJau#1l{d;N#x`#W=bhU6w38OcnJoyfr19Aia!Kw^KaHl)7#1xQj9`{jcW z2?s--@~>?r1zWgMxc!olgJvmtViodF8b|CR$hN(!inp&W9%eC?))YP`3=&RIK}7E) zrL>@$QD~@f*d8yuW;E627{Xq1i_1KDBPV%IU&=`W4$|G_B7|8bG%jDiceT6o z4Y_Q`aCd8fc|}6x=`MY9E>nH9r4*#nysjRZq#?Ar_`KO-GlB9<)^LWLpoD7#BPFGg z>wqX zRD_8P?pYNy^+Qjp?&~LX(du!lu^0jNQyCqn;L0iIk>bLNkW3Bq$epzDq~7|mc&!q!yK0P6tt5lJmRqL z@8Q#;oa6CEzkg&N4~Nbrr5_rAum1|9AIC>f-NuO`tqilxUJ|D4M!dGuNqPaDnB=Rx zisaGLBoO{8S0d=OIz7CS^^x$EFqTeWO4#h->w`%V5oK!xoY;+MRyiq>pqv&5KAM^I zKI%?F>&OGCoO1mNBLnm-<<31q4$adf(-G!WlPr7H;iQ}LG|6y;g;1q$q;U~?#oiJ~ zy2@0k*m*)J){;~;@+4|G=E133VockfOU&UB`!$xB!lSZUVg^%lg^s5*+Su(nfh!Gi zsCO^EKiD1g?wxDTp2WC;n+DUnW@co|t|nhLo^N!U;Tv?2uMVW<;7AlJP+0o(Bt8_+ z3!!;Dnrdg#rKlL{guJ-G6+=j&gR6On;UB?tB~%CRD2w+u7Bz)lBdrWBS>kPX^AUNI zjaDvnx#33)QofIA!Jkn z?GL6}^;vx28P7*zL$A?CZ>r2TcW32`^y=>8ag15?Df-+MK3(2!pQ>Y%Pp*xbf?gn- zYhiP}*IB49G#BvAb{AA%c8sccSqJ-8F47kHlqluHH+>f!Lc}hm1U%PRSZI`JA0AvV zq6A&+MzJnY(tSk6l^Ol$IQHM$*!!-};hrBZkKjcfYKgK&6^}ma^Z2}Nvp3sr%(;Zh zbvw0G%x%GzB|EBxl@@J*z%q6heTS<(q|wjjQdi%0AK`+dT&$YRZTFd=5HZ_s%HFh9 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 z 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

Z01LoHF;R4-!i~BR(^%^ff>RR<{ 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�WO3A4Gl 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

3%sVlyV_L*CiwTMe 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 literal 0 HcmV?d00001 diff --git a/makefile b/makefile index b45c76b..6a3e5b3 100644 --- a/makefile +++ b/makefile @@ -1,22 +1,34 @@ CP=clang +CROSS_CP=x86_64-w64-mingw32-g++ CFLAGS=$(shell cat compiler_flags.txt | tr '\n' ' ') +WINCFLAGS=-Wall -lstdc++ -lm -Iinclude/windows -lwinmm -lgdi32 -Llib/windows/ -lraylib FILES=$(wildcard src/*.cpp) .PHONY : clean cross-windows all release debug build/linux/raylib-test-linux-debug: $(FILES) mkdir -p build/linux - $(CP) $(FILES) $(CFLAGS) -g3 -o build/linux/raylib-test-linux-debug + $(CP) $(FILES) lib/linux/libraylib.a $(CFLAGS) -lX11 -g3 -o build/linux/raylib-test-linux-debug build/linux/raylib-test-linux-release: $(FILES) mkdir -p build/linux $(CP) $(FILES) $(CFLAGS) -O3 -o build/linux/raylib-test-linux-release -release: build/linux/raylib-test-linux-release +build/windows/raylib-test-windows-debug.exe: $(FILES) + mkdir -p build/windows + $(CROSS_CP) $(FILES) $(WINCFLAGS) -o build/windows/raylib-test-windows-debug.exe -debug: build/linux/raylib-test-linux-debug +build/windows/raylib-test-windows-release.exe: $(FILES) + mkdir -p build/windows + $(CROSS_CP) $(FILES) $(WINCFLAGS) -O3 -o build/windows/raylib-test-windows-release.exe + +release: build/linux/raylib-test-linux-release build/windows/raylib-test-windows-release.exe + +debug: build/linux/raylib-test-linux-debug build/windows/raylib-test-windows-debug.exe all: release debug +cross-windows: build/windows/raylib-test-windows-debug.exe + clean : rm -r build/*