반응형
캐릭터 가 적 오브젝트를 부드럽게 바라보는 방법입니다.
void Update()
{
FollowTarget();
}
void FollowTarget()
{
if (targetEnInfo != null)
{
Vector3 dir = targetEnInfo.transform.position - this.transform.position;
this.transform.rotation = Quaternion.Lerp(this.transform.rotation, Quaternion.LookRotation(dir), Time.deltaTime * speed);
}
}
targetEnInfo 은 적 오브젝트 입니다.
수학적으로 벡터 간의 차는 방향을 나타내는 개념을 이용해 보는 방향을 얻어내고 보간을 이용한것입니다.
Vector3 dir = targetEnInfo.transform.position - this.transform.position 는 적위치 - 현재 내위치 의미이며 현재 내위치에서 적위치의 방향을 나타냅니다.
Quaternion.LookRotation(dir) 은 dir 방향에 따른 쿼터니언 축회전을 하게 해줍니다.
바라보는 속도를 높이고 싶으면 speed 값을 높이시면 됩니다.
이상입니다.
반응형
'유니티 > 프로그래밍' 카테고리의 다른 글
[Unity] Quaternion.FromToRotation 이해 (0) | 2019.01.03 |
---|---|
[Unity] ugui 스킬쿨타임 구현하기 (0) | 2018.12.06 |
[Unity] 버그/문의 메일보내기 (0) | 2018.12.05 |
[Unity] 캐릭터모델 에니메이션중에 상체 움직이기(본 움직이기) (5) | 2018.12.04 |
[Unity] inputfield 사용시 클릭이후에 input을 하고 싶을떄 (0) | 2018.08.16 |