Unity 分享常用的數學函數


建立時間: 2024年12月13日 02:29
更新時間: 2024年12月13日 02:52

說明

本文分享 Unity 中常見數學函數的集合,這些函數是由 Mathf 類別提供的靜態方法,可在遊戲開發中廣泛使用。

靜態屬性

屬性名稱 功能描述
Epsilon 一個微小的浮點數值(唯讀)。

Static Methods

方法名稱 功能描述
Abs 返回 f 的絕對值。
Approximately 比較兩個浮點數值,如果相似則傳回 true。
Sign 返回 f 的符號(正負號)。

屬性詳細說明

Mathf.Epsilon

一個微小的浮點數值(唯讀)。

浮點數可以具有的不為零的最小值。

遵循以下規則:

  • anyValue + Epsilon = anyValue
  • anyValue - Epsilon = anyValue
  • 0 + Epsilon = Epsilon
  • 0 - Epsilon = -Epsilon

由於截斷錯誤,任何數字和 Epsilon 之間的值都會產生任意數字。

範例

using UnityEngine;

public class Example : MonoBehaviour
{
    // 比較兩個浮點數,如果相同則傳回 true。
    // 也請參閱 Mathf.Approximately,它比較浮點數,因此您不需要建立一個函數來比較它們。

    bool isEqual(float a, float b)
    {
        if (a >= b - Mathf.Epsilon && a <= b + Mathf.Epsilon)
        {
            return true;
        }
        else
        {
            return false;
        }
    }
}

方法詳細說明

Mathf.Abs

範例

using UnityEngine;

public class ScriptExample : MonoBehaviour
{
    void Start()
    {
        // 輸出 10.5
        Debug.Log(Mathf.Abs(-10.5f));
    }
}

Mathf.Approximately

範例

using UnityEngine;

public class ScriptExample : MonoBehaviour
{
    void Start()
    {
        if (Mathf.Approximately(1.0f, 10.0f / 10.0f))
        {
            print("兩個值大約相同");
        }
    }
}

Mathf.Sign

當 f 大於等於 0 時,回傳 1。當 f 小於 0 時,回傳 -1。

範例

using UnityEngine;

public class Example : MonoBehaviour
{
    void Start()
    {
        // 輸出 -1
        Debug.Log(Mathf.Sign(-10));
        // 輸出 1
        Debug.Log(Mathf.Sign(10));
    }
}

參考

觀看次數: 99
absfunctionmathmathfsignunity數學函數絕對值
按讚追蹤 Enjoy 軟體 Facebook 粉絲專頁
每週分享資訊技術

一杯咖啡的力量,勝過千言萬語的感謝。

支持我一杯咖啡,讓我繼續創作優質內容,與您分享更多知識與樂趣!