Christoph Hintermüller wrote:
Hi
why adjusting the whole camera in each frame??
Isn't it enoughto change the point of interest when the object leaves
a certain spere arround the point of interrest
and adjust the cameraposition if the object reaches a near/far
distance to the cameraposition or the angle of the viewing direction
to the last base dircetion of the camerea reaches a maximum or object
would disappear behind another object.
eg
minimum distance between object and camera := 3
maximum distance between object and camera := 20
maximum direction angles between camera repositons := 30°
radius of focus adjustment := 3
according to this values an adjustment of the point of interrrest
becomes necessary when the object beein followed moves more than 3 to
any side;
an adjustment of the camera and a reset of viewing angle
is recommenden when the angle between the direction of the last camera
and the actual viewing direction is greater than 30°
or the distance between camera and object is less than 3 or more than 20
or if the object would be obscured by another object.
cu
Christoph
This is an interesting idea, but I think I did not explain my prolem
correctly. I am more interested in 'riding' the object than watching it
from afar (I realize now this is not exactly how my original question
was worded). This is why I updated the camera every frame, my intent was
to have the viewer siting on (near) the object (which is changing
orientation) while looking in a particular (user selected) direction as
the scenery goes by (very quickly, since this is a very fast moving
object). I want the user to have a feel for where they are in the scene
and the orientation of the object.
In hind sight I realize that the camera orientation did not change
so I removed the pointAt ( I just initialize the orientation ), but
things were still shaky. So I put axis.iv at the viewing point, and this
was still jumping around (w/ and w/o pointAt). The center of the axes
would move around (I believe it should be in the exact same spot of the
viewpoint the whole time). At this point I am guessing my problem lies
elsewhere in the application so I will try to construct a minimal test
case that reproduces the problem for me.
Kevin
|