private IEnumerator anglesUpdater()
 {
     while (animState != AnimState.UNANIMATED)
     {
         float[] updated = updateOrientations.getAngles();
         animator.operate(updated);
         yield return(null);
     }
 }
예제 #2
0
    public void operate(float[] angles)
    {
        if (angles != null)
        {
            Buffer.BlockCopy((float[])angles.Clone(), 0, upper, 0, 20 * sizeof(float));
            upperAnim.operate(upper);

            Buffer.BlockCopy((float[])angles.Clone(), 20 * sizeof(float), lower, 0, 20 * sizeof(float));
            lowerAnim.operate(lower);
        }

        if (dataRecorder != null)
        {
            if (recorder.shouldRecord() || shouldInit)
            {
                recorder.addUpper((float[])upper.Clone());
                recorder.addLower((float[])lower.Clone());

                shouldInit = false;
            }
        }
    }