본문 바로가기
가이드/Unity, C#

유니티(Unity) 캐릭터 범위내 이동 - Mathf.Clamp

by 루엔_vivid 2022. 6. 7.

유니티에서 캐릭터를 Translate를 이용하여 움직이게 될때

특정 범위안에서만 이동하고 싶을때가 있다.

 

이럴때에는

Mathf.Clamp

함수를 사용하면 된다.

 

character.transform.Translate(Time.deltaTime, 0, 0);

기존에 위와 같이 character를 Time.deltaTime 만큼 x좌표를 이동시키는 코드가 있을때

범위를 -1 ~ 1 사이로만 이동이 가능하게 하고 싶다면

 

character.transform.Translate(Time.deltaTime, 0, 0);

Vector3 localPosition;
localPosition = new Vector3(Mathf.Clamp(character.transform.position.x, -1f, 1f),
    (localPosition = character.transform.localPosition).y, localPosition.z);
character.transform.localPosition = localPosition;

이렇게 Mathf.Clamp에 범위를 넣어주면 된다.

반응형

댓글