版權聲明:本文爲博主原創文章,未經博主允許不得轉載。 https://blog.csdn.net/qingsheng1355/article/details/54912828
Mathf.Infinity 正無窮大
Mathf.NegativeInfinity 負無窮大
Mathf.Abs 絕對值
int Abs(int value)
float Abs(float value)
這個不用多說,是計算並返回絕對值
Mathf.Ceil 最小整數(向上取整)
float Ceil(float value)
用來返回大於或者等於浮點數value的一個最小整數(注意:返回的是一個falot類型)
Mathf.CeilToInt 最小整數(向上取整)
int CeilToInt(float value)
和Ceil一樣,只不過返回的是一個int類型
Mathf.Floor 最大整數(向下取整)
float Floor(float value)
用來返回小於或等於浮點數value的一個最大整數(注意:返回的是一個falot類型)
Mathf.FloorToInt 最大整數(向下取整)
float Floor(float value)
和Floor一樣,只不過返回的是一個int類型
Mathf.Approximately 近似
bool Approximately(float a,float b)
比較兩個浮點數是否相近
程序裏面有時候會出現想將兩個浮點數對比的情況,但是浮點數有可能因爲精度問題不等,比如1f和1f/1f,有可能會出現1f==1f/1f位false的情況,所以用Approximately要保險一些。
Mathf.Epsilon 小正數
一個很小的浮點數值,但不同於0
規則:
- anyValue + Epsilon = anyValue
- anyValue - Epsilon = anyValue
- 0 + Epsilon = Epsilon
- 0 - Epsilon = -Epsilon
有點像Approximately的偏差值
bool isEqual(float a, float b) {
if(a >= b - Mathf.Epsilon && a <= b + Mathf.Epsilon)
return true;
else
return false;
}
Mathf.Clamp 限制數
int Clamp(int value ,int min ,int max)
float Clamp(float value,float min,float max)
返回限制在min和max中的數,比如min爲0,max爲1,如果value爲2的話,返回的是1,如果value爲-1的話返回的是0。只有當value爲min和max之間才返回的是value。
Mathf.Clamp01 限制數在0和1之間
float Clamp(float value)
和Clamp一樣,只不過自動將min設置爲了0,max設置爲了1。
Mathf.Deg2Rad 度轉弧度常量
弧度=度*Mathf.Deg2Rad
其實就等於(PI * 2) / 360。
Mathf.Rad2Deg 弧度轉度常量
度=弧度*Mathf.Rad2Deg
其實就等於360 / (PI * 2)
Mathf.ClosestPowerOfTwo 最近的二次方數
int ClosestPowerOfTwo(int value)
返回距離value最近的2的次方數。
比如Mathf.ClosestPowerOfTwo(19)返回16,因爲19離2的4次方最近,於是返回了2的4次方
Mathf.NextPowerOfTwo 下一個二次方數
int NextPowerOfTwo (int value)
返回距離value最近的下一個2的次方數。
比如Mathf.NextPowerOfTwo(7)返回8
Mathf.DeltaAngle 增量角
float DeltaAngle(float current,float target)
計算給定的兩個角之間最短的差異。
比如Mathf.DeltaAngle(1080,90)就會輸出90。
Mathf.IsPowerOfTwo 是否是2的冪
bool IsPowerOfTwo(int value)
返回value是否是2的幾次方
Mathf.Lerp 插值
float Lerp(float from,float to,float t)
返回基於浮點數t返回from到to之間的插值,t要在0和1之間
如果t=0.5的話,就返回from和to的中間值
Mathf.Max 最大值
float Max(float a,float b)
float Max(params float[] values)
返回最大的值
Mathf.Min 最小值
float Min(float a,float b)
float Min(params float[] values)
返回最小的值
Mathf.MoveTowards 移向
float MoveTowards(float current,float target,float maxDelta)
是一個值向目標值靠近,速度不超過maxDelta,如果maxDelta爲負的話將會將遠離
Mathf.PingPong 乒乓
float PingPong(float t,float length)
在0到length之間往返。t值永遠不大於length,也不會小於0。
由0到length再由length到0往返
Mathf.Repeat 重複
float Repeat(float t,float length)
和PingPong很像,只不過這個是從0到length之後再回到0再到length。
Mathf.Pow 次方
float Pow(float f,float p)
返回f的p次方
Mathf.Round 四捨五入
float Round(float f)
返回四捨五入值,但如果數字末尾爲.5,因此它是在兩個整數中間,不管是偶數或是奇數,將返回偶數。
Mathf.RoundToInt四捨五入
int RoundToInt(float f)
換Round很像,只不過返回值爲整數
Mathf.Sign 符號
float Sign(float f)
如果f爲正或者爲0,就返回1,如果爲負就返回-1