FreeTrack Forum

Welcome, you're not connected. ( Log in - Register )

RSS >  REQUEST/SUGGESTION: Parallax, X-translation should not result in yaw
petroleus #1 22/04/2010 - 16h33

Class : Apprenti
Posts : 11
Registered on : 12/04/2010

Off line

Okey, I already mentioned this but let me post it as official request/suggestion ;)

In short: when you move your head in pure X translation the camera is no longer looking straight at your head but at an angle. in FreeTrack this angle is interpreted as Yaw input, but in reality your head hasn't moved a single degree (cause you're just that pro). Using simple trigonometry this can be solved. Only one new input parameter is needed: the (centered) distance from R to the camera lens. Optionally a factor can be included allowing the user to define how much to compensate for parallax.


example calculation:

Input Data:
situation 1: head is looking straight foreward (and at the camera).
R is at (0,0,800)(mm) (X,Y,Z), meaning no translation has occured, and in side view the horizontal distance(Z) from R to the camera is 800mm

situation 2: head is looking straight foreward (not at the camera).
R is at (30,0,800)(mm), meaning 30mm X translation has occured

Calculation:
ParallaxYaw=ArcTan(X/Z)
ParallaxPitch=ArcTan(Y/Z)
TrueYaw=Yaw-(ParallaxYaw*ParallaxYawCompensationFactor)
TruePitch=Pitch-(ParallaxPitch*ParallaxPitchCompensationFactor)


As can be seen having a small translation, or a large distance from the camera are both effective ways to reduce the parallax problem. But for those of us who do not have the ability to move the camera farther away (including myself, as matter of fact I have my cam floating above my monitor looking at a mirror behind the monitor, just to get the few extra centimeters.. ^^ ) or that have a compulsive desire to translate several yards side to side, this option would be a great help :)
flow #2 23/04/2010 - 12h47

Class : Apprenti
Posts : 6
Registered on : 02/02/2010

Off line

When you move around you turn a little to keep facing the monitor (camera) to avoid yaw rotation. This is how it should be, the monitor is the center of your vision and you always want to comfortably see it. Why would you want it any other way?

Take for example if you were to move to the extreme left and then try to yaw to the extreme left, this is difficult to do while still eyeballing the monitor but is made easier by the very thing you want to eliminate!
petroleus #3 23/04/2010 - 14h54

Class : Apprenti
Posts : 11
Registered on : 12/04/2010

Off line

that's why I proposed a factor ;). Personally I don't know why anyone would want to disable 'relative translation', yet the option is given ;)

 >  Fast reply

Message

 >  Stats

1 user(s) connected during the last 10 minutes (0 member(s) and 1 guest(s)).