首页 文章

ASTC在金属中的纹理压缩 - 我应该使用什么作为每行的字节数?

提问于
浏览
1

我'm writing a program that'在Metal中使用压缩纹理 . 我在使用MTLTexture的 replaceRegion() 函数时遇到了一些麻烦 . 参数 bytesPerRow 似乎没有意义 . 它表示对于压缩纹理,“ bytesPerRow 是从一行块的开头到下一行的开头的字节数 . ”

现在我使用ASTC和4x4块,这意味着我有8 bpp . 那么4 * 4是16,而8位是一个字节 . 所以我猜每个块大小是16个字节 . 但是,当我输入16时,我得到一个失败的断言,要求最小值为4096.发生了什么?

非常感谢你 .

1 回答

  • 1

    bytesPerRow = texelsPerRow / blockFootprint.x * 16

相关问题