diff --git a/CHANGELOG b/CHANGELOG index f6a3e8ad1..053ff3018 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -747,12 +747,13 @@ Detailed changes: [rexm] REVIEWED: `Makefile.Web` before trying to rebuild new example for web by @raysan5 [rexm] REVIEWED: Using `Makefile.Web` for specific web versions generation by @raysan5 +[external] RENAMED: `rl_gputex.h` to `rltexgpu.h`, compressed textures loading +[external] REVIEWED: `rltexgpu.h`, make it usable standalone by @raysan5 +[external] REVIEWED: `rltexgpu.h, fix the swizzling in `rl_load_dds_from_memory()` (#5422) by @msmith-codes +[external]`REVIEWED: `rltexgpu.h, decouple logging and memory allocation from raylib by @sleeptightAnsiC [external] REVIEWED: `jar_mod.h`, buffer overflow on memcpy by @LoneAuios [external] REVIEWED: `sdefl` and `sinfl` issues (#5367) by @raysan5 [external] REVIEWED: `sinfl_bsr()`, improvements by @RicoP -[external] REVIEWED: `rl_gputex.h`, make it usable standalone by @raysan5 -[external] REVIEWED: `rl_gputex.h,, fix the swizzling in `rl_load_dds_from_memory()` (#5422) by @msmith-codes -[external]`REVIEWED: `rl_gputex.h,, decouple logging and memory allocation from raylib by @sleeptightAnsiC [external] REVIEWED: `stb_truetype`, fix composite glyph scaling logic (#4811) by @ashishbhattarai [external] UPDATED: dr_libs (#5020) by @Emil2010 [external] UPDATED: miniaudio to v0.11.22 (#4983) by @M374LX diff --git a/HISTORY.md b/HISTORY.md index 4fc5569d5..b68ee44f4 100644 --- a/HISTORY.md +++ b/HISTORY.md @@ -419,7 +419,7 @@ Highlights for `raylib 4.5`: - **`NEW` Support QOA audio format (import/export)**: Just a couple of months ago the new [QOA file format](https://qoaformat.org/) was published, a very simple, portable and open source quite-ok-audio file format. raylib already supports it, added to `raudio` module and including audio loading from file, loading from memory, streaming from file, streaming from memory and **exporting to QOA** audio format. **Because simplicity really matters to raylib!** - - **`NEW` Module for compressed textures loading**: [`rl_gputex`](https://github.com/raysan5/raylib/blob/master/src/external/rl_gputex.h), a portable single-file header-only small library to load compressed texture file-formats (DDS, PKM, KTX, PVR, ASTC). Provided functionality is not new to raylib but it was part of the raylib `rtextures` module, now it has been moved into a separate self-contained library, **improving portability**. Note that this module is only intended to **load compressed data from files, ready to be uploaded to GPU**, no compression/decompression functionality is provided. This change is a first step towards a better modularization of raylib library. + - **`NEW` Module for compressed textures loading**: [`rl_gputex`](https://github.com/raysan5/raylib/blob/master/src/external/rltexgpu.h), a portable single-file header-only small library to load compressed texture file-formats (DDS, PKM, KTX, PVR, ASTC). Provided functionality is not new to raylib but it was part of the raylib `rtextures` module, now it has been moved into a separate self-contained library, **improving portability**. Note that this module is only intended to **load compressed data from files, ready to be uploaded to GPU**, no compression/decompression functionality is provided. This change is a first step towards a better modularization of raylib library. - **Reviewed `rlgl` module for automatic limits checking**: Again, [`rlgl`](https://github.com/raysan5/raylib/blob/master/src/rlgl.h) has been reviewed to simplify usage. Now users do not need to worry about reaching the internal render-batch limits when they send their triangles to draw 2d/3d, `rlgl` manages it automatically! This change allows a **great simplification for other modules** like `rshapes`, `rtextures` and `rmodels` that do not need to worry about bufffer overflows and can just define as many vertex as desired! diff --git a/src/raylib.h b/src/raylib.h index 951f1ffb3..2e849c917 100644 --- a/src/raylib.h +++ b/src/raylib.h @@ -40,7 +40,7 @@ * [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 +* [rtextures] rltexgpu (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 diff --git a/src/rtextures.c b/src/rtextures.c index cf19edd1e..45b615cf7 100644 --- a/src/rtextures.c +++ b/src/rtextures.c @@ -100,19 +100,19 @@ #endif #if SUPPORT_FILEFORMAT_DDS - #define RL_GPUTEX_SUPPORT_DDS + #define RLTEXGPU_SUPPORT_DDS #endif #if SUPPORT_FILEFORMAT_PKM - #define RL_GPUTEX_SUPPORT_PKM + #define RLTEXGPU_SUPPORT_PKM #endif #if SUPPORT_FILEFORMAT_KTX - #define RL_GPUTEX_SUPPORT_KTX + #define RLTEXGPU_SUPPORT_KTX #endif #if SUPPORT_FILEFORMAT_PVR - #define RL_GPUTEX_SUPPORT_PVR + #define RLTEXGPU_SUPPORT_PVR #endif #if SUPPORT_FILEFORMAT_ASTC - #define RL_GPUTEX_SUPPORT_ASTC + #define RLTEXGPU_SUPPORT_ASTC #endif // Image fileformats not supported by default @@ -161,13 +161,13 @@ #pragma GCC diagnostic ignored "-Wunused-function" #endif - #define RL_GPUTEX_MALLOC RL_MALLOC - #define RL_GPUTEX_FREE RL_FREE - #define RL_GPUTEX_LOG(...) TRACELOG(LOG_WARNING, "IMAGE: " __VA_ARGS__) - #define RL_GPUTEX_SHOW_LOG_INFO - #define RL_GPUTEX_IMPLEMENTATION - #include "external/rl_gputex.h" // Required for: rl_load_xxx_from_memory() - // NOTE: Used to read compressed textures data (multiple formats support) + #define RLTEXGPU_MALLOC RL_MALLOC + #define RLTEXGPU_FREE RL_FREE + #define RLTEXGPU_LOG(...) TRACELOG(LOG_WARNING, "IMAGE: " __VA_ARGS__) + #define RLTEXGPU_SHOW_LOG_INFO + #define RLTEXGPU_IMPLEMENTATION + #include "external/rltexgpu.h" // Required for: rl_load_xxx_from_memory() + // NOTE: Used to read compressed textures data (multiple formats support) #if defined(__GNUC__) // GCC and Clang #pragma GCC diagnostic pop #endif