Lerp vs Slerp

6 May 2018 in geometry

Here’s a demonstration of the difference between two common unit vector interpolation schemes.

The first option is to use linear interpolation in the ambient Euclidean space, followed by a normalization step. Simple and fast, but the angular velocity is not uniform.

\[\mathbf v = (1-t) \, \mathbf v_0 + t \, \mathbf v_1\]

Spherical linear interpolation produces uniform angular velocity at the expense of non-linear computation. Slerp is commonly used to interpolate between rotations represented by quaternions.

\[\mathbf v = \frac{\sin{[(1-t) \theta]}}{\sin{\theta}} \, \mathbf v_0 + \frac{\sin{[t \theta]}}{\sin{\theta}} \, \mathbf v_1\]
Your browser does not support the HTML5 canvas tag.