Skip to content

QuaternionSlerp inaccuracies in corner cases

As reported in BASOP ticket #738, the original implementation of QuaternionSlerp function is very simplistic, which results in inaccuracies in corner cases. An updated QuaternionSlerp has been provided to BASOP respository. The main changes are:

  • Changing sign of the second quaternion in the case of angles between quaternions above 180 degrees,
  • Using linear interpolation instead of spherical interpolation for very small angles between quaternions less than 0.1 degree.

This implementation has been thoroughly tested against the quaternion slerp implementation in .NET Framework.