Well after a few test I am more and more puzzled. What Andy told me was that the noprojection() method would disable the perspective projection matrix by setting it to the identity. So I called the method and tried to update the viewing matrix by :

1- creating the matrix R generated by the OGL code glfrustrum(l,r,b,t,n,f). I found its expression in the red OGL book (appendix F of second edition) This is the perspective matrix that should have been set to the identity with viz.noprojection()

2- updating objects and/or main view point with R hoping that I will get the same result as when I just load the objects without the command noprojection()

But with none of these cases I get what I expect... Which brings those questions:

Where exactly is the viewing matrix hidden? Is it really what I am updating when I say <child>.update(matrix) or <viewpoint>.update(matrix)?

Is the perspective matrix right before the view matrix in the order of matrices multiplications?

Is the matrix in the red book correct and if yes, is it consistent with what viz uses?

Did I miss an important point?

Thanks a lot for trying to answer those questions

David