小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

Unity網(wǎng)格碰撞體(MeshCollider)

 雪柳花明 2016-04-19

網(wǎng)格碰撞體 (Mesh Collider)        

網(wǎng)格碰撞體 (Mesh Collider) 采用網(wǎng)格資源 (Mesh Asset) 并基于該網(wǎng)格構(gòu)建其碰撞體 (Collider)。對(duì)于碰撞檢測(cè),這比將基元用于復(fù)雜網(wǎng)格要精確得多。標(biāo)記為 凸體 (Convex) 的網(wǎng)格碰撞體 (Mesh Collider)可以與其他網(wǎng)格碰撞體 (Mesh Collider) 碰撞。


在水平幾何結(jié)構(gòu)上使用的網(wǎng)格碰撞體 (Mesh Collider)

屬性

屬性:功能:
為觸發(fā)器 (Is Trigger)如果啟用,此碰撞體 (Collider) 則用于觸發(fā)事件,會(huì)由物理引擎忽略。
材質(zhì) (Material)引用可確定此碰撞體 (Collider) 與其他碰撞體 (Collider) 的交互方式的物理材質(zhì) (Physics Material)。
網(wǎng)格 (Mesh)對(duì)用于碰撞的網(wǎng)格的引用。
平滑球體碰撞 (Smooth Sphere Collisions)啟用此項(xiàng)時(shí),會(huì)使碰撞網(wǎng)格法線平滑。應(yīng)對(duì)平滑表面(例如沒(méi)有硬邊緣的丘陵地形)啟用此項(xiàng)以使球體滾動(dòng)更平滑。
凸體 (Convex)如果啟用,則此網(wǎng)格碰撞體 (Mesh Collider) 會(huì)與其他網(wǎng)格碰撞體 (Mesh Collider) 碰撞。凸體網(wǎng)格碰撞體 (Convex Mesh Collider) 限制為 255 個(gè)三角形。

詳細(xì)信息

網(wǎng)格碰撞體 (Mesh Collider) 通過(guò)附加到游戲?qū)ο?(GameObject) 的網(wǎng)格 (Mesh) 構(gòu)建其碰撞表示形式,并讀取附加的變換的屬性以設(shè)置其位置并正確縮放。

碰撞網(wǎng)格使用背面剔除。如果對(duì)象與將以圖形方式背面剔除的網(wǎng)格碰撞,則也不會(huì)以物理方式與它碰撞。

使用網(wǎng)格碰撞體 (Mesh Collider) 時(shí)有一些限制。通常,兩個(gè)網(wǎng)格碰撞體 (Mesh Collider) 不能相互碰撞。所有網(wǎng)格碰撞體 (Mesh Collider) 都可以與任何基元碰撞體 (Collider) 碰撞。如果某個(gè)網(wǎng)格標(biāo)記為 凸體 (Convex),則它可以與其他網(wǎng)格碰撞體 (Mesh Collider) 碰撞。

碰撞體 (Collider) 與剛體 (Rigidbody) 結(jié)合使用可使 Unity 中的物理變得生動(dòng)。剛體 (Rigidbody) 使對(duì)象可以受物理控制,而碰撞體 (Collider) 使對(duì)象可以相互碰撞。碰撞體 (Collider) 必須獨(dú)立于剛體 (Rigidbody) 添加到對(duì)象。碰撞體 (Collider) 并不一定需要附加剛體 (Rigidbody),但是必須剛體 (Rigidbody) 才能使對(duì)象由于碰撞而移動(dòng)。

當(dāng)兩個(gè)碰撞體 (Collider) 之間發(fā)生碰撞時(shí)并且如果其中至少一個(gè)附加了剛體 (Rigidbody),會(huì)將三條碰撞消息向外發(fā)送給附加到它們的對(duì)象。這些事件可以在腳本中進(jìn)行處理,使您可以在使用或不使用內(nèi)置 NVIDIA PhysX 引擎的情況下創(chuàng)建獨(dú)特行為。

觸發(fā)器 (Trigger)

使用碰撞體 (Collider) 的備選方法是將其作為觸發(fā)器 (Trigger),只需在檢視視圖 (Inspector) 中選中“為觸發(fā)器”(IsTrigger) 屬性復(fù)選框即可。觸發(fā)器 (Trigger) 實(shí)際上會(huì)被物理引擎忽略,并具有一組獨(dú)有的三條觸發(fā)器 (Trigger) 消息,這些消息會(huì)在與觸發(fā)器 (Trigger) 發(fā)生碰撞時(shí)向外發(fā)送。觸發(fā)器 (Trigger) 可用于觸發(fā)游戲中的其他事件,如劇情畫面、自動(dòng)門打開(kāi)、顯示輔導(dǎo)消息等。請(qǐng)充分發(fā)揮您的想象力!

請(qǐng)注意,要使兩個(gè)觸發(fā)器 (Trigger) 在碰撞時(shí)向外發(fā)送觸發(fā)器 (Trigger) 事件,其中之一必須還包括剛體 (Rigidbody)。要使觸發(fā)器 (Trigger) 與普通碰撞體 (Collider) 碰撞,則其中之一必須附加剛體 (Rigidbody)。有關(guān)不同類型碰撞的詳細(xì)圖表,請(qǐng)參閱下面“高級(jí)”部分中的碰撞動(dòng)作矩陣。

摩擦力和彈力

摩擦力、彈力和柔軟度在物理材質(zhì) (Physisc Material) 中定義。標(biāo)準(zhǔn)資源 (Standard Asset) 包含最常見(jiàn)的物理材質(zhì) (Physisc Material)。要使用其中之一,請(qǐng)單擊“物理材質(zhì)”(Physisc Material) 下拉菜單并選擇一個(gè),例如“冰”(Ice)。還可以創(chuàng)建自己的物理材質(zhì) (Physisc Material) 并調(diào)整所有摩擦力值。

提示

  • 網(wǎng)格碰撞體 (Mesh Collider)  不能相互碰撞,除非它們標(biāo)記為凸體 (Convex)。因此,它們對(duì)背景對(duì)象(如環(huán)境幾何結(jié)構(gòu))最有用。

  • 凸體 (Convex) 網(wǎng)格碰撞體 (Mesh Collider) 必須少于 255 個(gè)三角形。

  • 基元碰撞體 (Collider) 對(duì)于處于物理控制下的對(duì)象成本較低。

  • 將網(wǎng)格碰撞體 (Mesh Collider) 附加到游戲?qū)ο?(GameObject) 時(shí),其“網(wǎng)格”(Mesh) 屬性會(huì)默認(rèn)為所渲染的網(wǎng)格。可以通過(guò)分配不同網(wǎng)格進(jìn)行更改。

  • 要為對(duì)象添加多個(gè)碰撞體(Collider),請(qǐng)創(chuàng)建子游戲?qū)ο?(GameObject) 并向每個(gè)子游戲?qū)ο?(GameObject) 附加碰撞體(Collider)。這樣便可以獨(dú)立處理每個(gè)碰撞體(Collider)。

  • 可以在場(chǎng)景視圖 (Scene View) 中查看小圖示以了解在對(duì)象上計(jì)算碰撞體(Collider) 的方式。

  • 碰撞體(Collider) 會(huì)盡量匹配對(duì)象的縮放。如果您具有不均勻縮放(在各個(gè)方向上不同的縮放),則只有網(wǎng)格碰撞體(Mesh Collider) 才能完全匹配。

  • 如果通過(guò)其變換組件 (Component) 移動(dòng)某個(gè)對(duì)象,但是希望接收碰撞體(Collider)/觸發(fā)器 (Trigger) 消息,則必須將剛體 (Rigidbody) 附加到移動(dòng)的對(duì)象。

高級(jí)

碰撞體 (Collider) 組合

在 Unity 中可以進(jìn)行許多不同的碰撞體 (Collider) 組合。每個(gè)游戲都是獨(dú)一無(wú)二的,不同組合可能更適合于不同類型的游戲。如果在游戲中使用物理,則了解不同基本碰撞體 (Collider) 類型、其常見(jiàn)用途以及與其他類型對(duì)象的交互方式會(huì)十分有幫助。

靜態(tài)碰撞體 (Static Collider)

這些是未附加剛體 (Rigidbody)、但的確附加了碰撞體 (Collider) 的游戲?qū)ο?(GameObject)。這些對(duì)象應(yīng)保持靜態(tài),或很少移動(dòng)。這些十分適用于環(huán)境幾何結(jié)構(gòu)。它們?cè)趧傮w (Rigidbody) 與之碰撞時(shí)不會(huì)移動(dòng)。

剛體碰撞體 (Rigidbody Collider)

這些游戲?qū)ο?(GameObject) 同時(shí)包含剛體 (Rigidbody) 和碰撞體 (Collider)。它們通過(guò)腳本編寫的力和碰撞,完全受物理引擎影響。它們可以與僅包含碰撞體 (Collider) 的游戲?qū)ο?(GameObject) 碰撞。這些很可能是使用物理的游戲中的主要碰撞體 (Collider) 類型。

運(yùn)動(dòng)學(xué)剛體碰撞體 (Kinematic Rigidbody Collider)

此游戲?qū)ο?(GameObject) 包含碰撞體 (Collider) 和標(biāo)記有“為運(yùn)動(dòng)學(xué)”(IsKinematic) 的剛體 (Rigidbody)。要移動(dòng)此游戲?qū)ο?(GameObject),請(qǐng)修改其 變換組件 (Component),而不是應(yīng)用力。它們類似于靜態(tài)碰撞體 (Static Collider),但是更適合于要經(jīng)常四處移動(dòng)碰撞體 (Collider) 的情況。有一些使用此游戲?qū)ο?(GameObject) 的其他專業(yè)方案。

此對(duì)象可以用于通常希望靜態(tài)碰撞體 (Static Collider) 發(fā)送觸發(fā)器 (Trigger) 事件的情況。因?yàn)橛|發(fā)器 (Trigger) 必須附加剛體 (Rigidbody),所以應(yīng)添加剛體 (Rigidbody),然后啟用“為運(yùn)動(dòng)學(xué)”(IsKinematic)。這可防止對(duì)象脫離物理影響,并使您可以在需要時(shí)接收觸發(fā)器 (Trigger) 事件。

運(yùn)動(dòng)學(xué)剛體 (Kinematic Rigidbody) 可以方便地打開(kāi)和關(guān)閉。這適合于在以下情況中創(chuàng)建布娃娃:通常希望角色跟隨在動(dòng)畫之后,然后在發(fā)生碰撞時(shí)(通過(guò)爆炸或所選的任何其他事物進(jìn)行提示)變?yōu)椴纪尥?。發(fā)生這種情況時(shí),只需通過(guò)腳本將所有運(yùn)動(dòng)學(xué)剛體 (Kinematic Rigidbody) 轉(zhuǎn)變?yōu)槠胀▌傮w (Rigidbody)。

如果讓剛體 (Rigidbody) 靜止下來(lái)以便在一段時(shí)間內(nèi)不移動(dòng),它們會(huì)“入睡”。即,它們?cè)谖锢砀逻^(guò)程中不會(huì)進(jìn)行計(jì)算,因?yàn)樗鼈儾粫?huì)前往任何位置。如果將運(yùn)動(dòng)學(xué)剛體 (Kinematic Rigidbody) 從休眠的普通剛體 (Rigidbody) 下邊移走,則休眠的剛體 (Rigidbody) 將被喚醒并在物理更新中重新準(zhǔn)確計(jì)算。因此如果您具有許多要四處移動(dòng)的靜態(tài)碰撞體 (Static Collider) 并且讓不同對(duì)象正確落到其上,請(qǐng)使用運(yùn)動(dòng)學(xué)剛體碰撞體 (Kinematic Rigidbody Collider)。

碰撞動(dòng)作矩陣

根據(jù)兩個(gè)碰撞對(duì)象的配置,可能發(fā)生一些不同動(dòng)作。下圖概述了可以基于附加到其的組件 (Component) 對(duì)兩個(gè)碰撞對(duì)象進(jìn)行的預(yù)計(jì)。一些組合僅導(dǎo)致兩個(gè)對(duì)象之一受碰撞影響,因此請(qǐng)記住標(biāo)準(zhǔn)規(guī)則 - 物理不會(huì)應(yīng)用于未附加剛體 (Rigidbody) 的對(duì)象。

進(jìn)行碰撞檢測(cè)并在碰撞時(shí)發(fā)送消息

靜態(tài)碰撞體 (Static Collider)剛體碰撞體 (Rigidbody Collider)運(yùn)動(dòng)學(xué)剛體碰撞體 (Kinematic Rigidbody Collider)靜態(tài)觸發(fā)碰撞體 (Static Trigger Collider)剛體觸發(fā)碰撞體 (Rigidbody Trigger Collider)運(yùn)動(dòng)學(xué)剛體觸發(fā)碰撞體 (Kinematic Rigidbody Trigger Collider)
靜態(tài)碰撞體 (Static Collider)
Y



剛體碰撞體 (Rigidbody Collider)YYY


運(yùn)動(dòng)學(xué)剛體碰撞體 (Kinematic Rigidbody Collider)
Y



靜態(tài)觸發(fā)碰撞體 (Static Trigger Collider)





剛體觸發(fā)碰撞體 (Rigidbody Trigger Collider)





運(yùn)動(dòng)學(xué)剛體觸發(fā)碰撞體 (Kinematic Rigidbody Trigger Collider)





碰撞時(shí)發(fā)送觸發(fā)器 (Trigger) 消息

靜態(tài)碰撞體 (Static Collider)剛體碰撞體 (Rigidbody Collider)運(yùn)動(dòng)學(xué)剛體碰撞體 (Kinematic Rigidbody Collider)靜態(tài)觸發(fā)碰撞體 (Static Trigger Collider)剛體觸發(fā)碰撞體 (Rigidbody Trigger Collider)運(yùn)動(dòng)學(xué)剛體觸發(fā)碰撞體 (Kinematic Rigidbody Trigger Collider)
靜態(tài)碰撞體 (Static Collider)



YY
剛體碰撞體 (Rigidbody Collider)


YYY
運(yùn)動(dòng)學(xué)剛體碰撞體 (Kinematic Rigidbody Collider)


YYY
靜態(tài)觸發(fā)碰撞體 (Static Trigger Collider)
YY
YY
剛體觸發(fā)碰撞體 (Rigidbody Trigger Collider)YYYYYY
運(yùn)動(dòng)學(xué)剛體觸發(fā)碰撞體 (Kinematic Rigidbody Trigger Collider)YYYYYY

基于層的碰撞檢測(cè)

在 Unity 3.x 中,我們引入了某個(gè)稱為基于層的碰撞檢測(cè) (Layer-Based Collision Detection) 的功能,現(xiàn)在可以有選擇性地告知 Unity 游戲?qū)ο?(GameObject) 與它們附加到的特定層碰撞。有關(guān)更多信息,請(qǐng)單擊此處

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多