Rigidbody 2D組件 (剛體)?
一:重力
1、玩家添加Rigidbody 2D組件:
2挣磨、禁用重力? Gravity Scale 設(shè)置為 0
(有預(yù)設(shè)體的話,需要操作在inspector > Voerides > Apply All)
二:碰撞體? Box Collider 2D 組件
1、玩家添加 Box Collider 2D組件刽锤,勾選 Constrains 下 Freeze Rotation (這樣剛體不會導(dǎo)致玩家旋轉(zhuǎn))
玩家抖動解決:(剛體為主體移動沿彭,而非玩家)
2朽砰、給建筑物添加 Box Collider 2D 組件 (不需要通過物理來移動建筑物,則不需要添加剛體 Rigidbody 2D)
3喉刘、調(diào)整碰撞體大小 Box collider 2D > Edit Collider > Scene 試圖調(diào)整碰撞體大小
人物調(diào)整注意:碰撞體僅覆蓋了 Ruby 的雙腿瞧柔,因為角色在碰撞之前需要能夠稍微移到游戲?qū)ο蟮纳戏剑@有助于使游戲更真實可信
三:瓦片地圖碰撞體
1睦裳、Hierarchy 選擇 TileMap > 添加組件 Tilemap Collider2D(此時所有的瓦片都有碰撞體)
2造锅、去掉不需要碰撞的瓦片??
Project > Tiles>選擇不需要碰撞的瓦片>找到Collider Type 屬性 Sprite 改為 None 保存
3、優(yōu)化瓦片地圖
添加Composite Collider 2D 組件
Tilemap Collider 2D 組件 啟用 Used By Composite
Rigidbody 2D 將 Rigidbody Body Type 設(shè)置 Staitc
四:觸發(fā)器
觸發(fā)器是一種特殊類型的碰撞體廉邑。觸發(fā)器不會阻止移動哥蔚,但是物理系統(tǒng)仍會檢查角色是否會與觸發(fā)器碰撞。當(dāng)你的角色進(jìn)入觸發(fā)器時蛛蒙,你將收到一條消息糙箍,以便你可以處理該事件。??
觸發(fā)物體添加 Box Collider 2D? > Is Trigger 選中
void OnTriggerEnter2D(Collider2D other);
剛體不休眠