Add gfx::lerp for poses

This commit is contained in:
Nikita Lisitsa 2021-07-21 22:06:18 +03:00
parent ef53e0e8d2
commit 7b929ec951

View file

@ -87,6 +87,14 @@ namespace psemek::gfx
template <typename T>
using pose = std::vector<bone_transform<T>>;
template <typename T, typename Pose1, typename Pose2>
void lerp(Pose1 const & pose1, Pose2 const & pose2, T t, pose<T> & output)
{
output.resize(pose1.size());
for (std::size_t i = 0; i < output.size(); ++i)
output[i] = lerp(pose1[i], pose2[i], t);
}
template <typename T, typename Pose, typename Bones>
void compile(Pose const & local_pose, Bones const & bones, bone_transform<T> const & transform, pose<T> & result)
{