It's not really padding, it's page alignment. On console, you could sometimes pack buffer data into the unused bytes. Android has similar hardware and alignment requirements.
Sometimes mips have to be aligned to the page size, but maybe Metal team can relay more here. It's gpu specific, so I doubt they'll want to commit to details. Also hardware often has a packed mip tail in order to cut page use for smaller mip sizes.
Is your output showing the buffers that you generated to upload to Vulkan textures. These are linear block order texture data, and not the tiled order blocks used by the hw that may be aligned to texture pages. Some systems also have to pad mips out to a power-of-two size.
On desktop the tile size is 64KB. On iOS the tile size is 16KB. Here are tileSizes.
Format Desktop(64K) Mobile (16K)
ASTC/BC7 256x256 128x128
BC1/ETCr11 512x256 256x128
Topic:
Graphics & Games
SubTopic:
Metal
Tags: