Table of Contents

Namespace Egami.Formats.Extended.Ktx

Classes

Ktx2Format

KTX 2.0, the Khronos texture container for Vulkan, glTF and the web: a header naming the Vulkan format, a level index, a data format descriptor with the colour space, key/value data, then the mip levels smallest first, each optionally supercompressed with Zstandard or zlib. Load gives mip 0 of the first surface, turned upright and swizzled as the file says; LoadAll and KtxReaderOptions reach the others. Uncompressed, BC1 to BC7, ETC2, EAC, 2D ASTC (LDR and HDR) and Basis Universal (ETC1S, UASTC LDR and HDR 4 × 4) textures read; 3D ASTC, PVRTC and the newer Basis Universal families (UASTC HDR 6 × 6, XUASTC, XUBC7) are refused. Save and SaveAll write every one of those but ASTC HDR and UASTC HDR, with mips, arrays, cube maps and supercompression (Ktx2WriterOptions). Registered with WithKtx2(EgamiContext).

Ktx2WriterOptions

Options for writing KTX 2.

KtxDetails

Details only KTX and KTX 2 have, kept in FormatDetails.

KtxFormat

KTX 1.1, the Khronos texture container for OpenGL: a header naming the OpenGL format, key/value data, then every mip level of every array layer, cube face and depth slice, uncompressed or in BC1 to BC7, ETC1, ETC2, EAC or 2D ASTC blocks, in either byte order. Load gives mip 0 of the first surface, turned upright and swizzled as the file's KTXorientation and KTXswizzle say; LoadAll and KtxReaderOptions reach the others. Read only. Registered with WithKtx(EgamiContext).

KtxReaderOptions

Options for reading KTX and KTX 2.

Enums

KtxAlphaMode

How a KTX file's alpha channel is meant to be read.

KtxDimension

The kind of texture a KTX file holds.

KtxSupercompression

How a KTX 2 file's mip levels are compressed on top of their texture format.

KtxTextureFormat

The formats the KTX 2 writer writes, each a Vulkan VkFormat (or a Basis Universal format, VkFormat 0); Srgb picks the _SRGB form where there is one.