mirror of
https://github.com/libsdl-org/SDL.git
synced 2025-09-13 23:08:13 +00:00
GPU: Add support for more texture formats (#10641)
This commit is contained in:
@@ -502,15 +502,22 @@ Uint32 SDL_GPUTextureFormatTexelBlockSize(
|
||||
SDL_GPUTextureFormat textureFormat)
|
||||
{
|
||||
switch (textureFormat) {
|
||||
case SDL_GPU_TEXTUREFORMAT_BC1_UNORM:
|
||||
case SDL_GPU_TEXTUREFORMAT_BC1_RGBA_UNORM:
|
||||
case SDL_GPU_TEXTUREFORMAT_BC1_RGBA_UNORM_SRGB:
|
||||
case SDL_GPU_TEXTUREFORMAT_BC4_R_UNORM:
|
||||
return 8;
|
||||
case SDL_GPU_TEXTUREFORMAT_BC2_UNORM:
|
||||
case SDL_GPU_TEXTUREFORMAT_BC3_UNORM:
|
||||
case SDL_GPU_TEXTUREFORMAT_BC7_UNORM:
|
||||
case SDL_GPU_TEXTUREFORMAT_BC3_UNORM_SRGB:
|
||||
case SDL_GPU_TEXTUREFORMAT_BC7_UNORM_SRGB:
|
||||
case SDL_GPU_TEXTUREFORMAT_BC2_RGBA_UNORM:
|
||||
case SDL_GPU_TEXTUREFORMAT_BC3_RGBA_UNORM:
|
||||
case SDL_GPU_TEXTUREFORMAT_BC5_RG_UNORM:
|
||||
case SDL_GPU_TEXTUREFORMAT_BC7_RGBA_UNORM:
|
||||
case SDL_GPU_TEXTUREFORMAT_BC6H_RGB_FLOAT:
|
||||
case SDL_GPU_TEXTUREFORMAT_BC6H_RGB_UFLOAT:
|
||||
case SDL_GPU_TEXTUREFORMAT_BC2_RGBA_UNORM_SRGB:
|
||||
case SDL_GPU_TEXTUREFORMAT_BC3_RGBA_UNORM_SRGB:
|
||||
case SDL_GPU_TEXTUREFORMAT_BC7_RGBA_UNORM_SRGB:
|
||||
return 16;
|
||||
case SDL_GPU_TEXTUREFORMAT_R8_UNORM:
|
||||
case SDL_GPU_TEXTUREFORMAT_R8_SNORM:
|
||||
case SDL_GPU_TEXTUREFORMAT_A8_UNORM:
|
||||
case SDL_GPU_TEXTUREFORMAT_R8_UINT:
|
||||
return 1;
|
||||
@@ -519,7 +526,10 @@ Uint32 SDL_GPUTextureFormatTexelBlockSize(
|
||||
case SDL_GPU_TEXTUREFORMAT_B5G5R5A1_UNORM:
|
||||
case SDL_GPU_TEXTUREFORMAT_R16_FLOAT:
|
||||
case SDL_GPU_TEXTUREFORMAT_R8G8_SNORM:
|
||||
case SDL_GPU_TEXTUREFORMAT_R8G8_UNORM:
|
||||
case SDL_GPU_TEXTUREFORMAT_R8G8_UINT:
|
||||
case SDL_GPU_TEXTUREFORMAT_R16_UNORM:
|
||||
case SDL_GPU_TEXTUREFORMAT_R16_SNORM:
|
||||
case SDL_GPU_TEXTUREFORMAT_R16_UINT:
|
||||
return 2;
|
||||
case SDL_GPU_TEXTUREFORMAT_R8G8B8A8_UNORM:
|
||||
@@ -528,14 +538,17 @@ Uint32 SDL_GPUTextureFormatTexelBlockSize(
|
||||
case SDL_GPU_TEXTUREFORMAT_B8G8R8A8_UNORM_SRGB:
|
||||
case SDL_GPU_TEXTUREFORMAT_R32_FLOAT:
|
||||
case SDL_GPU_TEXTUREFORMAT_R16G16_FLOAT:
|
||||
case SDL_GPU_TEXTUREFORMAT_R11G11B10_UFLOAT:
|
||||
case SDL_GPU_TEXTUREFORMAT_R8G8B8A8_SNORM:
|
||||
case SDL_GPU_TEXTUREFORMAT_R10G10B10A2_UNORM:
|
||||
case SDL_GPU_TEXTUREFORMAT_R8G8B8A8_UINT:
|
||||
case SDL_GPU_TEXTUREFORMAT_R16G16_UINT:
|
||||
case SDL_GPU_TEXTUREFORMAT_R16G16_UNORM:
|
||||
case SDL_GPU_TEXTUREFORMAT_R16G16_SNORM:
|
||||
return 4;
|
||||
case SDL_GPU_TEXTUREFORMAT_R16G16B16A16_FLOAT:
|
||||
case SDL_GPU_TEXTUREFORMAT_R16G16B16A16_UNORM:
|
||||
case SDL_GPU_TEXTUREFORMAT_R16G16B16A16_SNORM:
|
||||
case SDL_GPU_TEXTUREFORMAT_R32G32_FLOAT:
|
||||
case SDL_GPU_TEXTUREFORMAT_R16G16B16A16_UINT:
|
||||
return 8;
|
||||
|
Reference in New Issue
Block a user