diff --git a/src/external/rl_gputex.h b/src/external/rl_gputex.h index 29500f3cf..07a6c8d29 100644 --- a/src/external/rl_gputex.h +++ b/src/external/rl_gputex.h @@ -100,6 +100,7 @@ typedef enum { RL_GPUTEX_PIXELFORMAT_UNCOMPRESSED_R5G5B5A1, // 16 bpp (1 bit alpha) RL_GPUTEX_PIXELFORMAT_UNCOMPRESSED_R4G4B4A4, // 16 bpp (4 bit alpha) RL_GPUTEX_PIXELFORMAT_UNCOMPRESSED_R8G8B8A8, // 32 bpp + RL_GPUTEX_PIXELFORMAT_UNCOMPRESSED_B8G8R8A8, // 32 bpp RL_GPUTEX_PIXELFORMAT_UNCOMPRESSED_R32, // 32 bpp (1 channel - float) RL_GPUTEX_PIXELFORMAT_UNCOMPRESSED_R32G32B32, // 32*3 bpp (3 channels - float) RL_GPUTEX_PIXELFORMAT_UNCOMPRESSED_R32G32B32A32, // 32*4 bpp (4 channels - float) @@ -810,6 +811,7 @@ void *rl_load_pvr_from_memory(const unsigned char *file_data, unsigned int file_ case RL_GPUTEX_PIXELFORMAT_UNCOMPRESSED_R5G6B5: case RL_GPUTEX_PIXELFORMAT_UNCOMPRESSED_R4G4B4A4: bpp = 16; break; case RL_GPUTEX_PIXELFORMAT_UNCOMPRESSED_R8G8B8A8: bpp = 32; break; + case RL_GPUTEX_PIXELFORMAT_UNCOMPRESSED_B8G8R8A8: bpp = 32; break; case RL_GPUTEX_PIXELFORMAT_UNCOMPRESSED_R8G8B8: bpp = 24; break; case RL_GPUTEX_PIXELFORMAT_COMPRESSED_PVRT_RGB: case RL_GPUTEX_PIXELFORMAT_COMPRESSED_PVRT_RGBA: bpp = 4; break; @@ -913,6 +915,7 @@ static int get_pixel_data_size(int width, int height, int format) case RL_GPUTEX_PIXELFORMAT_UNCOMPRESSED_R5G5B5A1: case RL_GPUTEX_PIXELFORMAT_UNCOMPRESSED_R4G4B4A4: bpp = 16; break; case RL_GPUTEX_PIXELFORMAT_UNCOMPRESSED_R8G8B8A8: bpp = 32; break; + case RL_GPUTEX_PIXELFORMAT_UNCOMPRESSED_B8G8R8A8: bpp = 32; break; case RL_GPUTEX_PIXELFORMAT_UNCOMPRESSED_R8G8B8: bpp = 24; break; case RL_GPUTEX_PIXELFORMAT_UNCOMPRESSED_R32: bpp = 32; break; case RL_GPUTEX_PIXELFORMAT_UNCOMPRESSED_R32G32B32: bpp = 32*3; break; diff --git a/src/platforms/rcore_desktop_rgfw.c b/src/platforms/rcore_desktop_rgfw.c index da1bded6d..6d394e692 100644 --- a/src/platforms/rcore_desktop_rgfw.c +++ b/src/platforms/rcore_desktop_rgfw.c @@ -518,6 +518,7 @@ int RGFW_formatToChannels(int format) case PIXELFORMAT_UNCOMPRESSED_R5G5B5A1: // 16 bpp (1 bit alpha) case PIXELFORMAT_UNCOMPRESSED_R4G4B4A4: // 16 bpp (4 bit alpha) case PIXELFORMAT_UNCOMPRESSED_R8G8B8A8: // 32 bpp + case PIXELFORMAT_UNCOMPRESSED_B8G8R8A8: // 32 bpp return 2; case PIXELFORMAT_UNCOMPRESSED_R32G32B32: // 32*3 bpp (3 channels - float) case PIXELFORMAT_UNCOMPRESSED_R16G16B16: // 16*3 bpp (3 channels - half float) diff --git a/src/raylib.h b/src/raylib.h index 5635546e0..80d17f4b6 100644 --- a/src/raylib.h +++ b/src/raylib.h @@ -843,6 +843,7 @@ typedef enum { PIXELFORMAT_UNCOMPRESSED_R5G5B5A1, // 16 bpp (1 bit alpha) PIXELFORMAT_UNCOMPRESSED_R4G4B4A4, // 16 bpp (4 bit alpha) PIXELFORMAT_UNCOMPRESSED_R8G8B8A8, // 32 bpp + PIXELFORMAT_UNCOMPRESSED_B8G8R8A8, // 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) diff --git a/src/rlgl.h b/src/rlgl.h index 884110c56..0b1a01b70 100644 --- a/src/rlgl.h +++ b/src/rlgl.h @@ -458,6 +458,7 @@ typedef enum { 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_B8G8R8A8, // 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) @@ -3511,6 +3512,18 @@ void rlUpdateTexture(unsigned int id, int offsetX, int offsetY, int width, int h else TRACELOG(RL_LOG_WARNING, "TEXTURE: [ID %i] Failed to update for current texture format (%i)", id, format); } +#ifndef GL_BGRA8_EXT +#define GL_BGRA8_EXT 0x93A1 +#endif + +#ifndef GL_BGRA +#ifdef GL_BGRA_EXT +#define GL_BGRA GL_BGRA_EXT +#else +#define GL_BGRA 0x80E1 +#endif +#endif + // Get OpenGL internal formats and data type from raylib PixelFormat void rlGetGlTextureFormats(int format, unsigned int *glInternalFormat, unsigned int *glFormat, unsigned int *glType) { @@ -3529,6 +3542,7 @@ void rlGetGlTextureFormats(int format, unsigned int *glInternalFormat, unsigned 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; + case RL_PIXELFORMAT_UNCOMPRESSED_B8G8R8A8: *glInternalFormat = GL_RGBA; *glFormat = GL_BGRA; *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; @@ -3560,6 +3574,7 @@ void rlGetGlTextureFormats(int format, unsigned int *glInternalFormat, unsigned 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_B8G8R8A8: *glInternalFormat = GL_BGRA8_EXT; *glFormat = GL_BGRA; *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; @@ -4842,6 +4857,7 @@ const char *rlGetPixelFormatName(unsigned int format) 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_B8G8R8A8: return "B8G8R8A8"; 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) @@ -5110,6 +5126,7 @@ static int rlGetPixelDataSize(int width, int height, int format) 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_B8G8R8A8: 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; diff --git a/src/rtextures.c b/src/rtextures.c index 18ee1af99..73fe86f03 100644 --- a/src/rtextures.c +++ b/src/rtextures.c @@ -1374,6 +1374,18 @@ void ImageFormat(Image *image, int newFormat) ((unsigned char *)image->data)[i + 3] = (unsigned char)(pixels[k].w*255.0f); } } break; + case PIXELFORMAT_UNCOMPRESSED_B8G8R8A8: + { + image->data = (unsigned char *)RL_MALLOC(image->width*image->height*4*sizeof(unsigned char)); + + for (int i = 0, k = 0; i < image->width*image->height*4; i += 4, k++) + { + ((unsigned char *)image->data)[i] = (unsigned char)(pixels[k].z*255.0f); + ((unsigned char *)image->data)[i + 1] = (unsigned char)(pixels[k].y*255.0f); + ((unsigned char *)image->data)[i + 2] = (unsigned char)(pixels[k].x*255.0f); + ((unsigned char *)image->data)[i + 3] = (unsigned char)(pixels[k].w*255.0f); + } + } break; case PIXELFORMAT_UNCOMPRESSED_R32: { // WARNING: Image is converted to GRAYSCALE equivalent 32bit @@ -1775,6 +1787,7 @@ void ImageResize(Image *image, int newWidth, int newHeight) case PIXELFORMAT_UNCOMPRESSED_GRAY_ALPHA: stbir_resize_uint8_linear((unsigned char *)image->data, image->width, image->height, 0, output, newWidth, newHeight, 0, (stbir_pixel_layout)2); break; case PIXELFORMAT_UNCOMPRESSED_R8G8B8: stbir_resize_uint8_linear((unsigned char *)image->data, image->width, image->height, 0, output, newWidth, newHeight, 0, (stbir_pixel_layout)3); break; case PIXELFORMAT_UNCOMPRESSED_R8G8B8A8: stbir_resize_uint8_linear((unsigned char *)image->data, image->width, image->height, 0, output, newWidth, newHeight, 0, (stbir_pixel_layout)4); break; + case PIXELFORMAT_UNCOMPRESSED_B8G8R8A8: stbir_resize_uint8_linear((unsigned char *)image->data, image->width, image->height, 0, output, newWidth, newHeight, 0, (stbir_pixel_layout)4); break; default: break; } @@ -1976,6 +1989,20 @@ void ImageAlphaClear(Image *image, Color color, float threshold) } } } break; + case PIXELFORMAT_UNCOMPRESSED_B8G8R8A8: + { + unsigned char thresholdValue = (unsigned char)(threshold*255.0f); + for (int i = 3; i < image->width*image->height*4; i += 4) + { + if (((unsigned char *)image->data)[i] <= thresholdValue) + { + ((unsigned char *)image->data)[i - 3] = color.b; + ((unsigned char *)image->data)[i - 2] = color.g; + ((unsigned char *)image->data)[i - 1] = color.r; + ((unsigned char *)image->data)[i] = color.a; + } + } + } break; case PIXELFORMAT_UNCOMPRESSED_R32G32B32A32: { for (int i = 3; i < image->width*image->height*4; i += 4) @@ -2464,7 +2491,7 @@ void ImageDither(Image *image, int rBpp, int gBpp, int bBpp, int aBpp) RL_FREE(image->data); // free old image data - if ((image->format != PIXELFORMAT_UNCOMPRESSED_R8G8B8) && (image->format != PIXELFORMAT_UNCOMPRESSED_R8G8B8A8)) + if ((image->format != PIXELFORMAT_UNCOMPRESSED_R8G8B8) && (image->format != PIXELFORMAT_UNCOMPRESSED_R8G8B8A8) && (image->format != PIXELFORMAT_UNCOMPRESSED_B8G8R8A8)) { TRACELOG(LOG_WARNING, "IMAGE: Format is already 16bpp or lower, dithering could have no effect"); } @@ -3020,6 +3047,15 @@ Color *LoadImageColors(Image image) k += 4; } break; + case PIXELFORMAT_UNCOMPRESSED_B8G8R8A8: + { + pixels[i].b = ((unsigned char *)image.data)[k]; + pixels[i].g = ((unsigned char *)image.data)[k + 1]; + pixels[i].r = ((unsigned char *)image.data)[k + 2]; + pixels[i].a = ((unsigned char *)image.data)[k + 3]; + + k += 4; + } break; case PIXELFORMAT_UNCOMPRESSED_R8G8B8: { pixels[i].r = (unsigned char)((unsigned char *)image.data)[k]; @@ -3262,6 +3298,14 @@ Color GetImageColor(Image image, int x, int y) color.b = ((unsigned char *)image.data)[(y*image.width + x)*4 + 2]; color.a = ((unsigned char *)image.data)[(y*image.width + x)*4 + 3]; + } break; + case PIXELFORMAT_UNCOMPRESSED_B8G8R8A8: + { + color.b = ((unsigned char *)image.data)[(y*image.width + x)*4]; + color.g = ((unsigned char *)image.data)[(y*image.width + x)*4 + 1]; + color.r = ((unsigned char *)image.data)[(y*image.width + x)*4 + 2]; + color.a = ((unsigned char *)image.data)[(y*image.width + x)*4 + 3]; + } break; case PIXELFORMAT_UNCOMPRESSED_R8G8B8: { @@ -3429,6 +3473,14 @@ void ImageDrawPixel(Image *dst, int x, int y, Color color) ((unsigned char *)dst->data)[(y*dst->width + x)*4 + 2] = color.b; ((unsigned char *)dst->data)[(y*dst->width + x)*4 + 3] = color.a; + } break; + case PIXELFORMAT_UNCOMPRESSED_B8G8R8A8: + { + ((unsigned char *)dst->data)[(y*dst->width + x)*4] = color.b; + ((unsigned char *)dst->data)[(y*dst->width + x)*4 + 1] = color.g; + ((unsigned char *)dst->data)[(y*dst->width + x)*4 + 2] = color.r; + ((unsigned char *)dst->data)[(y*dst->width + x)*4 + 3] = color.a; + } break; case PIXELFORMAT_UNCOMPRESSED_R32: { @@ -5212,6 +5264,7 @@ Color GetPixelColor(void *srcPtr, int format) } break; case PIXELFORMAT_UNCOMPRESSED_R8G8B8A8: color = (Color){ ((unsigned char *)srcPtr)[0], ((unsigned char *)srcPtr)[1], ((unsigned char *)srcPtr)[2], ((unsigned char *)srcPtr)[3] }; break; + case PIXELFORMAT_UNCOMPRESSED_B8G8R8A8: color = (Color){ ((unsigned char *)srcPtr)[2], ((unsigned char *)srcPtr)[1], ((unsigned char *)srcPtr)[0], ((unsigned char *)srcPtr)[3] }; break; case PIXELFORMAT_UNCOMPRESSED_R8G8B8: color = (Color){ ((unsigned char *)srcPtr)[0], ((unsigned char *)srcPtr)[1], ((unsigned char *)srcPtr)[2], 255 }; break; case PIXELFORMAT_UNCOMPRESSED_R32: { @@ -5349,6 +5402,14 @@ void SetPixelColor(void *dstPtr, Color color, int format) ((unsigned char *)dstPtr)[2] = color.b; ((unsigned char *)dstPtr)[3] = color.a; + } break; + case PIXELFORMAT_UNCOMPRESSED_B8G8R8A8: + { + ((unsigned char *)dstPtr)[0] = color.b; + ((unsigned char *)dstPtr)[1] = color.g; + ((unsigned char *)dstPtr)[2] = color.r; + ((unsigned char *)dstPtr)[3] = color.a; + } break; default: break; } @@ -5369,6 +5430,7 @@ int GetPixelDataSize(int width, int height, int format) case PIXELFORMAT_UNCOMPRESSED_R5G5B5A1: case PIXELFORMAT_UNCOMPRESSED_R4G4B4A4: bpp = 16; break; case PIXELFORMAT_UNCOMPRESSED_R8G8B8A8: bpp = 32; break; + case PIXELFORMAT_UNCOMPRESSED_B8G8R8A8: bpp = 32; break; case PIXELFORMAT_UNCOMPRESSED_R8G8B8: bpp = 24; break; case PIXELFORMAT_UNCOMPRESSED_R32: bpp = 32; break; case PIXELFORMAT_UNCOMPRESSED_R32G32B32: bpp = 32*3; break; @@ -5517,6 +5579,15 @@ static Vector4 *LoadImageDataNormalized(Image image) k += 4; } break; + case PIXELFORMAT_UNCOMPRESSED_B8G8R8A8: + { + pixels[i].z = (float)((unsigned char *)image.data)[k]/255.0f; + pixels[i].y = (float)((unsigned char *)image.data)[k + 1]/255.0f; + pixels[i].x = (float)((unsigned char *)image.data)[k + 2]/255.0f; + pixels[i].w = (float)((unsigned char *)image.data)[k + 3]/255.0f; + + k += 4; + } break; case PIXELFORMAT_UNCOMPRESSED_R8G8B8: { pixels[i].x = (float)((unsigned char *)image.data)[k]/255.0f; diff --git a/tools/parser/output/raylib_api.json b/tools/parser/output/raylib_api.json index 58ba0be01..62c4a47a8 100644 --- a/tools/parser/output/raylib_api.json +++ b/tools/parser/output/raylib_api.json @@ -2688,88 +2688,93 @@ "description": "32 bpp" }, { - "name": "PIXELFORMAT_UNCOMPRESSED_R32", + "name": "PIXELFORMAT_UNCOMPRESSED_B8G8R8A8", "value": 8, + "description": "32 bpp" + }, + { + "name": "PIXELFORMAT_UNCOMPRESSED_R32", + "value": 9, "description": "32 bpp (1 channel - float)" }, { "name": "PIXELFORMAT_UNCOMPRESSED_R32G32B32", - "value": 9, + "value": 10, "description": "32*3 bpp (3 channels - float)" }, { "name": "PIXELFORMAT_UNCOMPRESSED_R32G32B32A32", - "value": 10, + "value": 11, "description": "32*4 bpp (4 channels - float)" }, { "name": "PIXELFORMAT_UNCOMPRESSED_R16", - "value": 11, + "value": 12, "description": "16 bpp (1 channel - half float)" }, { "name": "PIXELFORMAT_UNCOMPRESSED_R16G16B16", - "value": 12, + "value": 13, "description": "16*3 bpp (3 channels - half float)" }, { "name": "PIXELFORMAT_UNCOMPRESSED_R16G16B16A16", - "value": 13, + "value": 14, "description": "16*4 bpp (4 channels - half float)" }, { "name": "PIXELFORMAT_COMPRESSED_DXT1_RGB", - "value": 14, + "value": 15, "description": "4 bpp (no alpha)" }, { "name": "PIXELFORMAT_COMPRESSED_DXT1_RGBA", - "value": 15, + "value": 16, "description": "4 bpp (1 bit alpha)" }, { "name": "PIXELFORMAT_COMPRESSED_DXT3_RGBA", - "value": 16, - "description": "8 bpp" - }, - { - "name": "PIXELFORMAT_COMPRESSED_DXT5_RGBA", "value": 17, "description": "8 bpp" }, { - "name": "PIXELFORMAT_COMPRESSED_ETC1_RGB", + "name": "PIXELFORMAT_COMPRESSED_DXT5_RGBA", "value": 18, - "description": "4 bpp" + "description": "8 bpp" }, { - "name": "PIXELFORMAT_COMPRESSED_ETC2_RGB", + "name": "PIXELFORMAT_COMPRESSED_ETC1_RGB", "value": 19, "description": "4 bpp" }, { - "name": "PIXELFORMAT_COMPRESSED_ETC2_EAC_RGBA", + "name": "PIXELFORMAT_COMPRESSED_ETC2_RGB", "value": 20, + "description": "4 bpp" + }, + { + "name": "PIXELFORMAT_COMPRESSED_ETC2_EAC_RGBA", + "value": 21, "description": "8 bpp" }, { "name": "PIXELFORMAT_COMPRESSED_PVRT_RGB", - "value": 21, - "description": "4 bpp" - }, - { - "name": "PIXELFORMAT_COMPRESSED_PVRT_RGBA", "value": 22, "description": "4 bpp" }, { - "name": "PIXELFORMAT_COMPRESSED_ASTC_4x4_RGBA", + "name": "PIXELFORMAT_COMPRESSED_PVRT_RGBA", "value": 23, + "description": "4 bpp" + }, + { + "name": "PIXELFORMAT_COMPRESSED_ASTC_4x4_RGBA", + "value": 24, "description": "8 bpp" }, { "name": "PIXELFORMAT_COMPRESSED_ASTC_8x8_RGBA", - "value": 24, + "value": 25, "description": "2 bpp" } ] diff --git a/tools/parser/output/raylib_api.lua b/tools/parser/output/raylib_api.lua index 2a385b237..a258ef0ef 100644 --- a/tools/parser/output/raylib_api.lua +++ b/tools/parser/output/raylib_api.lua @@ -2688,88 +2688,93 @@ return { description = "32 bpp" }, { - name = "PIXELFORMAT_UNCOMPRESSED_R32", + name = "PIXELFORMAT_UNCOMPRESSED_B8G8R8A8", value = 8, + description = "32 bpp" + }, + { + name = "PIXELFORMAT_UNCOMPRESSED_R32", + value = 9, description = "32 bpp (1 channel - float)" }, { name = "PIXELFORMAT_UNCOMPRESSED_R32G32B32", - value = 9, + value = 10, description = "32*3 bpp (3 channels - float)" }, { name = "PIXELFORMAT_UNCOMPRESSED_R32G32B32A32", - value = 10, + value = 11, description = "32*4 bpp (4 channels - float)" }, { name = "PIXELFORMAT_UNCOMPRESSED_R16", - value = 11, + value = 12, description = "16 bpp (1 channel - half float)" }, { name = "PIXELFORMAT_UNCOMPRESSED_R16G16B16", - value = 12, + value = 13, description = "16*3 bpp (3 channels - half float)" }, { name = "PIXELFORMAT_UNCOMPRESSED_R16G16B16A16", - value = 13, + value = 14, description = "16*4 bpp (4 channels - half float)" }, { name = "PIXELFORMAT_COMPRESSED_DXT1_RGB", - value = 14, + value = 15, description = "4 bpp (no alpha)" }, { name = "PIXELFORMAT_COMPRESSED_DXT1_RGBA", - value = 15, + value = 16, description = "4 bpp (1 bit alpha)" }, { name = "PIXELFORMAT_COMPRESSED_DXT3_RGBA", - value = 16, - description = "8 bpp" - }, - { - name = "PIXELFORMAT_COMPRESSED_DXT5_RGBA", value = 17, description = "8 bpp" }, { - name = "PIXELFORMAT_COMPRESSED_ETC1_RGB", + name = "PIXELFORMAT_COMPRESSED_DXT5_RGBA", value = 18, - description = "4 bpp" + description = "8 bpp" }, { - name = "PIXELFORMAT_COMPRESSED_ETC2_RGB", + name = "PIXELFORMAT_COMPRESSED_ETC1_RGB", value = 19, description = "4 bpp" }, { - name = "PIXELFORMAT_COMPRESSED_ETC2_EAC_RGBA", + name = "PIXELFORMAT_COMPRESSED_ETC2_RGB", value = 20, + description = "4 bpp" + }, + { + name = "PIXELFORMAT_COMPRESSED_ETC2_EAC_RGBA", + value = 21, description = "8 bpp" }, { name = "PIXELFORMAT_COMPRESSED_PVRT_RGB", - value = 21, - description = "4 bpp" - }, - { - name = "PIXELFORMAT_COMPRESSED_PVRT_RGBA", value = 22, description = "4 bpp" }, { - name = "PIXELFORMAT_COMPRESSED_ASTC_4x4_RGBA", + name = "PIXELFORMAT_COMPRESSED_PVRT_RGBA", value = 23, + description = "4 bpp" + }, + { + name = "PIXELFORMAT_COMPRESSED_ASTC_4x4_RGBA", + value = 24, description = "8 bpp" }, { name = "PIXELFORMAT_COMPRESSED_ASTC_8x8_RGBA", - value = 24, + value = 25, description = "2 bpp" } } diff --git a/tools/parser/output/raylib_api.txt b/tools/parser/output/raylib_api.txt index 9ff8a7735..f74e38849 100644 --- a/tools/parser/output/raylib_api.txt +++ b/tools/parser/output/raylib_api.txt @@ -851,7 +851,7 @@ Enum 11: ShaderAttributeDataType (4 values) Value[SHADER_ATTRIB_VEC2]: 1 Value[SHADER_ATTRIB_VEC3]: 2 Value[SHADER_ATTRIB_VEC4]: 3 -Enum 12: PixelFormat (24 values) +Enum 12: PixelFormat (25 values) Name: PixelFormat Description: Pixel formats Value[PIXELFORMAT_UNCOMPRESSED_GRAYSCALE]: 1 @@ -861,23 +861,24 @@ Enum 12: PixelFormat (24 values) Value[PIXELFORMAT_UNCOMPRESSED_R5G5B5A1]: 5 Value[PIXELFORMAT_UNCOMPRESSED_R4G4B4A4]: 6 Value[PIXELFORMAT_UNCOMPRESSED_R8G8B8A8]: 7 - Value[PIXELFORMAT_UNCOMPRESSED_R32]: 8 - Value[PIXELFORMAT_UNCOMPRESSED_R32G32B32]: 9 - Value[PIXELFORMAT_UNCOMPRESSED_R32G32B32A32]: 10 - Value[PIXELFORMAT_UNCOMPRESSED_R16]: 11 - Value[PIXELFORMAT_UNCOMPRESSED_R16G16B16]: 12 - Value[PIXELFORMAT_UNCOMPRESSED_R16G16B16A16]: 13 - Value[PIXELFORMAT_COMPRESSED_DXT1_RGB]: 14 - Value[PIXELFORMAT_COMPRESSED_DXT1_RGBA]: 15 - Value[PIXELFORMAT_COMPRESSED_DXT3_RGBA]: 16 - Value[PIXELFORMAT_COMPRESSED_DXT5_RGBA]: 17 - Value[PIXELFORMAT_COMPRESSED_ETC1_RGB]: 18 - Value[PIXELFORMAT_COMPRESSED_ETC2_RGB]: 19 - Value[PIXELFORMAT_COMPRESSED_ETC2_EAC_RGBA]: 20 - Value[PIXELFORMAT_COMPRESSED_PVRT_RGB]: 21 - Value[PIXELFORMAT_COMPRESSED_PVRT_RGBA]: 22 - Value[PIXELFORMAT_COMPRESSED_ASTC_4x4_RGBA]: 23 - Value[PIXELFORMAT_COMPRESSED_ASTC_8x8_RGBA]: 24 + Value[PIXELFORMAT_UNCOMPRESSED_B8G8R8A8]: 8 + Value[PIXELFORMAT_UNCOMPRESSED_R32]: 9 + Value[PIXELFORMAT_UNCOMPRESSED_R32G32B32]: 10 + Value[PIXELFORMAT_UNCOMPRESSED_R32G32B32A32]: 11 + Value[PIXELFORMAT_UNCOMPRESSED_R16]: 12 + Value[PIXELFORMAT_UNCOMPRESSED_R16G16B16]: 13 + Value[PIXELFORMAT_UNCOMPRESSED_R16G16B16A16]: 14 + Value[PIXELFORMAT_COMPRESSED_DXT1_RGB]: 15 + Value[PIXELFORMAT_COMPRESSED_DXT1_RGBA]: 16 + Value[PIXELFORMAT_COMPRESSED_DXT3_RGBA]: 17 + Value[PIXELFORMAT_COMPRESSED_DXT5_RGBA]: 18 + Value[PIXELFORMAT_COMPRESSED_ETC1_RGB]: 19 + Value[PIXELFORMAT_COMPRESSED_ETC2_RGB]: 20 + Value[PIXELFORMAT_COMPRESSED_ETC2_EAC_RGBA]: 21 + Value[PIXELFORMAT_COMPRESSED_PVRT_RGB]: 22 + Value[PIXELFORMAT_COMPRESSED_PVRT_RGBA]: 23 + Value[PIXELFORMAT_COMPRESSED_ASTC_4x4_RGBA]: 24 + Value[PIXELFORMAT_COMPRESSED_ASTC_8x8_RGBA]: 25 Enum 13: TextureFilter (6 values) Name: TextureFilter Description: Texture parameters: filter mode diff --git a/tools/parser/output/raylib_api.xml b/tools/parser/output/raylib_api.xml index 063119ab5..c902ed147 100644 --- a/tools/parser/output/raylib_api.xml +++ b/tools/parser/output/raylib_api.xml @@ -560,7 +560,7 @@ - + @@ -568,23 +568,24 @@ - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + +