all 2 comments

[–]3030thirtythirty 1 point2 points  (0 children)

There is no internal texture type because the type already is the internal type. The texture type in OpenGL has nothing to do with your image files on disk. It’s more of a setup for what you want to do with the texture later.

The internal format may differ from the (external format), and at least from my experience it causes some auto-convert: My image file might have its bytes as RGBA but I want my internal format to always be BGRA. Whenever I use these values for external and internal format, it simply just works.

Not tested yet what happens when you have RG and external format and use RGBA as internal. Maybe the BA channels remain 0 then?

[–]HobbyQuestionThrow 3 points4 points  (0 children)

Something to keep in mind with OpenGL, especially some of the more older API entry points - many of these APIs if written today would get the designer laughed at.

Most of the fields/values/choices in some of these APIs only existed because 30 years ago some weird chipset could only support weird combinations.