|
||||||||||||||||||
Add Forum to Favorites | Send Topic To a Friend | View Forum FAQ | Track this topic |
Last Thread Next Thread ![]() |
| eye and up vectors from view matrix |
|
![]() Vexator Member since: 5/24/2005 From: Heidelberg, Germany |
||||
|
|
||||
| how do i extract the eye and up vectors from a view matrix? thank you! |
||||
|
||||
![]() Lord_Evil Member since: 8/27/2004 From: Ulm, Germany |
||||
|
|
||||
| assuming the following matrix layout: m11 m21 m31 m41 m12 m22 m32 m42 m13 m23 m33 m43 m14 m24 m34 m44 You get the up vector from the view matrix like this: up = (m12, m22, m32) For the position/eye vector you need the inverse view matrix and then it's eye = (m41, m42, m43) |
||||
|
||||
![]() Vexator Member since: 5/24/2005 From: Heidelberg, Germany |
||||
|
|
||||
| mh but position != eye vector, isn't it? in my matrix class, translation is stored in m14, m24, m34. if the camera looks along the negative z-axis, then the up vector should be (0, 1, 0) and the view vector (0, 0, -1), right? with your suggestion, however, the view vector is (0, 0, 0).. any idea what's wrong? thanks! [Edited by - Vexator on June 15, 2008 3:06:32 PM] |
||||
|
||||
![]() Lord_Evil Member since: 8/27/2004 From: Ulm, Germany |
||||
|
|
||||
| No, eye = position of camera. What you talk of is the lookAt vector or the looking direction. The eye-vector (0,0,0) is the default camera position. |
||||
|
||||
![]() Vexator Member since: 5/24/2005 From: Heidelberg, Germany |
||||
|
|
||||
| ok sry, so what i need then is the lookAt-vector.. how would i get that? m13, m23, m33? [Edited by - Vexator on June 15, 2008 5:08:33 PM] |
||||
|
||||
![]() Lord_Evil Member since: 8/27/2004 From: Ulm, Germany |
||||
|
|
||||
| Using the layout I described earlier, yes! |
||||
|
||||
![]() Trienco Member since: 8/23/2001 From: Munich, Germany |
||||
|
|
||||
| Only problem is that most people say look-at and mean a point (position + view_direction). Getting just the direction from the matrix is simple (as above). |
||||
|
||||
All times are ET (US)![]() |
Last Thread Next Thread ![]() |
|