文章

添加 剛體(Rigidbody) 與 碰撞體(Collider)

在Unity中,RigidbodyCollider 是兩個關鍵組件,它們讓遊戲物體能夠在物理引擎中互動。Rigidbody 賦予物體物理屬性,如質量、重力影響等,而 Collider 則定義物體的形狀,用來檢測碰撞。以下是如何添加這些組件的步驟和使用方法。

1. 添加剛體(Rigidbody)

Rigidbody 使遊戲物體能夠受到物理引擎的控制,比如受重力影響或能夠與其他物體碰撞並產生反應。

步驟

  1. 選擇遊戲物體
    • Hierarchy 視圖中,選擇你要給予物理屬性的遊戲物體(例如,一個立方體或球體)。
  2. 添加剛體組件
    • Inspector 視圖中,點擊 Add Component 按鈕。
    • 在搜索欄中輸入 “Rigidbody” 並選擇 Rigidbody 組件來添加。
  3. 配置剛體屬性
    • Mass(質量):設定物體的質量,影響物體受力時的加速度。
    • Drag(阻力):控制物體在空氣中的運動阻力,值越高,物體減速越快。
    • Angular Drag(角阻力):控制物體旋轉時的阻力。
    • Use Gravity(使用重力):勾選此選項,物體會受到重力影響並下落。
    • Is Kinematic(是否為運動學模式):勾選此選項,物體將不受物理引擎的動態影響,只能由腳本控制其運動。

範例

如果你希望一個立方體在遊戲開始時掉落並碰到地面,你可以給它添加一個 Rigidbody 組件,並確保 Use Gravity 選項被選中。

2. 添加碰撞體(Collider)

Collider 是物體的物理邊界,它用來檢測物體之間的碰撞。Unity 提供了多種形狀的碰撞器,如 Box、Sphere、Capsule 和 Mesh。

步驟

  1. 選擇遊戲物體
    • Hierarchy 視圖中,選擇需要檢測碰撞的遊戲物體。
  2. 添加碰撞體組件
    • Inspector 視圖中,點擊 Add Component 按鈕。
    • 在搜索欄中輸入 “Collider” 然後選擇適合的碰撞器類型,如 Box ColliderSphere ColliderCapsule ColliderMesh Collider
  3. 配置碰撞體屬性
    • Is Trigger(觸發器):如果勾選這個選項,Collider不會發生物理碰撞,但可以用來觸發事件。
    • Center(中心)Size(尺寸):用來調整碰撞器的位置和大小,以適應遊戲物體的形狀。

常見的碰撞體

  • Box Collider:適用於立方體或矩形物體。
  • Sphere Collider:適用於球形物體。
  • Capsule Collider:適用於圓柱形或膠囊形物體,如角色的身體。
  • Mesh Collider:適用於複雜形狀的物體,這種碰撞器會根據物體的網格形狀來生成碰撞邊界。

範例

給一個球體添加 Sphere Collider,使其能夠與其他物體發生碰撞。如果你希望這個球體僅用來觸發事件,而不發生實際碰撞,可以勾選 Is Trigger

3. 組合使用Rigidbody和Collider

通常,你會將 RigidbodyCollider 組合在一起使用,讓物體不僅能夠與其他物體發生碰撞,還能受到物理影響。

範例

假設你有一個簡單的遊戲場景,其中有一個立方體和一個平面地板:

  1. 創建場景
    • Hierarchy 中創建一個立方體(3D Object > Cube)和一個平面(3D Object > Plane)。
  2. 配置地板
    • 確保地板只有 Box Collider 而沒有 Rigidbody,這樣地板將不會移動,但可以檢測其他物體的碰撞。
  3. 配置立方體
    • 選擇立方體,添加 Rigidbody 組件,並確保添加了 Box Collider 組件。
    • 這樣,當遊戲開始時,立方體將在重力作用下掉落,並與地板發生碰撞,然後停在地板上。

小結

通過添加 RigidbodyCollider,你可以讓遊戲物體在物理引擎的控制下進行自然的運動和互動。Rigidbody 賦予物體物理屬性,如重力和質量,而 Collider 則定義物體的物理邊界,用於檢測碰撞。掌握這些組件的使用,將幫助你創建更加真實的遊戲體驗。

本文章以 CC BY 4.0 授權