Jump to content

  • Log In with Google      Sign In   
  • Create Account


#Actualrnlf

Posted 24 August 2012 - 03:02 AM

You cannot interpolate between transformation matrices without adding such funny effects because this will stop the resulting coordinate system's from being orthonormal, effectively resulting in your scene to be skewed, streched and more.

You might consider splitting your camera motion into its position and rotation. If you represent your rotation as a quaternion, you may use http://en.wikipedia.org/wiki/Slerp to interpolate nicely between your cameras' quaternions. After interpolation of rotation and translation you construct a new combined matrix by converting the quaternion to a rotation matrix and multiplying it with your translation matrix (be advised though, that there are some nice tricks to speed up multiplying a (pure) rotation matrix with a (pure) translation matrix).

Hope that helps.

#3rnlf

Posted 24 August 2012 - 12:34 AM

You cannot interpolate between transformation matrices without adding such funny effects because this will stop the resulting coordinate system's from being orthonormal, effectively resulting in your scene to be skewed, streched and more.

You might consider splitting your camera motion into its position and rotation. If you represent your rotation as a quaternion, you may use http://en.wikipedia.org/wiki/Slerp to interpolate nicely between your cameras' quaternions. After interpolation of rotation and translation you construct a new combined matrix by converting the quaternion to a rotation matrix multiplying it with your translation matrix (be advised though, that there are some nice tricks to speed up multiplying a (pure) rotation matrix with a (pure) translation matrix.

Hope that helps.

#2rnlf

Posted 24 August 2012 - 12:32 AM

You cannot interpolate between transformation matrices without adding such funny effects because this will stop the resulting coordinate system's from being orthonormal, effectively resulting in your scene to be skewed, streched and more.

You might consider splitting your camera motion into its position and rotation. If you represent your rotation as a quaternion, you may use http://en.wikipedia.org/wiki/Slerp to interpolate between your cameras' quaternions. After interpolation of rotation and translation you construct a new combined matrix by converting the quaternion to a rotation matrix multiplying it with your translation matrix (be advised though, that there are some nice tricks to speed up multiplying a (pure) rotation matrix with a (pure) translation matrix.

Hope that helps.

#1rnlf

Posted 24 August 2012 - 12:32 AM

You can not interpolate between transformation matrices without adding such funny effects because this will stop the resulting coordinate system's from being orthonormal, effectively resulting in your scene to be skewed, streched and more.

You might consider splitting your camera motion into its position and rotation. If you represent your rotation as a quaternion, you may use http://en.wikipedia.org/wiki/Slerp to interpolate between your cameras' quaternions. After interpolation of rotation and translation you construct a new combined matrix by converting the quaternion to a rotation matrix multiplying it with your translation matrix (be advised though, that there are some nice tricks to speed up multiplying a (pure) rotation matrix with a (pure) translation matrix.

Hope that helps.

PARTNERS