2
我想在OpenGL GLSurfaceView
中顯示一個字節數組。從OpenGL中的字節數組創建紋理,Android
所以我有一個GLRenderer
類實現Renderer
和方法onSurfaceCreated
byte[] data = new byte[512*512];
for (int i = 0; i < 512*512; i++) {
data[i] = 100;
}
ByteBuffer buffer = ByteBuffer.allocateDirect(512*512);
buffer.put(data);
buffer.position(0);
GLES20.glTexImage2D(GLES20.GL_TEXTURE_2D, 0, GLES20.GL_RGBA, 512, 512, 0,
GLES20.GL_RGBA, GLES20.GL_UNSIGNED_BYTE, buffer);
但沒有什麼是顯示在屏幕上。僅供參考,onSurfaceChanged
和方法中沒有特殊代碼。
如果您使用的是無符號字節RGBA格式,則每個像素需要4個字節的數據。另外你在'onDrawFrame'中沒有特殊的代碼是什麼意思?你如何綁定紋理? – pleluron
然後使用GL_RED顏色格式,並返回每像素1字節。 – pleluron
@pleluron感謝您的回覆,它工作。你可以發佈答案嗎? – Newben