Problema com a função getFloatv no GL11 (Android)

Estou aprendendo o Open GL ES e gostaria de obter uma interface mais intuitiva com objetos 3D do que a sugerida pelo google nomostra @TouchRotateActivity. Para fazer isso, gostaria de multiplicar minha matriz ModelView pela matriz ModelView no estado anterio

Mas encontro o seguinte problema: a função getFloatv retorna 0 valores na minha matriz de flutuação e não entendo o porquê (minha matriz ModelView não está vazia: se estivesse, não colocaria meu cubo na tela

Alguém poderia me ajudar a descobrir qual é o problema? Aqui estão as alterações no código.

private float[] previous;

public CubeRenderer() {
    mCube = new Cube();
    previous = new float[16];
}

public void onDrawFrame(GL10 gl) {
    GL11 gl11 = (GL11) gl;

    gl11.glClear(GL11.GL_COLOR_BUFFER_BIT | GL11.GL_DEPTH_BUFFER_BIT);

    gl11.glMatrixMode(GL11.GL_MODELVIEW);
    gl11.glLoadIdentity();
    gl11.glTranslatef(0, 0, -3.0f);
    gl11.glRotatef(mAngleX, 0, 1, 0);
    gl11.glRotatef(mAngleY, 1, 0, 0);

    gl11.glEnableClientState(GL11.GL_VERTEX_ARRAY);
    gl11.glEnableClientState(GL11.GL_COLOR_ARRAY);

    /*if(!previous.equals(new float[16]))
        gl11.glMultMatrixf(previous, 0);*/
    gl11.glGetFloatv(GL11.GL_MODELVIEW_MATRIX, previous, 0);

    Log.d("taille matrice",Integer.toString(previous.length));
    for(int i=0; i<previous.length;i++)
        Log.d(Integer.toString(i),Float.toString(previous[i]));

    mCube.draw(gl11);
}

Agradeço antecipadamente

questionAnswers(2)

yourAnswerToTheQuestion