我有一个颜色深度为32位的渲染上下文。我将使用一些alpha混合,但不是很多;所以使用24位图像作为我需要的大多数纹理将大大减少内存需求。我的问题是,我可以将24位RGB纹理与32位渲染上下文一起使用,并期望与32位ARGB纹理具有相同的性能吗?我知道内部格式可能从一开始就不是,但RC的目标格式是32位ARGB。
此外,我还计划使用某种形式的纹理压缩。该平台将独家使用Windows。哪一个能提供最好的压缩和最宽的兼容性?我也希望使用24位压缩纹理,因为我不会使用alpha位;但渲染上下文将保持32位。
发布于 2011-01-19 15:03:23
在渲染到32位渲染上下文时,使用任何纹理格式作为输入纹理都没有任何问题。纹理格式要么被平台支持,要么不被支持,如果它被支持,你可以使用它,而不用考虑渲染上下文的格式。
要压缩24位纹理,您可以查看Windows PC上所有OpenGL实现都支持的DXT1 texture compression。请注意,根据您的内容和您想要获得的压缩质量,可以使用DXT压缩、可选色彩空间和用于解码的着色器代码here is an example来提高图像质量。
发布于 2011-01-19 13:40:20
看起来DXT5应该可以为您工作。
这里是the details for GL_EXT_texture_compression_s3tc
https://stackoverflow.com/questions/4731447
复制相似问题