??Collider 2D組件定義了2D GameObject的形狀以便來實(shí)現(xiàn)碰撞的目的奥洼。對撞機(jī)是看不見的摇予,不必與 GameObject的網(wǎng)格完全相同的形狀 ; 實(shí)際上,粗略的近似通常更有效西潘,并且在游戲玩法中難以區(qū)分卷玉。
可與Rigidbody一起使用的Collider 2D類型 2D:
- Circle Collider 2D用于圓形碰撞區(qū)域。
- Box Collider 2D用于方形和矩形碰撞區(qū)域喷市。
- Polygon Collider 2D用于自由形式的碰撞區(qū)域相种。
- Edge Collider 2D用于自由形式的碰撞區(qū)域和未完全封閉的區(qū)域(例如圓角凸角)。
- Capsule Collider 2D用于圓形或菱形碰撞區(qū)域品姓。
- 用于合并Box Collider 2Ds和Polygon Collider 2Ds 的Composite Collider 2D寝并。
Circle Collider 2D
圓形碰撞器,在一個(gè)精靈的局部坐標(biāo)空間中有一個(gè)確定的位置和半徑腹备。
- Material:一種決定碰撞特性的物理材料衬潦,例如摩擦和彈跳。
- Is Trigger:是否表現(xiàn)為一個(gè)觸發(fā)器植酥。
- Used by Effector:勾選后别渔,附加的效應(yīng)器2D將使用圓形碰撞器2D。
- Offset:圓形碰撞器2D幾何體的局部偏移惧互。
- Radius:局部空間單位中圓的半徑。
Box Collider 2D
矩形碰撞器喇伯,在Sprite的局部坐標(biāo)空間中定義了位置喊儡,寬度和高度。請注意稻据,矩形是軸對齊的 - 也就是說艾猜,它的邊與本地空間的X或Y軸平行买喧。
- Used by Composite:如果您希望連接的Composite Collider 2D使用此Collider,請勾選此復(fù)選框匆赃。
說明:當(dāng)您啟用Composite by Composite時(shí)淤毛,其他屬性將從Box Collider 2D組件中消失,因?yàn)樗鼈儸F(xiàn)在由附加的Composite Collider 2D控制算柳。從Box Collider 2D中消失的屬性是Material低淡,Is Trigger,Effect by Effector和Edge Radius瞬项。
- Auto Tiling 如果Sprite Renderer勾選此復(fù)選框組件中所選的Sprite將繪圖模式設(shè)置為Tiled蔗蹋。這樣可以自動(dòng)更新Collider 2D的形狀,這意味著當(dāng)Sprite的尺寸發(fā)生變化時(shí)囱淋,會(huì)自動(dòng)重新調(diào)整形狀猪杭。如果未啟用“ 自動(dòng)平鋪”,則Collider 2D幾何體不會(huì)自動(dòng)重復(fù)妥衣。
- Size:在局部空間設(shè)置Box的大小
- Edge Radius:控制邊緣周圍的半徑皂吮,使頂點(diǎn)為圓形。這導(dǎo)致更大的Collider 2D具有圓角凸角税手。此設(shè)置的默認(rèn)值為0(無半徑)蜂筹。
說明:其他屬性同Circle Collider 2D
Polygon Collider 2D
多邊形碰撞器的形狀通過由線段的自由邊緣限定,這樣就可以調(diào)節(jié)它以適合的形狀的Sprite圖形冈止。
- Points:有關(guān)生成的Collider復(fù)雜性的不可編輯信息狂票。(實(shí)際上就是相關(guān)點(diǎn)的個(gè)數(shù)以及坐標(biāo)信息)
說明:其他屬性同Circle Collider 2D
Edge Collider 2D
邊緣碰撞器的形狀通過由線段的自由邊緣限定,這樣就可以調(diào)節(jié)它以適合的形狀的Sprite圖形熙暴,非常精確闺属。請注意,此碰撞器的邊緣不需要完全包圍區(qū)域(與Polygon Collider 2D不同)周霉,例如可以是直線或L形掂器。
相關(guān)操作:Shift鍵+鼠標(biāo)左鍵 創(chuàng)建point或移動(dòng)point
Ctrl(Windows)或Cmd(macOS)鍵+鼠標(biāo)左鍵 刪除point
Capsule Collider 2D
膠囊碰撞器形狀沒有頂角; 它有一個(gè)連續(xù)的圓周,不容易被其他對撞機(jī)角落抓住俱箱。膠囊形狀是實(shí)心的国瓮,因此完全位于膠囊內(nèi)部的任何其他Collider 2D被認(rèn)為與膠囊接觸并且隨著時(shí)間的推移被迫離開膠囊。
- Size:使用它來定義框大小狞谱。此框定義膠囊碰撞器2D填充的區(qū)域乃摹。
- Direction:將其設(shè)置為垂直或水平。這控制了膠囊組的哪個(gè)方向:具體地說跟衅,它定義了半圓形端蓋的定位孵睬。
說明:定義Capsule Collider 2D的設(shè)置是Size和Direction×骢危“大小”和“方向”屬性均指膠囊碰撞器2D的局部空間中的X和Y(分別為水平和垂直)掰读,而不是世界空間秘狞。
設(shè)置Capsule Collider 2D的典型方法是將Size設(shè)置為與Direction相匹配。例如蹈集,如果膠囊撞機(jī)2D的垂直方向是水平方向的2倍大兴甘浴;X是0.5和Y是1拢肆,這使得垂直方向膠囊更高减响,而不是寬。當(dāng)Size屬性的X和Y相同時(shí)善榛,Capsule Collider 2D始終近似為圓辩蛋。
注意:物理引擎(包括Box 2D)中的一個(gè)已知問題是移動(dòng)多個(gè)碰撞器(甚至是數(shù)學(xué)上完美對齊的碰撞器)會(huì)導(dǎo)致一個(gè)或兩個(gè)碰撞器記錄其他碰撞器。這可能導(dǎo)致對撞機(jī)減速或停止移盆。雖然Capsule Collider 2D可以幫助減少這個(gè)問題悼院,但它不是解決方案。更好的解決方案是在表面上使用單個(gè)對撞機(jī); 例如咒循,Edge Collider 2D据途。
Composite Collider 2D
復(fù)合材質(zhì)碰撞器與大多數(shù)碰撞器不同,它沒有定義固有的形狀叙甸。相反颖医,它合并了任何Box Collider 2D的形狀或者您設(shè)置使用的Polygon Collider 2D。Composite Collider 2D使用來自這些碰撞器的頂點(diǎn)(幾何)裆蒸,并將它們合并為由Composite Collider 2D本身控制的新幾何體熔萧。
說明:Box Collider 2D和Polygon Collider 2D組件具有“Used by Composite”復(fù)選框。勾選此復(fù)選框可將它們附加到Composite Collider 2D僚祷。這些碰撞器也必須連接到與Composite Collider 2D 相同的Rigidbody 2D佛致。當(dāng)您啟用Composite by Composite時(shí),其他屬性將從該組件中消失辙谜,因?yàn)樗鼈儸F(xiàn)在由附加的Composite Collider 2D控制俺榆。
- Density:改變密度來改變游戲?qū)ο蟮南嚓P(guān)剛體2D的質(zhì)量計(jì)算。如果將該值設(shè)置為0装哆,則其關(guān)聯(lián)剛體2D在所有質(zhì)量計(jì)算(包括質(zhì)量中心計(jì)算)中都將忽略Collider 2D罐脊。請注意,只有在啟用關(guān)聯(lián)剛體2D組件中的Use Auto Mass時(shí)蜕琴,該選項(xiàng)才可用萍桌。
- Geometry Type:幾何類型;合并碰撞器時(shí)凌简,所選碰撞器中的頂點(diǎn)被組合成兩種不同的幾何類型之一上炎。使用此下拉菜單可將幾何類型設(shè)置為大綱或多邊形。
Outlines:生成具有空心輪廓的對撞機(jī)2D号醉,與Edge對撞機(jī)2D的結(jié)果相同反症。
Polygons:生成一個(gè)具有實(shí)體多邊形的碰撞器2D,與2D產(chǎn)生的多邊形碰撞器相同畔派。
- Generation Type:用于控制Composite Collider 2D或其組成的任何碰撞器發(fā)生更改時(shí)生成幾何圖形的方法铅碍。
Synchronous:當(dāng)對復(fù)合碰撞器2D或它使用的任何碰撞器進(jìn)行更改時(shí),Unity立即生成新的幾何圖形线椰。
Manual:新的幾何生成只有在您請求它時(shí)才會(huì)發(fā)生胞谈。要請求生成,可以調(diào)用Composite Collider 2D憨愉》成或單擊選擇項(xiàng)下出現(xiàn)的“重新生成幾何(Regenerate Geometry)”按鈕。
- Vertex Distance:設(shè)置一個(gè)值配紫,該值用于組合碰撞器收集的任何頂點(diǎn)的最小間距径密。任何比這個(gè)極限更近的頂點(diǎn)都被移除。這允許控制頂點(diǎn)合成的有效分辨率躺孝。
- Edge Radius:控制邊緣周圍的半徑享扔,使頂點(diǎn)為圓形。這導(dǎo)致一個(gè)更大的碰撞二維與圓角凸角植袍。這個(gè)設(shè)置的默認(rèn)值是0(沒有半徑)惧眠。這只在幾何類型設(shè)置為outline時(shí)有效。
總結(jié):
記錄了幾種常用的碰撞體于个,常常使用的還是前面兩種Circle Collider 2D氛魁,Box Collider 2D;實(shí)際上最好用的是Edge Collider 2D厅篓,原因無他秀存,比較節(jié)約性能而已,當(dāng)只需要?jiǎng)?chuàng)建某一面的碰撞體時(shí)絕對要選Edge Collider 2D贷笛。至于Composite Collider 2D暫時(shí)用的不是很多应又,也就不是很熟悉,后期有用到再來補(bǔ)坑7唷V昕浮!