public static Lerp ( |
||
left | ||
right | ||
lerp | float | |
Résultat |
public static PoseBoneMatrix Lerp(PoseBoneMatrix left, PoseBoneMatrix right, float lerp)
{
PoseBoneMatrix m = new PoseBoneMatrix();
m.tag = changetag.All;
m.r = Quaternion.Lerp(left.r, right.r, lerp);
if (float.IsNaN(m.r.x))
{
m.r = Quaternion.identity;
}
m.t = Vector3.Lerp(left.t, right.t, lerp);
m.s = Vector3.Lerp(left.s, right.s, lerp);
return m;
}
}
public static Frame Lerp(Frame left, Frame right, float lerp) { Frame f = new Frame(); f.key = false; f.fid = left.fid; //f.bonesinfo = new PoseBoneMatrix[left.bonesinfo.Length]; f.bonesinfo = new List <PoseBoneMatrix>(left.bonesinfo); for (int i = 0; i < f.bonesinfo.Count; i++) { f.bonesinfo[i] = PoseBoneMatrix.Lerp(left.bonesinfo[i], right.bonesinfo[i], lerp); } return(f); }