Ive been using unity Graphics Skin Matrix and Blob Array to achieve mesh deformation at runtime. However when trying to blend to poses i couldnt figure out how to interpolate two matricies without causing artifacts.
Ive read that the way to go is to destruct the matricies and lerp the translation and slerp the rotation components and then reform however this doesnt work.
for (int j = 0; j < bones; j++)
{
var trans0 = m0[j];
var trans1 = m1[j];
var rotMat = new float3x3(Quaternion.Slerp(trans0.rotation, trans1.rotation, animation.weight));
renderer.ElementAt(j).Value = new float3x4(
rotMat.c0,
rotMat.c1,
rotMat.c2,
math.lerp(trans0.position, trans1.position, animation.weight));
}
this ofcourse works at weights 0 and 1 but fails otherwise.
I didnt find much info on the skinMatrix topic and i wanted to be sure this i a bad idea before moving on to other animation options.