I'm assuming you want to avoid an explicit
inverse. If you know the transformations in the
modelview matrix, you can get the inverse by
playing some games with matrix properties. For
example, if the modelview is nothing more than
the camera transformation
MV = T R
that is, a rotation followed by a translation, then you could simplify things.
The matrix you seek is
M = (P MV)
the inverse of the mvp.
Given the MV above, you have
M = (P T R)
-1 -1 -1
M = R T P
Since R is a rotation, the inverse is the
transpose; since T is a translation, the inverse
is -T; since the inverse of P is given in the
red book (and elsewhere), you have
M = R (-T) P
If you follow this reasoning you can unroll your
matrices and solve them directly.