Browse Source

Added sRGB variants of BC1/BC2/BC3 compression formats.

pull/370/head
Vladimír Vondruš 7 years ago
parent
commit
02538d566f
  1. 12
      doc/changelog.dox
  2. 4
      doc/opengl-support.dox
  3. 8
      src/Magnum/GL/AbstractTexture.cpp
  4. 4
      src/Magnum/GL/Implementation/compressedPixelFormatMapping.hpp
  5. 4
      src/Magnum/GL/PixelFormat.cpp
  6. 36
      src/Magnum/GL/PixelFormat.h
  7. 36
      src/Magnum/GL/TextureFormat.h
  8. 4
      src/Magnum/PixelFormat.cpp
  9. 40
      src/Magnum/PixelFormat.h
  10. 4
      src/Magnum/Vk/Implementation/compressedFormatMapping.hpp

12
doc/changelog.dox

@ -50,9 +50,10 @@ See also:
- New @ref BasicMutableImageView "MutableImageView*D" and - New @ref BasicMutableImageView "MutableImageView*D" and
@ref BasicMutableCompressedImageView "MutableCompressedImageView*D" types @ref BasicMutableCompressedImageView "MutableCompressedImageView*D" types
for mutable views onto image data for mutable views onto image data
- Added ETC2 and EAC formats to @ref CompressedPixelFormat as well as their - Added sRGB BCn, ETC2 and EAC formats to @ref CompressedPixelFormat as well
conversion to corresponding GL/Vulkan in @ref GL::compressedPixelFormat() as their conversion to corresponding GL/Vulkan in
and @ref Vk::vkFormat(Magnum::CompressedPixelFormat) @ref GL::compressedPixelFormat() and
@ref Vk::vkFormat(Magnum::CompressedPixelFormat)
@subsubsection changelog-latest-new-audio Audio library @subsubsection changelog-latest-new-audio Audio library
@ -157,6 +158,11 @@ See also:
texture classes now can read the pixels into texture classes now can read the pixels into
@ref BasicMutableImageView "MutableImageView*D" and @ref BasicMutableImageView "MutableImageView*D" and
@ref BasicMutableCompressedImageView "MutableCompressedImageView*D" as well @ref BasicMutableCompressedImageView "MutableCompressedImageView*D" as well
- Added sRGB S3TC formats as defined by the
@gl_extension{EXT,texture_sRGB} desktop,
@gl_extension{EXT,texture_compression_s3tc_srgb} ES and
@webgl_extension{WEBGL,compressed_texture_s3tc_srgb} WebGL extension to
@ref GL::CompressedPixelFormat and @ref GL::TextureFormat
@subsubsection changelog-latest-new-math Math library @subsubsection changelog-latest-new-math Math library

4
doc/opengl-support.dox

@ -455,7 +455,7 @@ Extension | Status
@gl_extension{EXT,texture_compression_s3tc} | done @gl_extension{EXT,texture_compression_s3tc} | done
@gl_extension{EXT,shader_integer_mix} | done (shading language only) @gl_extension{EXT,shader_integer_mix} | done (shading language only)
@gl_extension{EXT,polygon_offset_clamp} | | @gl_extension{EXT,polygon_offset_clamp} | |
@gl_extension{EXT,texture_compression_s3tc_srgb} | | @gl_extension{EXT,texture_compression_s3tc_srgb} | done
@gl_extension2{KHR,texture_compression_astc_hdr,KHR_texture_compression_astc_hdr} | done @gl_extension2{KHR,texture_compression_astc_hdr,KHR_texture_compression_astc_hdr} | done
@gl_extension2{KHR,blend_equation_advanced_coherent,KHR_blend_equation_advanced} | done @gl_extension2{KHR,blend_equation_advanced_coherent,KHR_blend_equation_advanced} | done
@gl_extension{KHR,context_flush_control} | | @gl_extension{KHR,context_flush_control} | |
@ -525,7 +525,7 @@ Extension | Status
@webgl_extension{EXT,color_buffer_float} | | @webgl_extension{EXT,color_buffer_float} | |
@webgl_extension{OES,texture_float_linear} | done @webgl_extension{OES,texture_float_linear} | done
@webgl_extension{WEBGL,compressed_texture_s3tc} | done @webgl_extension{WEBGL,compressed_texture_s3tc} | done
@webgl_extension{WEBGL,compressed_texture_s3tc_srgb} | @webgl_extension{WEBGL,compressed_texture_s3tc_srgb} | done
@section opengl-unsupported Unsupported OpenGL features @section opengl-unsupported Unsupported OpenGL features

8
src/Magnum/GL/AbstractTexture.cpp

@ -665,6 +665,7 @@ PixelFormat pixelFormatForInternalFormat(const TextureFormat internalFormat) {
#ifndef MAGNUM_TARGET_GLES2 #ifndef MAGNUM_TARGET_GLES2
case TextureFormat::SRGB8: case TextureFormat::SRGB8:
#endif #endif
case TextureFormat::CompressedSRGBS3tcDxt1:
#ifndef MAGNUM_TARGET_GLES2 #ifndef MAGNUM_TARGET_GLES2
return PixelFormat::RGB; return PixelFormat::RGB;
#else #else
@ -759,6 +760,9 @@ PixelFormat pixelFormatForInternalFormat(const TextureFormat internalFormat) {
#if !(defined(MAGNUM_TARGET_WEBGL) && defined(MAGNUM_TARGET_GLES2)) #if !(defined(MAGNUM_TARGET_WEBGL) && defined(MAGNUM_TARGET_GLES2))
case TextureFormat::SRGB8Alpha8: case TextureFormat::SRGB8Alpha8:
#endif #endif
case TextureFormat::CompressedSRGBAlphaS3tcDxt1:
case TextureFormat::CompressedSRGBAlphaS3tcDxt3:
case TextureFormat::CompressedSRGBAlphaS3tcDxt5:
#ifndef MAGNUM_TARGET_GLES2 #ifndef MAGNUM_TARGET_GLES2
return PixelFormat::RGBA; return PixelFormat::RGBA;
#else #else
@ -879,9 +883,13 @@ PixelType pixelTypeForInternalFormat(const TextureFormat internalFormat) {
case TextureFormat::CompressedSignedRG11Eac: case TextureFormat::CompressedSignedRG11Eac:
#endif #endif
case TextureFormat::CompressedRGBS3tcDxt1: case TextureFormat::CompressedRGBS3tcDxt1:
case TextureFormat::CompressedSRGBS3tcDxt1:
case TextureFormat::CompressedRGBAS3tcDxt1: case TextureFormat::CompressedRGBAS3tcDxt1:
case TextureFormat::CompressedSRGBAlphaS3tcDxt1:
case TextureFormat::CompressedRGBAS3tcDxt3: case TextureFormat::CompressedRGBAS3tcDxt3:
case TextureFormat::CompressedSRGBAlphaS3tcDxt3:
case TextureFormat::CompressedRGBAS3tcDxt5: case TextureFormat::CompressedRGBAS3tcDxt5:
case TextureFormat::CompressedSRGBAlphaS3tcDxt5:
#ifndef MAGNUM_TARGET_WEBGL #ifndef MAGNUM_TARGET_WEBGL
case TextureFormat::CompressedRGBAAstc4x4: case TextureFormat::CompressedRGBAAstc4x4:
case TextureFormat::CompressedSRGB8Alpha8Astc4x4: case TextureFormat::CompressedSRGB8Alpha8Astc4x4:

4
src/Magnum/GL/Implementation/compressedPixelFormatMapping.hpp

@ -26,9 +26,13 @@
/* See Magnum/GL/PixelFormat.cpp and Magnum/GL/Test/PixelFormatTest.cpp */ /* See Magnum/GL/PixelFormat.cpp and Magnum/GL/Test/PixelFormatTest.cpp */
#ifdef _c #ifdef _c
_c(Bc1RGBUnorm, RGBS3tcDxt1) _c(Bc1RGBUnorm, RGBS3tcDxt1)
_c(Bc1RGBSrgb, SRGBS3tcDxt1)
_c(Bc1RGBAUnorm, RGBAS3tcDxt1) _c(Bc1RGBAUnorm, RGBAS3tcDxt1)
_c(Bc1RGBASrgb, SRGBAlphaS3tcDxt1)
_c(Bc2RGBAUnorm, RGBAS3tcDxt3) _c(Bc2RGBAUnorm, RGBAS3tcDxt3)
_c(Bc2RGBASrgb, SRGBAlphaS3tcDxt3)
_c(Bc3RGBAUnorm, RGBAS3tcDxt5) _c(Bc3RGBAUnorm, RGBAS3tcDxt5)
_c(Bc3RGBASrgb, SRGBAlphaS3tcDxt5)
#ifndef MAGNUM_TARGET_GLES2 #ifndef MAGNUM_TARGET_GLES2
_c(EacR11Unorm, R11Eac) _c(EacR11Unorm, R11Eac)
_c(EacR11Snorm, SignedR11Eac) _c(EacR11Snorm, SignedR11Eac)

4
src/Magnum/GL/PixelFormat.cpp

@ -425,9 +425,13 @@ Debug& operator<<(Debug& debug, const CompressedPixelFormat value) {
_c(SignedRG11Eac) _c(SignedRG11Eac)
#endif #endif
_c(RGBS3tcDxt1) _c(RGBS3tcDxt1)
_c(SRGBS3tcDxt1)
_c(RGBAS3tcDxt1) _c(RGBAS3tcDxt1)
_c(SRGBAlphaS3tcDxt1)
_c(RGBAS3tcDxt3) _c(RGBAS3tcDxt3)
_c(SRGBAlphaS3tcDxt3)
_c(RGBAS3tcDxt5) _c(RGBAS3tcDxt5)
_c(SRGBAlphaS3tcDxt5)
#ifndef MAGNUM_TARGET_WEBGL #ifndef MAGNUM_TARGET_WEBGL
_c(RGBAAstc4x4) _c(RGBAAstc4x4)
_c(SRGB8Alpha8Astc4x4) _c(SRGB8Alpha8Astc4x4)

36
src/Magnum/GL/PixelFormat.h

@ -899,6 +899,15 @@ enum class CompressedPixelFormat: GLenum {
*/ */
RGBS3tcDxt1 = GL_COMPRESSED_RGB_S3TC_DXT1_EXT, RGBS3tcDxt1 = GL_COMPRESSED_RGB_S3TC_DXT1_EXT,
/**
* S3TC DXT1 compressed sRGB. **Available only for 2D, 2D array, cube map
* and cube map array textures.**
* @requires_extension Extension @gl_extension{EXT,texture_compression_s3tc}
* @requires_es_extension Extension @gl_extension{EXT,texture_compression_s3tc_srgb}
* @requires_webgl_extension Extension @webgl_extension{WEBGL,compressed_texture_s3tc_srgb}
*/
SRGBS3tcDxt1 = GL_COMPRESSED_SRGB_S3TC_DXT1_EXT,
/** /**
* S3TC DXT1 compressed RGBA. **Available only for 2D, 2D array, cube map * S3TC DXT1 compressed RGBA. **Available only for 2D, 2D array, cube map
* and cube map array textures.** * and cube map array textures.**
@ -908,6 +917,15 @@ enum class CompressedPixelFormat: GLenum {
*/ */
RGBAS3tcDxt1 = GL_COMPRESSED_RGBA_S3TC_DXT1_EXT, RGBAS3tcDxt1 = GL_COMPRESSED_RGBA_S3TC_DXT1_EXT,
/**
* S3TC DXT1 compressed sRGB + linear alpha. **Available only for 2D, 2D
* array, cube map and cube map array textures.**
* @requires_extension Extension @gl_extension{EXT,texture_compression_s3tc}
* @requires_es_extension Extension @gl_extension{EXT,texture_compression_s3tc_srgb}
* @requires_webgl_extension Extension @webgl_extension{WEBGL,compressed_texture_s3tc_srgb}
*/
SRGBAlphaS3tcDxt1 = GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT,
/** /**
* S3TC DXT3 compressed RGBA. **Available only for 2D, 2D array, cube map * S3TC DXT3 compressed RGBA. **Available only for 2D, 2D array, cube map
* and cube map array textures.** * and cube map array textures.**
@ -917,6 +935,15 @@ enum class CompressedPixelFormat: GLenum {
*/ */
RGBAS3tcDxt3 = GL_COMPRESSED_RGBA_S3TC_DXT3_EXT, RGBAS3tcDxt3 = GL_COMPRESSED_RGBA_S3TC_DXT3_EXT,
/**
* S3TC DXT3 compressed sRGB + linear alpha. **Available only for 2D, 2D
* array, cube map and cube map array textures.**
* @requires_extension Extension @gl_extension{EXT,texture_compression_s3tc}
* @requires_es_extension Extension @gl_extension{EXT,texture_compression_s3tc_srgb}
* @requires_webgl_extension Extension @webgl_extension{WEBGL,compressed_texture_s3tc_srgb}
*/
SRGBAlphaS3tcDxt3 = GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT,
/** /**
* S3TC DXT5 compressed RGBA. **Available only for 2D, 2D array, cube map * S3TC DXT5 compressed RGBA. **Available only for 2D, 2D array, cube map
* and cube map array textures.** * and cube map array textures.**
@ -926,6 +953,15 @@ enum class CompressedPixelFormat: GLenum {
*/ */
RGBAS3tcDxt5 = GL_COMPRESSED_RGBA_S3TC_DXT5_EXT, RGBAS3tcDxt5 = GL_COMPRESSED_RGBA_S3TC_DXT5_EXT,
/**
* S3TC DXT5 compressed sRGB + linear alpha. **Available only for 2D, 2D
* array, cube map and cube map array textures.**
* @requires_extension Extension @gl_extension{EXT,texture_compression_s3tc}
* @requires_es_extension Extension @gl_extension{EXT,texture_compression_s3tc_srgb}
* @requires_webgl_extension Extension @webgl_extension{WEBGL,compressed_texture_s3tc_srgb}
*/
SRGBAlphaS3tcDxt5 = GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT,
#ifndef MAGNUM_TARGET_WEBGL #ifndef MAGNUM_TARGET_WEBGL
/** /**
* ASTC compressed RGBA with 4x4 blocks. **Available only on 2D, 3D, 2D * ASTC compressed RGBA with 4x4 blocks. **Available only on 2D, 3D, 2D

36
src/Magnum/GL/TextureFormat.h

@ -1201,6 +1201,15 @@ enum class TextureFormat: GLenum {
*/ */
CompressedRGBS3tcDxt1 = GL_COMPRESSED_RGB_S3TC_DXT1_EXT, CompressedRGBS3tcDxt1 = GL_COMPRESSED_RGB_S3TC_DXT1_EXT,
/**
* S3TC DXT1 compressed sRGB. **Available only for 2D, 2D array, cube map
* and cube map array textures.**
* @requires_extension Extension @gl_extension{EXT,texture_compression_s3tc}
* @requires_es_extension Extension @gl_extension{EXT,texture_compression_s3tc_srgb}
* @requires_webgl_extension Extension @webgl_extension{WEBGL,compressed_texture_s3tc_srgb}
*/
CompressedSRGBS3tcDxt1 = GL_COMPRESSED_SRGB_S3TC_DXT1_EXT,
/** /**
* S3TC DXT1 compressed RGBA. **Available only on 2D, 2D array, cube map * S3TC DXT1 compressed RGBA. **Available only on 2D, 2D array, cube map
* and cube map array textures.** * and cube map array textures.**
@ -1210,6 +1219,15 @@ enum class TextureFormat: GLenum {
*/ */
CompressedRGBAS3tcDxt1 = GL_COMPRESSED_RGBA_S3TC_DXT1_EXT, CompressedRGBAS3tcDxt1 = GL_COMPRESSED_RGBA_S3TC_DXT1_EXT,
/**
* S3TC DXT1 compressed sRGB + linear alpha. **Available only for 2D, 2D
* array, cube map and cube map array textures.**
* @requires_extension Extension @gl_extension{EXT,texture_compression_s3tc}
* @requires_es_extension Extension @gl_extension{EXT,texture_compression_s3tc_srgb}
* @requires_webgl_extension Extension @webgl_extension{WEBGL,compressed_texture_s3tc_srgb}
*/
CompressedSRGBAlphaS3tcDxt1 = GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT,
/** /**
* S3TC DXT3 compressed RGBA. **Available only on 2D, 2D array, cube map * S3TC DXT3 compressed RGBA. **Available only on 2D, 2D array, cube map
* and cube map array textures.** * and cube map array textures.**
@ -1219,6 +1237,15 @@ enum class TextureFormat: GLenum {
*/ */
CompressedRGBAS3tcDxt3 = GL_COMPRESSED_RGBA_S3TC_DXT3_EXT, CompressedRGBAS3tcDxt3 = GL_COMPRESSED_RGBA_S3TC_DXT3_EXT,
/**
* S3TC DXT3 compressed sRGB + linear alpha. **Available only for 2D, 2D
* array, cube map and cube map array textures.**
* @requires_extension Extension @gl_extension{EXT,texture_compression_s3tc}
* @requires_es_extension Extension @gl_extension{EXT,texture_compression_s3tc_srgb}
* @requires_webgl_extension Extension @webgl_extension{WEBGL,compressed_texture_s3tc_srgb}
*/
CompressedSRGBAlphaS3tcDxt3 = GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT,
/** /**
* S3TC DXT5 compressed RGBA. **Available only on 2D, 2D array, cube map * S3TC DXT5 compressed RGBA. **Available only on 2D, 2D array, cube map
* and cube map array textures.** * and cube map array textures.**
@ -1228,6 +1255,15 @@ enum class TextureFormat: GLenum {
*/ */
CompressedRGBAS3tcDxt5 = GL_COMPRESSED_RGBA_S3TC_DXT5_EXT, CompressedRGBAS3tcDxt5 = GL_COMPRESSED_RGBA_S3TC_DXT5_EXT,
/**
* S3TC DXT5 compressed sRGB + linear alpha. **Available only for 2D, 2D
* array, cube map and cube map array textures.**
* @requires_extension Extension @gl_extension{EXT,texture_compression_s3tc}
* @requires_es_extension Extension @gl_extension{EXT,texture_compression_s3tc_srgb}
* @requires_webgl_extension Extension @webgl_extension{WEBGL,compressed_texture_s3tc_srgb}
*/
CompressedSRGBAlphaS3tcDxt5 = GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT,
#ifndef MAGNUM_TARGET_WEBGL #ifndef MAGNUM_TARGET_WEBGL
/** /**
* ASTC compressed RGBA with 4x4 blocks. **Available only on 2D, 3D, 2D * ASTC compressed RGBA with 4x4 blocks. **Available only on 2D, 3D, 2D

4
src/Magnum/PixelFormat.cpp

@ -189,9 +189,13 @@ Debug& operator<<(Debug& debug, const CompressedPixelFormat value) {
/* LCOV_EXCL_START */ /* LCOV_EXCL_START */
#define _c(value) case CompressedPixelFormat::value: return debug << "CompressedPixelFormat::" #value; #define _c(value) case CompressedPixelFormat::value: return debug << "CompressedPixelFormat::" #value;
_c(Bc1RGBUnorm) _c(Bc1RGBUnorm)
_c(Bc1RGBSrgb)
_c(Bc1RGBAUnorm) _c(Bc1RGBAUnorm)
_c(Bc1RGBASrgb)
_c(Bc2RGBAUnorm) _c(Bc2RGBAUnorm)
_c(Bc2RGBASrgb)
_c(Bc3RGBAUnorm) _c(Bc3RGBAUnorm)
_c(Bc3RGBASrgb)
_c(EacR11Unorm) _c(EacR11Unorm)
_c(EacR11Snorm) _c(EacR11Snorm)
_c(EacRG11Unorm) _c(EacRG11Unorm)

40
src/Magnum/PixelFormat.h

@ -580,6 +580,16 @@ enum class CompressedPixelFormat: UnsignedInt {
*/ */
Bc1RGBUnorm, Bc1RGBUnorm,
/**
* [S3TC](https://en.wikipedia.org/wiki/S3_Texture_Compression) BC1
* compressed sRGB, normalized unsigned byte (DXT1).
*
* Corresponds to @ref GL::CompressedPixelFormat::SRGBS3tcDxt1,
* @ref GL::TextureFormat::CompressedSRGBS3tcDxt1 /
* @def_vk_keyword{FORMAT_BC1_RGB_SRGB_BLOCK,Format}.
*/
Bc1RGBSrgb,
/** /**
* [S3TC](https://en.wikipedia.org/wiki/S3_Texture_Compression) BC1 * [S3TC](https://en.wikipedia.org/wiki/S3_Texture_Compression) BC1
* compressed RGBA, normalized unsigned byte (DXT1). * compressed RGBA, normalized unsigned byte (DXT1).
@ -590,6 +600,16 @@ enum class CompressedPixelFormat: UnsignedInt {
*/ */
Bc1RGBAUnorm, Bc1RGBAUnorm,
/**
* [S3TC](https://en.wikipedia.org/wiki/S3_Texture_Compression) BC1
* compressed sRGB + linear alpha, normalized unsigned byte (DXT1).
*
* Corresponds to @ref GL::CompressedPixelFormat::SRGBAlphaS3tcDxt1,
* @ref GL::TextureFormat::CompressedSRGBAlphaS3tcDxt1 /
* @def_vk_keyword{FORMAT_BC1_RGBA_SRGB_BLOCK,Format}.
*/
Bc1RGBASrgb,
/** /**
* [S3TC](https://en.wikipedia.org/wiki/S3_Texture_Compression) BC2 * [S3TC](https://en.wikipedia.org/wiki/S3_Texture_Compression) BC2
* compressed RGBA, normalized unsigned byte (DXT3). * compressed RGBA, normalized unsigned byte (DXT3).
@ -600,6 +620,16 @@ enum class CompressedPixelFormat: UnsignedInt {
*/ */
Bc2RGBAUnorm, Bc2RGBAUnorm,
/**
* [S3TC](https://en.wikipedia.org/wiki/S3_Texture_Compression) BC2
* compressed sRGB + linear alpha, normalized unsigned byte (DXT3).
*
* Corresponds to @ref GL::CompressedPixelFormat::SRGBAlphaS3tcDxt3,
* @ref GL::TextureFormat::CompressedSRGBAlphaS3tcDxt3 /
* @def_vk_keyword{FORMAT_BC2_SRGB_BLOCK,Format}.
*/
Bc2RGBASrgb,
/** /**
* [S3TC](https://en.wikipedia.org/wiki/S3_Texture_Compression) BC3 * [S3TC](https://en.wikipedia.org/wiki/S3_Texture_Compression) BC3
* compressed RGBA, normalized unsigned byte (DXT5). * compressed RGBA, normalized unsigned byte (DXT5).
@ -610,6 +640,16 @@ enum class CompressedPixelFormat: UnsignedInt {
*/ */
Bc3RGBAUnorm, Bc3RGBAUnorm,
/**
* [S3TC](https://en.wikipedia.org/wiki/S3_Texture_Compression) BC3
* compressed sRGB + linear alpha, normalized unsigned byte (DXT5).
*
* Corresponds to @ref GL::CompressedPixelFormat::SRGBAlphaS3tcDxt5,
* @ref GL::TextureFormat::CompressedSRGBAlphaS3tcDxt5 /
* @def_vk_keyword{FORMAT_BC3_SRGB_BLOCK,Format}.
*/
Bc3RGBASrgb,
/** /**
* [EAC](https://en.wikipedia.org/wiki/Ericsson_Texture_Compression#ETC2_and_EAC) * [EAC](https://en.wikipedia.org/wiki/Ericsson_Texture_Compression#ETC2_and_EAC)
* compressed red component, normalized unsigned 11-bit. * compressed red component, normalized unsigned 11-bit.

4
src/Magnum/Vk/Implementation/compressedFormatMapping.hpp

@ -26,9 +26,13 @@
/* See Magnum/Vk/Enums.cpp and Magnum/Vk/Test/EnumsTest.cpp */ /* See Magnum/Vk/Enums.cpp and Magnum/Vk/Test/EnumsTest.cpp */
#ifdef _c #ifdef _c
_c(Bc1RGBUnorm, BC1_RGB_UNORM_BLOCK) _c(Bc1RGBUnorm, BC1_RGB_UNORM_BLOCK)
_c(Bc1RGBSrgb, BC1_RGB_SRGB_BLOCK)
_c(Bc1RGBAUnorm, BC1_RGBA_UNORM_BLOCK) _c(Bc1RGBAUnorm, BC1_RGBA_UNORM_BLOCK)
_c(Bc1RGBASrgb, BC1_RGBA_SRGB_BLOCK)
_c(Bc2RGBAUnorm, BC2_UNORM_BLOCK) _c(Bc2RGBAUnorm, BC2_UNORM_BLOCK)
_c(Bc2RGBASrgb, BC2_SRGB_BLOCK)
_c(Bc3RGBAUnorm, BC3_UNORM_BLOCK) _c(Bc3RGBAUnorm, BC3_UNORM_BLOCK)
_c(Bc3RGBASrgb, BC3_SRGB_BLOCK)
_c(EacR11Unorm, EAC_R11_UNORM_BLOCK) _c(EacR11Unorm, EAC_R11_UNORM_BLOCK)
_c(EacR11Snorm, EAC_R11_SNORM_BLOCK) _c(EacR11Snorm, EAC_R11_SNORM_BLOCK)
_c(EacRG11Unorm, EAC_R11G11_UNORM_BLOCK) _c(EacRG11Unorm, EAC_R11G11_UNORM_BLOCK)

Loading…
Cancel
Save