1using System.Collections;
2using System.Collections.Generic;
13 private List<Queue<Vector3>> fromQueue;
17 fromQueue =
new List<Queue<Vector3>>();
18 for (
int i = 0; i < @
from.Length; i++)
20 fromQueue.Add(
new Queue<Vector3>());
26 for (
int i = 0; i < @
from.Length; i++)
28 if (!@
from[i])
continue;
30 var lea = @
from[i].transform.localEulerAngles;
32 new Vector3(lea.x, lea.y, lea.z)));
34 while (fromQueue[i].Count >
AvgClamp)
36 fromQueue[i].Dequeue();
43 for (
int i = 0; i < @
from.Length; i++)
45 if (!@
from[i])
continue;
47 var lea = @
from[i].transform.localEulerAngles;
49 new Vector3(lea.x, lea.y, lea.z)));
51 while (fromQueue[i].Count >
AvgClamp)
53 fromQueue[i].Dequeue();
57 for (
int i = 0; i < @
from.Length; i++)
59 if (!@
from[i])
continue;
61 var avg =
default(Vector3);
62 foreach (var v
in fromQueue[i])
67 avg /= fromQueue[i].Count;
69 to[i].transform.localEulerAngles = avg;
72 to[i].transform.localPosition = @
from[i].transform.localPosition;
78 to[i].transform.localEulerAngles = @
from[i].transform.localEulerAngles;
static Vector3 ClampAngle(Vector3 value)