Thanks for the insight Tim and Travis,
My current code isn't that math oriented at the moment, because of the frequency it might be called at (bin browsing etc) it needs to stay relatively simple.
It basically only calculates the optimal 'eye.z' position (in modelview space) from each bounding box corner and takes the one closest to the viewer for a final negative translate in the modelview matrix.
This method should be somewhat better then the one currently used in 1.0 though.
My current code isn't that math oriented at the moment, because of the frequency it might be called at (bin browsing etc) it needs to stay relatively simple.
It basically only calculates the optimal 'eye.z' position (in modelview space) from each bounding box corner and takes the one closest to the viewer for a final negative translate in the modelview matrix.
This method should be somewhat better then the one currently used in 1.0 though.