SpiecsEngine
 
Loading...
Searching...
No Matches

◆ CreateKTX2Texture()

ktxTexture2 * Spices::Transcoder::CreateKTX2Texture ( int & width,
int & height )
static

Create a ktx2 Texture.

Parameters
[in]width.
[in]height.
Returns
Returns ktxTexture2* .

Instance a ktxTextureCreateInfo.

Instance a ktxTextureCreateInfo.

Definition at line 41 of file Transcoder.cpp.

42 {
44
48 ktxTextureCreateInfo createInfo;
49 createInfo.vkFormat = VK_FORMAT_R8G8B8A8_UNORM;
50 createInfo.baseWidth = width;
51 createInfo.baseHeight = height;
52 createInfo.baseDepth = 1;
53 createInfo.numDimensions = 2;
54 createInfo.numLevels = static_cast<uint32_t>(std::floor(std::log2(std::max(width, height)))) + 1; // Must be 1 if enable generateMipmaps.
55 createInfo.numLayers = 1;
56 createInfo.numFaces = 1;
57 createInfo.isArray = KTX_FALSE;
58 createInfo.generateMipmaps = KTX_FALSE; // Must be false before compress.
59
60 ktxTexture2* texture;
61
62 // Call ktxTexture1_Create to create a KTX texture.
63 KTX_CHECK(ktxTexture2_Create(&createInfo, KTX_TEXTURE_CREATE_ALLOC_STORAGE, &texture))
64
65 return texture;
66 }
#define SPICES_PROFILE_ZONE
#define KTX_CHECK(expr)