MoveTowards
- 목표 위치까지 등속이동
- 숫자와 속도가 비례
[SerializeField] private GameObject _target;
void Update()
{
transform.position = Vector3.MoveTowards(transform.position, _target.transform.position, 5f * Time.deltaTime); // 목표 위치로 등속운동, 숫자 비례, 현재위치, 목표위치, 속도
}
SmoothDamp
- 목표 지점 근처에서 감속하며 이동
- 숫자는 걸리는 시간
[SerializeField] private GameObject _target;
Vector3 velo = Vector3.zero;
void Update()
{
transform.position = Vector3.SmoothDamp(transform.position, _target.transform.position, ref velo, 2f);
}
Lerp
- 선형 보간을 이용한 이동
- SmoothDamp 와 비슷하지만 보다 감속 시간이 김
- 숫자와 속도가 비례 (최대값 1)
[SerializeField] private GameObject _target;
void Update()
{
transform.position = Vector3.Lerp(transform.position, _target.transform.position, 0.01f);
}
Slerp
- 구형 보간을 이용한 이동
- 목표 위치까지 포물선으로 이동
- 숫자와 속도가 비례
- 우주선이 착륙하는 느낌
[SerializeField] private GameObject _target;
void Update()
{
transform.position = Vector3.Slerp(transform.position, _target.transform.position, 0.05f);
}
'유니티' 카테고리의 다른 글
시네머신 카메라 적용 (1) | 2023.12.26 |
---|---|
3D FSM Player 이동, 점프, 공격 구현 (1) (2) | 2023.12.22 |
프로빌더(ProBuilder) (0) | 2023.12.21 |
Input 메서드 정리 (1) | 2023.12.21 |
데미지 텍스트 효과 (0) | 2023.12.21 |