J'ai des données de 16 bits dans un file, que j'essaye de charger dans une texture de luminance OpenGL sur iOS. Si je redimensionne manuellement les valeurs de 16 bits à 8 bits, je peux charger et afficher datatables comme suit:
glTexImage2D(GL_TEXTURE_2D, 0, GL_LUMINANCE, width, height, 0, GL_LUMINANCE,GL_UNSIGNED_BYTE, (void*)data_8bit);
Mais puis-je faire glTexImage2D faire la conversion de 16 à 8 bits?
En regardant la spécification OpenGL 2.0, les valeurs autorisées pour le type 16 bits sont:
GL_UNSIGNED_SHORT_5_6_5, GL_UNSIGNED_SHORT_4_4_4_4 GL_UNSIGNED_SHORT_5_5_5_1
Il n'y a pas de GL_UNSIGNED_SHORT, et je ne pense pas pouvoir utiliser les éléments ci-dessus.
J'utilise iOS 5.1 et Xcode 4.3.2.