问题是我无法使用
Texture2D
图形格式创建 RGBA_ASTC6X6_UNorm
。
据我了解,ACTS是一种特殊的压缩方式,可以被GPU使用。在我的应用程序中,我可以观察到,ACTS 纹理比我从 PNG 文件加载的纹理占用的内存少得多。我想也用 ACTS 来压缩这些加载的纹理。但看起来在运行时是不可能的。
我对 ACTS 的理解正确吗?
为什么在运行时无法进行压缩?它有一些特殊的硬件限制吗?哪些限制?为什么我在不同设备上构建时从未遇到这些限制?
您的理解是正确的,但您所有的 ASTC 都拼写错误。
通过调用Texture2D.compress可以在运行时进行图像压缩,而该方法是通过图形API实现的,因此仅限于特定格式。
对于那些不支持的格式,没有硬件限制,但需要提供相应的压缩代码,这会使运行时间非常大。