본문 바로가기
Unity 유니티 기초강의

유니티 수학함수 Mathf

by 만사오케이프로 2022. 5. 17.
반응형

유니티 기본 수학함수 있습니다.

Static Variables

Deg2Rad -각도를 라디안으로 변환하는, 변환 상수 입니다.
Epsilon -아주 작은 부동 소수점 값을나타냅니다.(읽기전용)
소수점 비교할때 많이 사용합니다. 유니티 버그로 인하여 0에가까운 소수값을 비교하기 위해 사용합니다.
Infinity -양의 무한대를 나타냅니다. 
 Physics.Raycast(Vector3 origin, Vector3 direction, RaycastHit hit, float maxDistance = Mathf.Infinity, int layerMask = DefaultRaycastLayers)
레이를 쓸때 많이 나용합니다.
PI -3.14159265358979...값 입니다.
Rad2Deg -라디안을 각도로 변환해주기 위한 상수값입니다.

public static float GetAngle(Vector3 from, Vector3 to)
{
    Vector3 v = to - from;
    return Mathf.Atan2(v.y, v.x) * Mathf.Rad2Deg;
}

 

Static Functions

Abs 절대값으로 변환합니다. 
// prints 14.3         
Debug.Log(Mathf.Abs(-14.3f));
Approximately -유사한 2개의 부동소수점 값을 비교할때 사용합니다.
  if (Mathf.Approximately(2.0F, 20.0F / 10.0F))             
      print("같은 값입니다");
Ceil -소수점이 있으면 숫자 1을 올려줍니다.
// Prints 10         Debug.Log(Mathf.Ceil(10.0F));         
// Prints 11         Debug.Log(Mathf.Ceil(10.2F));         
// Prints 11         Debug.Log(Mathf.Ceil(10.7F));
CeilToInt -소수점이 있으면 숫자 1을 올려줍니다.
// Prints 10         Debug.Log(Mathf.Ceil(10.0F));         
// Prints 11         Debug.Log(Mathf.Ceil(10.2F));         
// Prints 11         Debug.Log(Mathf.Ceil(10.7F));
Clamp -최소값 최대값 사이의 값이 범위 외의 값이 되지 않도록 합니다.
//Prints 10          Debug.Log(Mathf.Clamp( 15, 1, 10));
Clamp01 -0에서 1의 사이의 값으로 돌려줍니다. value 인수가 0 이하이면 0, 이상이면 1입니다.
//Prints 0          Debug.Log(Mathf.Clamp(-1f, 0.0f, 1.0f));
Floor 작거나 같은 가장 큰 정수값을 반환합니다.
//Prints  1              Debug.Log(Mathf.Floor(1.5f)); 
FloorToInt 작거나 같은 가장 큰 정수값을 반환합니다.
//Prints  1              Debug.Log(Mathf.Floor(1.5f)); 
Lerp -/t/에 의해 /a/와 /b/사이를 보간합니다. /t/는 0-1사이의 값으로 고정됩니다.
LerpAngle -Lerp 와 동일하지만 주위 360도를 둘렀을때의 정확히 보간된 값을 확인합니다.
LerpUnclamped -/t/에 의해 /a/와 /b/사이를 보간합니다. /t/는 0-1사이의 값으로 고정됩니다.
LinearToGammaSpace 선형에서 감마 색상 공간으로 값을 변형합니다.
Log 지정된 base에서 해당 수의 로그를 반환합니다.
Log10 지정된 수의 base가 10인 로그를 반환합니다.
Max 두개 이상의 값들중 가장 큰값을 반환합니다.
Min 두개 이상의 값들중 가장 작은값을 반환합니다.
MoveTowards current 에서 target 으로 이동합니다.
MoveTowardsAngle MoveTowards 함수와 기능은 같지만, 360도 돌때, 정확하게 값이 보간하는 것을 확인합니다.
Pow 거듭제곱를 반환합니다.
//= 3^2 == 9                Mathf.Pow(3f,2f); 
Round -근접한 정수로 반올림합니다.
// Prints 12         Debug.Log(Mathf.RoundToInt(11.5f));          
// Prints -10         Debug.Log(Mathf.RoundToInt(-10.0f));
RoundToInt -근접한 정수로 반올림합니다.
// Prints 12         Debug.Log(Mathf.RoundToInt(11.5f));          
// Prints -10         Debug.Log(Mathf.RoundToInt(-10.0f));

 

반응형

댓글