added lerp and slerp