考慮到每個人基礎可能不一樣,且并不是所有人都有同時做2D、3D開發的需求,所以我把 【零基礎入門unity游戲開發】 分為成了
C#篇、unity通用篇、unity3D篇、unity2D篇
。
- 【C#篇】:主要講解C#的基礎語法,包括變量、數據類型、運算符、流程控制、面向對象等,適合沒有編程基礎的同學入門。
- 【unity通用篇】:主要講解unity的基礎通用的知識,包括unity界面、unity腳本、unity資源管理、unity動畫、unity攝像機等,適合unity初學者入門。
- 【unity3D篇】:主要講解unity3D的知識,unity3D角色、unity3D物理系統、unity3D光照等,適合只想做2D游戲的開發者學習。
- 【unity2D篇】unity2D篇:主要講解unity2D的知識,包括unity2D角色、unity2D物理系統、unity2D光照等,適合只想做3D游戲的開發者學習。
這樣方便大家按需選擇性的去學習,比如有編程基礎的大概率可以直接從unity通用篇開始入門,沒有編程基礎的建議從C#篇開始學習。只想做2D游戲的話,可以直接從unity2D篇開始學習,3D篇大概率就不需要看了,節約學習時間成本。
文章目錄
- 前言
- 一、2D物理系統碰撞觸發必要條件
- 1、碰撞器組件
- 2、剛體組件要求
- 3、層級碰撞設置
- 4、幾何相交檢測
- 二、Rigidbody2D組件
- 1、Body Type 剛體/身體類型
- 1.1 Dynamic 動態
- (1)Material 材質
- (2)Simulated 模擬的
- (3)Use Auto Mass 使用自動質量
- (4)Mass 質量
- (5)Linear Drag 線性阻尼
- (6)Angular Drag 角阻力
- (7)Gravity Scale 重力大小
- (8)Collision Detection 碰撞檢測
- (9)Sleeping Mode 休眠模式
- (10)Interpolate 插值
- (11)Constraints 約束
- (12)Info 信息
- 1.2 Kinematic 運動
- (1)Simulated 模擬的
- (2)Use Full Kinematic Contacts 使用完全運動學聯系
- 1.3 Static 靜態
- 2、如何選擇不同類型的剛體類型
- 3、代碼控制
- 專欄推薦
- 完結
前言
學習2D剛體組件(Rigidbody2D)之前,建議先去看看我之前寫的【3D剛體組件Rigidbody】,因為它們非常的類似。這里一些講過的知識點就不過多贅述了。
2D物理系統中的剛體組件
- 剛體是物理系統中用于幫助我們進行模擬物理碰撞中力的效果的。
- 2D物理系統中的剛體和3D中的剛體基本是一樣的,最大的區別是對象只會在XY平面中移動,并且只在垂直于該平面的軸上旋轉。
一、2D物理系統碰撞觸發必要條件
1、碰撞器組件
- 雙方物體必須都持有 Collider 2D 組件(如 BoxCollider2D, CircleCollider2D 等)
- 用于定義物體的物理形狀和碰撞邊界
2、剛體組件要求
- 至少一個物體需附加 Rigidbody2D 組件
- 注意:若雙方均為靜態剛體(
Body Type = Static
),不會觸發物理碰撞響應
3、層級碰撞設置
- 雙方物體的Layer需在 Physics 2D Settings(菜單:Edit > Project Settings > Physics 2D)中設置為可交互
- 默認新層未配置時會繼承項目初始設置
4、幾何相交檢測
- 碰撞器之間需存在實際相交或重疊區域
- 可通過
Collider2D.IsTouching()
方法檢測實時接觸狀態