Mathf.Clamp의 기본 형태
float clampedValue = Mathf.Clamp(value, minValue, maxValue);
value: 제한하고자 하는 값
minValue: 반환될 수 있는 최소 값
maxValue: 반환될 수 있는 최대 값
Mathf.Clamp 는 value가 minValue보다 작으면 minValue를,
maxValue보다 크면 maxValue를,
그렇지 않으면 value를 그대로 반환한다.
<예시>
player.gameObject.transform.Translate(-2, 0, 0);
float clampedX = Mathf.Clamp(player.transform.position.x, -8f, 8f);
player.transform.position = new Vector3(clampedX, player.transform.position.y, player.transform.position.z);
이 코드에서 Mathf.Clamp는 플레이어의 x 위치를 -8에서 8 사이로 제한.
즉, player가 이 범위를 벗어나려고 하면, Mathf.Clamp는 플레이어의 위치를 가장 가까운 경계값으로 조정한다.
만약 플레이어가 x축에서 -9 위치로 이동하려고 한다면, Mathf.Clamp는 -8을 반환.
반대로, 플레이어가 9 위치로 이동하려고 한다면, Mathf.Clamp는 8을 반환.
플레이어의 위치가 -8과 8 사이라면, 현재 위치값이 그대로 유지된다.
이러한 방식으로 Mathf.Clamp는 값이 특정 범위를 벗어나지 않도록 하는 데 유용하게 사용된다.
'유니티 C# 함수 사용 정리' 카테고리의 다른 글
Resources 폴더에서 Atlas를 찾아 image 반환하기 (0) | 2024.03.25 |
---|---|
instantiate 생성 시 이동 벡터에 따라 프리팹의 forward 조정하기 (0) | 2024.03.22 |
충돌된 지점의 법선 벡터 메모 (0) | 2024.03.14 |
딕셔너리와 인덱서 (0) | 2024.02.08 |
대리자(delegate) (0) | 2024.01.30 |