Harold,
it's not necessary to be close to 90°, but shallow angles can be problematic for several reasons (mainly view obstruction, poor matching point recognition and increased depth error). Anything steeper than 45° can usually be considered good, and if every object point is seen by at least 3 cameras under good angles, 3D reconstruction should work well.
Of course there is some room for experimentation, and the algoritms implemented in Photoscan appear to be very robust. For example, I have successfully generated a model for which all cameras saw the object (in this case, the ground surface) at shallow angles (less than 30°), but as a result geometric resolution was quite poor, there were some holes in the model, and many small surface features were quite distorted. It was a usable model, but very far from what you can get with a better set of images.