Как преобразовать png файл в PaletteTexture? - PullRequest
1 голос
/ 16 ноября 2011

Может кто-нибудь сказать мне, как png файл в PaletteTexture?Я провел много исследований и нашел glCompressedTexImage2D, но, похоже, весь пример показывает, как генерировать текстуру палитры из некоторых жестких кодовых номеров, а не из файла изображения.Может кто-нибудь показать мне фрагмент кода или ссылку?Большое спасибо !!

Теперь я попытался извлечь пиксели из растрового изображения, созданного из файла png, а затем попытался сгенерировать текстуру палитры из извлеченных пикселей.Но я вижу только белый квадрат, я поставил здесь код, чтобы кто-нибудь помог мне!

Bitmap originalBitmap = BitmapFactory.decodeStream(is);

int[] pixels = new int[originalBitmap.getHeight()*originalBitmap.getWidth()];
originalBitmap.getPixels(pixels, 0, originalBitmap.getWidth(), 0, 0, originalBitmap.getWidth(), originalBitmap.getHeight());

textureInfo.source = iFile;

gl.glGenTextures(1, textureInfo.textures, 0);
gl.glBindTexture(GL10.GL_TEXTURE_2D, textureInfo.textures[0]);

gl.glTexParameterf(GL10.GL_TEXTURE_2D, GL10.GL_TEXTURE_MIN_FILTER, GL10.GL_LINEAR);
gl.glTexParameterf(GL10.GL_TEXTURE_2D, GL10.GL_TEXTURE_MAG_FILTER, GL10.GL_LINEAR);


byte[] textureData = new byte[pixels.length];
for (int i = 0; i < textureData.length; i++) {
    textureData[i] = new Integer(pixels[i]).byteValue();
}
int size = textureData.length;

ByteBuffer bb = ByteBuffer.allocateDirect(size);
bb.put(textureData);
bb.position(0);

gl.glCompressedTexImage2D(GL10.GL_TEXTURE_2D, -2, GL10.GL_PALETTE4_RGB8_OES, originalBitmap.getWidth(), h, originalBitmap.getHeight(),size, bb);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...