FYI, this is in CVS now
Im hyaving major fights with trying to make lookAt point the camera at the origin.
Is this fix in a built release and if so which?
It should be in the nightly build.
I don't know if it's better or worse, but I have very similar situations in some of my AI steering code, for example when a plane is trying to "roll" so that it has its wings level. In this case, when the plane is travelling straight up, there is no "correct" roll, any roll value will level the wings. So in this case I just use the dot product of the plane forward axis with the global up axis, and if it is >0.9999 (for example) I leave the roll alone. Would it be possible to do the same thing - check the dot product, and if the camera is pointing nearly up or down, base the left axis on the current value? I know in the case of my plane this avoids odd behaviour when the plane is pointing vertically, since it doesn't start trying to achieve different random rolls based on small angular variations.
If you have a test case where you can show why this is better, that would help it get adopted