IEnumerator Co_ChangeView(eCamearView _type) { yield return(null); Transform _p = null; for (int i = 0; i < list.Count; i++) { if (list[i].type == _type) { _p = list[i].trans; break; } } Vector3 _p0 = trans.position; Vector3 _p1 = _p.position; Quaternion _r0 = trans.rotation; Quaternion _r1 = _p.rotation; float _speed = 1f / duration; float _percent = 0; float _interval; while (_percent <= 1f) { _percent += _speed * Time.deltaTime; _interval = curve.Evaluate(_percent); trans.position = Vector3.Lerp(_p0, _p1, _interval); trans.rotation = Quaternion.Lerp(_r0, _r1, _interval); yield return(null); } }
public void SetToCameraView(eCamearView _type) { //Debug.Log("카메라 모드시도:" + _type); if (cameraType == _type) { return; } //Debug.Log(" >> 변경한다..."); cameraType = _type; cameraRig.SetToCameraView(_type); }
public void SetToCameraView(eCamearView _type) { StopCoroutine("Co_ChangeView2"); StartCoroutine("Co_ChangeView2", _type); }