當我在仿真器上運行我的程序時,它會顯示一個ImageView
初始屏幕,然後顯示其餘應用程序的其餘部分的黑屏,該屏幕使用GLSurfaceViews
。 OGL在我的手機上運行良好。我已經在兩臺計算機上測試了這個程序(低性能和高性能),並且都沒有顯示GLSurfaceViews。我還使用Google apidemos interweb網站上的一些OGL演示測試了仿真器,並且這些演示不顯示在任何一臺計算機上。我的程序使用OGL es 1.1,但是我也測試過使用OGL es 1.0無濟於事。我怎樣才能在模擬器上顯示ogl?謝謝。Android - OpenGL不顯示w/emulator?
下面是一些簡單的方形渲染代碼不會在模擬器上
public void onDrawFrame(GL10 gl) {
//This works
gl.glClearColor(_red, _green, _blue, 1.0f);
gl.glClear(GL10.GL_COLOR_BUFFER_BIT);
//This doesn't
float vertices[] = { .5f, .5f, 0, .5f, -.5f, 0, -.5f, .5f, 0, -.5f, -.5f, 0 };
FloatBuffer vertexSquareBuffer = ByteBuffer.allocateDirect(4 * 3 * 4)
.order(ByteOrder.nativeOrder()).asFloatBuffer();
vertexSquareBuffer.put(vertices);
vertexSquareBuffer.position(0);
gl.glColor4f(1, 1, 0, 0.5f);
gl.glVertexPointer(3, GL10.GL_FLOAT, 0, vertexSquareBuffer);
gl.glDrawArrays(GL10.GL_TRIANGLE_STRIP, 0,4);
}
我跑的鏈接程序,它顯示紅色的背景,這是很好的。所以我在一些平凡的代碼中添加了一個正方形(上面貼出的),並且沒有在模擬器上顯示(在手機上工作)。現在做什麼? – 2011-06-11 17:04:26
我認爲你的示例代碼缺少一些小的OpenGL調用。也許看看該教程的第二部分,看看是否可行:http://www.droidnova.com/android-3d-game-tutorial-part-ii,328.html – 2011-06-12 02:17:39
我缺少gl.glEnableClientState( GL10.GL_VERTEX_ARRAY);我的手機根本不在乎。這是解決的一個主要問題。非常感激。 – 2011-06-12 03:07:52