Mathf

정은재·2024년 5월 3일

유니티 개발을 하다보면 숫자를 계산하고 변경해야되는 일이 빈번합니다. 항상 그거 뭐였지 하면서 찾아보게 되는데 한번에 확인하려고 작성합니다.

Unity 개발할때 자주 사용하는 Mathf 함수

0. 절댓값

Mathf.Abs(Float num);

-> Abs는 어떤 값이든 양수로 반환 ! ex) Mathf.Abs(-1); // 값 : 1

1. 최대/최솟값

Mathf.Clamp(float num, float min, float max);
Mathf.Clamp01(float num);

-> Clamp는 num 값을 min, max에 맞추어 재조정해줍니다. min보다 작으면 min값을, max 값보다 크면 max값을 반환합니다.
ex)
Mathf.Clamp(0f, 3.1f, 3f);; // 값 : 3
-> Clamp01은 어떤 값을 넣어도 Min : 0 Max : 1사이의 값을 반환해줍니다.
ex)
Mathf.Clamp01(3f); // 값 : 1
Mathf.Clamp01(-100f); // 값 : 0

2. 올림/내림/반올림

Mathf.Ceil(float num);
Mathf.Floor(float num);
Mathf.Round(float num);
  • Ceil 숫자 올림 , Floor 숫자 내림 , Round 숫자 반올림
    함수 뒤에 ToInt를 붙여주면 반환 값이 int가 됩니다.
    ex)

3. 근사 (Approximately)

Mathf.Approximately(float a, float b);
  • 부동 소수점 float a가 float b와 같은지 (근사한지) 비교합니다. float은 부동 소수점이기 때문에 데이터들이 이리저리 가공되거나 특히, 물리를 사용하여 물체를 요리조리 가지고 놀다가 위치나 속력 같은 친구들 가지고 == 연산을 하게 되면 일치하지 않을 때가 있습니다. 이럴 때를 대비해서 float 데이터들은 Approximately를 이용하여 비교해야 합니다. 예를 들어 1.8f == 18.0f / 10.0f가 true를 반환하지 않을 수도 있습니다.
profile
새로운 상황에서 최선을 다하고 최대한 배울 수 있다고 끊임없이 자신을 설득 해야한다.

0개의 댓글