你海哥 最近准备使用ASTC纹理格式,在使用中遇到问题。 如果只使用了一个ASTC的ktx文件,则不会报错。但是显示中的alpha通道有问题,如图 但是如果加载第二张ASTC的ktx文件时,则会直接报错。 已经在多个手机环境中测试过,都是同样的问题。不知道是不是我使用的方式不对。测试工程我已经放在附件中,请查看。附件:KtxTest.zip KtxTest.zip0B
你海哥 Yan 大大,怎么样了,有眉目了吗?对了,我补充一下,我使用了github上最热的两个astc转换项目都试了,都是一样的问题。一个是https://github.com/ARM-software/astc-encoder另一个是https://github.com/TimvanScherpenzeel/texture-compressor
Laya_Fred 您好,您试下在压缩纹理为ASTC格式时候勾选预乘alpha通道,预乘alpha通道后我这里显示正常的,ktx文件在附件内;另外对于ktx纹理的使用您可以参照下面的示例纹理--GPU压缩ASTC先加载纹理再赋值给texture。 ui.zip0B
你海哥 Laya_Fred 非常感谢您的回复,但我有一点不是很明白,使用ASTC是必须要使用你们IDE中的转换工具吗?因为我在ARM官方ASTC的GitHub中没有找到....呃~~预乘alpha...或是相关的说明。GitHub的地址是https://github.com/ARM-software/astc-encoder
Laya_Fred Laya_Fred @你海哥:您好,建议使用我们IDE内的转换工具来查看效果,使用alpha预乘会将a通道预乘到rgb通道上来减少内存,也可以使用别的压缩工具预乘alpha,但是不能保证效果的一致性的。
1567600631用户 arm命令行有个预乘参数看是不是这个 -pp-premultiply Run a preprocess over the image that scales RGB components in the image by the alpha value. Preprocessing applies before any codec encoding swizzle, so color data must be in the RGB components in the source image.