我可以使用UNSIGNED_SHORT_4_4_4_4了解RGBA4,其中每个颜色分量为4位。 但是如果我们将RGBA4内部格式用于具有无符号字节类型的纹理,那么它是如何解释的?
我能理解的是,这里每个组件都是8位,但接下来是什么' 4'将在RGBA4中表示? 它是否会考虑每8位/分量的前4位而忽略其他4位?
答案 0 :(得分:1)
glTexImage2D的internalFormat
参数是纹理格式。
如果您想询问format
和type
参数,那不是纹理的格式,而是传入数据的格式。 GL将按照GL规范中描述的特定规则解释输入数据类型(8.4.4 GL 4.3 core规范中的像素矩形传输)。
特别是,在8.4.4.1拆包中,在“特殊解释”下,您询问的案例包括在内:
如果发生不匹配,任何命令处理像素矩形都会生成INVALID_OPERATION错误