1. 程式人生 > >小白_Unity引擎_Mathf

小白_Unity引擎_Mathf

大小 結果 unit color debug.log 正數 如果 orm floor

Ceil

1         //向上取值,向大取值
2         Debug.Log(Mathf.Ceil(0.1f)); //1
3         Debug.Log(Mathf.Ceil(0.9f));//1
4         Debug.Log(Mathf.Ceil(-0.1f));//0
5         Debug.Log(Mathf.Ceil(-0.9f));//0

Floor

1         //向下取值,向小取值
2         Debug.Log(Mathf.Floor(0.1f)); //0
3         Debug.Log(Mathf.Floor(0.9f));//0
4         Debug.Log(Mathf.Floor(-0.1f
));//-1 5 Debug.Log(Mathf.Floor(-0.9f));//-1

Round 四舍五入

 1         //四舍五入
 2         Debug.Log(Mathf.Round(0.1f)); //0
 3         Debug.Log(Mathf.Round(0.9f));//1
 4         Debug.Log(Mathf.Round(-0.1f));//0
 5         Debug.Log(Mathf.Round(-0.9f));//-1
 6 
 7         //如果 遇到 0.5 時候會不一樣, 結果看前一位
 8         /// 正數  偶數 --》  -0.5
9 /// 負數 偶數 ---》 +0.5 10 /// 正數 奇數 --》 +0.5 11 /// 負數 奇數 --》 -0.5 12 Debug.Log(Mathf.Round(0.5f)); //1 13 Debug.Log(Mathf.Round(1.5f));//2 14 Debug.Log(Mathf.Round(-0.5f));//0 15 Debug.Log(Mathf.Round(-1.5f));//-2

Camp限制

 1         //Camp(value, min ,max)
 2         //
限制:限制value的值在min 和 max之間,如果value小於min,返回min。 3 //如果value大於max,返回max,返回max,否則返回value 4 Debug.Log(Mathf.Clamp(12, 10, 20));//12 5 Debug.Log(Mathf.Clamp(5, 10, 20));//10 6 Debug.Log(Mathf.Clamp(25, 10, 20));//20 7 //限制 0-1 之間,如果小於0返回0 ,如果大於1返回1,否則返回value 8 Debug.Log(Mathf.Clamp01(0.1f));//0.1 9 Debug.Log(Mathf.Clamp01(-0.1f));//0 10 Debug.Log(Mathf.Clamp01(2f));//1

插值

 1         //插值
 2         //第三個參數t :表示一個百分數,0-1,如果 t= 0.5f,那麽返回值就從50%開始
 3         //1.第三個參數如果是固定值,則返回值是固定值根據參數大小而改變
 4         //2.第三個參數必須是0-1之間如果 <= 0 ,返回第一參數值,如果參數 >= 1 返回第2個參數
 5         // Mathf.Lerp(a, b, c)
 6         //原理 返回值 =  (b - a)*c + a ;
 7         Debug.Log(Mathf.Lerp(1, 100, Time.time));
 8         Debug.Log(Mathf.Lerp(1, 100, 0.5f));
 9         //物體勻速運動
10         obj.transform.position = new Vector3(Mathf.Lerp(0, 15, Time.time), 0, 0);
11 
12         //Mathf.LerpAngle(10, 100, Time.time);
13         obj.transform.eulerAngles = new Vector3(0, Mathf.LerpAngle(10, 100, Time.time), 0);

反插值

小白_Unity引擎_Mathf