1. 程式人生 > >關於unity人形模型子父物件各自加(混合)碰撞器或剛體產生的碰撞檢測結果的不同

關於unity人形模型子父物件各自加(混合)碰撞器或剛體產生的碰撞檢測結果的不同

舉個典型的例子:一個人形角色模型

        1.如果一把刀快速砍過角色,一般碰撞檢測往往檢測不到,這時如果用觸發器檢測會提高很大的觸發概率(因為觸發器不會計算物理資訊,比如反彈之類的)。自然檢測碰撞狀況要高(專業化了)。

       2.

(1). 如果在整個模型加一個剛體,會影響整個身體的運動。那麼單獨在其任意一個部分加一個剛體,只會影響那個部分及其子級。特別注意子級的碰撞會影響到父級,如果給任意一個部分加一個碰撞器(不開觸發選項)會影響整個身體:比如在胸部物件上加一個box碰撞器,由於整體上加有一個剛體,所以整個模型會因重力往下掉(此時如果用離散碰撞檢測,基本會穿過地面),當胸部的碰撞器碰撞到地面會造成整個身體的停止下落。。注意如果再在胸部加一個剛體或運動學剛體,則和地面不會發生碰撞結果。

(2). 單獨移動子物件,父物件沒有反應;移動父物件,子物件會一起運動(在scene操作介面)。所以可以這麼理解:在父物件上加剛體,其會受物理效果作用,則子物件也間接受物理效果作用;所以子物件也有了一個理論上的剛體碰撞器其會和任何碰撞器反應,但是父物件只有剛體沒有碰撞器,所以如果父物件先碰到地面,它會穿過。

      3.完善:如果發現角色行為怪異,可以調節剛體的質量mess,和插值interpolate,用於平滑的移動剛體。與地面的快速移動碰撞(比如從高空由於重力下落),可以參考把碰撞檢測模式改為連續碰撞檢測,或者用發射射線的方法來用指令碼檢測控制等。