动画了一个89帧的png序列,该序列通过每512 x 512帧放置两帧而减少了一半。但我的主要图片质量存在问题(有损)

有谁知道一种制作89帧动画的好方法,而又不会降低质量或不影响处理器?

祝一切顺利。

最佳答案

PVRTC肯定会使您的图像看起来有损,但是有很多方法可以解决。使用纹理图集会有所帮助,因为PVRTC通常会最大程度地弄乱图像的边缘,并导致透明度问题。我还要尝试关闭所有的mipmap滤镜(最近的和线性的滤镜,但特别是最近的,与PVRTC结合使用时,会使它看起来更加模糊),并尝试打开线性的纹理滤镜,它将所有内容混合在一起,以便损失不那么明显,事物看起来仅略微模糊。您还可以保存比绘制更大的图像(即,具有512x512的图像,该图像已使用PVRTC压缩,但以256x256的比例绘制)。 2BPP PVRTC将导致纹理占用的内存是RGBA 4444的1/8,因此即使增加大小(占用4倍的内存)也可以节省2倍。但是,如果仅使用4BPP,则如果需要将图像尺寸加倍,则最好使用RGBA 4444。

对于需要更详细的较大图像,PVRTC通常不是一个好的策略。对于图标等,您可以看到大量的节省,尤其是因为您可以将它们绘制得更小。

Mipmap是这样制作的(不要这样做):
glGenerateMipmapOES(GL_TEXTURE_2D);

您可以打开一个线性纹理过滤器,如下所示:
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
  

您当然也不想这样做:
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR_MIPMAP_LINEAR);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR_MIPMAP_LINEAR);

10-02 14:12