@Override public void onDrawFrame(GL10 gl) { long startTime = gameClock.getCurrentTime(); updatePlayer(); updateCamera(); GLES20.glClear(GLES20.GL_COLOR_BUFFER_BIT); GLES20.glClear(GLES20.GL_DEPTH_BUFFER_BIT); drawSkyBox(); drawPlayer(); drawMaze(); collisionDetectionAndResponse(); long elapsedTime = gameClock.getCurrentTime() - startTime; while(elapsedTime < gameClock.getGamePlayRate()) { elapsedTime += (gameClock.getCurrentTime() - elapsedTime); } }