2017-06-11 2 views
0

J'ai un problème à propos de Android obtenir des données de couleur de textureIDAndroid OpenGLES obtenir des données cloor de textureID

J'espère que OpenGLES d'utilisation GOT des données réelles de pixels et le modifier

Ceci est mon code et dans le GalleryData. Tous les octets sont zéro, mais glgetError est 0.

Je ne sais pas pourquoi. Est-ce que n'importe quel homme de génie peut m'aider?

byte[] Galleydata = new byte[GalleyWidth*GalleyHeight*4]; 
ByteBuffer buffer = ByteBuffer.wrap(Galleydata); 
GLES20.glBindTexture(GLES20.GL_TEXTURE_2D, texturePtr); 
GLES20.glReadPixels(0,0,GalleyWidth,GalleyHeight,GLES20.GL_RGBA,GLES20.GL_UNSIGNED_BYTE,buffer); 
buffer.get(Galleydata); 

Répondre

0

glReadPixels renvoie les pixels à partir d'un tampon vidéo . Vous devez donc d'abord rendre votre texture en utilisant l'une des fonctions glDraw*. En règle générale, vous devez afficher deux triangles (car les quads ne sont généralement pas pris en charge et ne peuvent être pris en charge que par des extensions).