private Vector3 easeInOutCirc()
{
val = this.ratioPassed * 2f;
if (val < 1f){
val = -(Mathf.Sqrt(1f - val * val) - 1f);
return new Vector3(this.diffDiv2.x * val + this.from.x, this.diffDiv2.y * val + this.from.y, this.diffDiv2.z * val + this.from.z);
}
val -= 2f;
val = (Mathf.Sqrt(1f - val * val) + 1f);
return new Vector3(this.diffDiv2.x * val + this.from.x, this.diffDiv2.y * val + this.from.y, this.diffDiv2.z * val + this.from.z);
}