void UpdateBuffer()
 {
     for (int i = 0; i < bufferSize - 1; i++)
     {
         posBuffer[bufferSize - 1 - i] = posBuffer[bufferSize - 1 - (i + 1)];
     }
     posBuffer[0] = new PosHistory(Time.time, this.gameObject.transform.position);
 }
    //update buffer elements about position
    void UpdatePosBuffer()
    {
        //posBuffer[bufferSize - 1] is the initial position,
        //so position updating is proceeding except posBuffer[bufferSize - 1]
        for (int i = 1; i < bufferSize - 1; i++)
        {
            posBuffer[bufferSize - 1 - i] = posBuffer[bufferSize - 1 - (i + 1)]; //posBuffer[0] is the newest information
        }

        posBuffer[0] = new PosHistory(this.transform.position);
    }
    //配列にtrackerのpositionを初期位置として格納する
    public void SetInitialPosition()
    {
        posBuffer[bufferSize - 1] = new PosHistory(this.transform.position); //set initial position in posBuffer[bufferSize - 1]

        //Debug.Log("InitialData" + posBuffer[bufferSize - 1].position);
    }
 // Use this for initialization
 void Start()
 {
     posBuffer[bufferSize - 1] = new PosHistory(Vector3.zero); //initialize the element of buffer
 }