I'm programming a library that it's compatible with OpenGL and OpenGL ES, nothing that seems for me hard. I read somewhere that OpenGL ES supports various texture types like RGB565, RGBA5551 etc, but I didn't found anything for OpenGL. Searching I found GL_RGB5 and other releated stuff, but I don't know how to use it. Firstly seems that GL_RGB5 doesn't give support for 565 colors and I don't know why I should specify the internalformat and the format of a texture and their differences. There is also the type, like GL_UNSIGNED_BYTE, GL_BYTE, GL_UNSIGNED_SHORT etc., but I don't understand how and when use them. Also when I try to mapping textures, the 3D model gets only the right-bottom pixel from the texture and I don't understand why.
Can someone help me?