J'essaie de convertir une texture en Pixmap dans LibGDX afin que je puisse obtenir toutes les données de pixels dans un ByteBuffer pour certaines expériences, et de ce que je peux dire, je devrais être capable de le faire en procédez comme suit:LibGDX Texture à ByteBuffer
Pixmap pixmap = textureName.getTexture().getTextureData().consumePixmap();
ByteBuffer data = pixmap.getPixels();
Cela ne semble renvoyer une taille appropriée Pixmap et le ByteBuffer ne semble être créé très bien, mais il est entièrement rempli avec des zéros, qui donne une image vierge, transparente. Ceci, et quelques autres tests, me portent à croire que le Pixmap lui-même est simplement créé comme une image totalement transparente comme ça, mais je ne peux pas trouver ce qui peut être à l'origine de cela. Existe-t-il une sorte de limitation empêchant cela de fonctionner, ou est-ce que je manque simplement quelque chose d'évident?
La texture est créée par l'utilisateur au sein de l'application dans une simple interface de type peinture, donc je n'ai aucune des données auparavant. Si je pouvais extraire les informations du FrameBuffer que j'utilise pour créer la texture qui serait parfaite, j'étais sous l'impression que vous ne pouviez faire cela qu'à partir du FrameBuffer par défaut qui dessine à l'écran. Dans mon cas, il est possible que la texture dépasse la résolution de l'écran, de sorte qu'elle couperait ou déformerait l'image en suivant cette route. Malheureusement, utiliser Pixmaps eux-mêmes pour le dessin n'est pas une option non plus. – Shamrock