OpenGLES (Win32/C++/VS2010) を使用して単純な三角形を描画したい。したがって、エラーは発生していませんが、OpenGLES 呼び出しでシステムがハングアップします。
自分のマシンでさまざまなゲーム エンジンをコンパイルして実行でき、すべて問題なく動作しましたが、単純な三角形を描くことができません!
ゲーム ループがまだ実行されているため、更新イベントと描画イベントを受け取り、三角形が表示されますが、OpenGLES 呼び出しが非常に遅く、システムがハングアップします!
1. Creating and initializing EGL stuff.
2. glViewport(0, 0, 800, 480);
3. glClearColor(/*black*/);
4. glClear(GL_COLOR_BUFFER_BIT);
5. GLfloat vertices[] = {1,0,0, 0,1,0, -1,0,0};
6. glEnableClientState(GL_VERTEX_ARRAY);
7. glVertexPointer(3, GL_FLOAT, 0, vertices);
8. glDrawArrays(GL_TRIANGLES, 0, 3);
9. glDisableClientState(GL_VERTEX_ARRAY);
10. glFlush();
11. eglSwapBuffers(...)
ゲームのログが本当に奇妙なことを示しています!
NO TAG: Updated: 0ms.
NO TAG: Rendered: 0ms.
NO TAG: Updated: 1ms.
NO TAG: Rendered: 1ms.
NO TAG: Updated: 0ms.
NO TAG: Rendered: 0ms.
NO TAG: Updated: 1ms.
NO TAG: Rendered: 1ms.
NO TAG: Updated: 0ms.
NO TAG: Rendered: 1ms.
NO TAG: Updated: 1ms.
NO TAG: Rendered: 0ms.
NO TAG: Updated: 567ms.
NO TAG: Rendered: 478ms.
たとえば、50 番目のループごとに描画と更新の呼び出しが遅くなります。