如何为glTexImage函数设置Internal format和format

How to set the Internal format and format for the glTexImage function

我正在接收 BGRA 格式的像素数据。

为了显示图像我需要设置这个

glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, 1920, 1080, 0, GL_BGRA, GL_UNSIGNED_BYTE, 0);

最初我在尝试

 glTexImage2D(GL_TEXTURE_2D, 0, GL_BGRA, 1920, 1080, 0, GL_BGRA, GL_UNSIGNED_BYTE, 0);

我的理解是,第二个参数是提供给函数的纹素数据的格式,第一个是如何在内部存储它。

这些格式是否相互链接?

GL_BGRA 不是有效的内部格式,请参阅 glTexImage2Dformattype 参数指定源数据的格式。 internalformat参数指定目标纹理图像的格式。
当调用glTexImage2D时,指定二维纹理图像并将源图像转换为目标的内部格式。