关于纹理rgba4444的疑问

百度好多内存优化的帖子说“那么我们使用颜色深度是RGBA4444的纹理来代替RBGA8888,这将会消费一半内存”,但是我跟踪源码(cocos2dx 3.6)发现Texture2d加载进去默认的"renderFormat"和"defaultAlphaPixelFormat"全都是RGBA8888或者RGB888,那么我即使把图片格式压缩为RGBA4444,那么cocos2dx加载进去也是用RGBA8888来存储和渲染的吗?如果是这样的话,那么正确的优化方法应该是什么呢?谢谢!
倀匀:在Texture2D中有个静态方法“setDefaultAlphaPixelFormat’可以修改格式,但是这样也就把所有图片都初始化为RGBA4444了。

你可以在加载需要将颜色深度设为RGBA4444的文件的前后,分别设置PixelFormat就可以了。
例如
setFormat(RGBA4444);
loadTexture(“SpriteSheet.png”);
setFormat(RGBA8888);

好的,非常感谢