我有一個複合對撞機設置角色(對撞機由許多原始對撞機形狀設置,每個身體部位一個)以及一個使用縮放立方體設置的簡單地面。立方體縮放1000 x,z軸縮放30。事情還處於早期階段,所以沒有昂貴的圖形,場景中只有原始形狀和低聚字符。事情一開始就沒有問題,但一段時間後,我玩了一段時間後,角色開始落地。任何人都遇到過這個問題,並知道如何解決這個問題?玩過某個時間之後,角色會跌落地面
回答
Here是SisterKy可能原因的一個很好的參考列表。
檢查涉及(FallingObjects和GroundObjects)
確實對象有一個對撞機每個對象?如果沒有,
- 選擇對象
- 去頂吧
- 組件
- 物理
- 選擇合適的對撞機(如地形,檢查最後一個標籤,小嵌齒輪)
注意:網格碰撞器可能會導致問題。
- 特別是,如果FallingObject和GroundObject都有網格對撞機。
- 特別是,如果網格是動畫的。
- 爲避免網格碰撞,您可以從幾個原始碰撞體(在父 - 子 - 同胞 - 同胞 - GameObjects中)構建網格的近似形狀。
- 如果你需要一個Mesh碰撞器,無論如何,你可以嘗試放置額外的原始碰撞器,它們不會妨礙'執行'碰撞。
對象是觸發器嗎?如果是這樣,
- 選擇對象
- 發現其對撞機組分(如地形,檢查最後一個標籤,小嵌齒輪)
- 刪除的「IsTrigger」
檢查
對撞機安置好了嗎? 小提琴的中心,大小和皮膚寬度(從0.1開始),直到綠色的輪廓近似適合人物 (如果你得到真正奇怪的值,可能是因爲縮放(例如,你的網格太大,所以你縮小到。01))
您可以嘗試歸零所有定位(包括團結和您的建模程序)
FallingObject和GroundObject具有與每個-其他
- FallingObject對撞機的一個問題和GroundObject-Collider相互交叉。
將物體移動到高於地面的位置(爲了測試目的,將它從相當大的高度落下)。
所有的!不僅僅是對撞機或其他附屬物(例如角色控制器的攝像頭)
注意:即使禁用了戳穿(「灰色膠囊」?)也可能導致問題。 (我不確定這意味着我自己,對不起...發佈此解決方案的答案不是很具體= /)
導入的對象(.obj,.fbx,.max等)
之前的物體拖曳到場景(刪除,如果已經有),
- 查看層次
- 找到模型
- 親perties
- 檢查 '生成對撞機'
- 命中應用
- 現在拖到現場
是法線是否正確?您可能需要
- 回到你的造型,PROGRAMM
- 命中翻轉/反轉法線
是網格乾淨嗎?據報道,一個單一的2頂點「三角形」造成了不好的碰撞問題。
幾何是相當複雜的?然後,你需要被網格撞機集到凸
- 選擇對象,
- 網 - 撞機組分
- 檢查 'IsConvex'
FallingObject有個特點 - 控制器
是否應用了剛體?如果沒有,
- 選擇落物
- 頂欄
- 組件
- 物理
- 剛體
施加重力?如果沒有,
- 選擇下落的物體。
- 查找其剛體組件。
- 檢查 '萬有引力'
而且具有MouseOrbit?
確保MouseOrbit永遠不會將MouseOrbit所連接的相應對象的任何父對象(通常是相機)作爲MouseOrbit對象或拾取結果中的'dog-chases-tail'對象將導致下降。 http://answers.unity3d.com/questions/161386/third-person-controller-falls-through-terrain-upon.html
GroundObject是一個地形
有傳言稱,該地形對撞機可以利用地形工具資產包,使地形被搞砸了。
Collisionmatrix可能會造成麻煩。
- 去編輯/項目設置
- 物理
- collisionmatrix
腳本
- FallingObject與 'transform.Translate' 或腳本「變換。 position ='或其他各種'時髦'腳本。
這可能會推動對象通過對撞機「違背其意願」。儘量避免它。 (例如,使用「速度」或嘗試SimpleMove)
讓您現場清理
尤其是MAC版本似乎在面對太多多餘的廢話有點馬車。可能會以某種方式禁用所有的對撞機。
調試- 每幀增加物理計算。
- 嘗試並捕捉碰撞穿透(這不能解決問題的根源)。
- 從高處放下角色和默認多維數據集。
- 如果兩者都通過,調查地板的屬性。
- 如果只有角色出現,請調查玩家的屬性。
- 有時好舊的重啓或重新導入可能只是做的伎倆...
- 你可能想嘗試的debug.log(colliderFlag);檢查,如果它真的不感動。 http://unity3d.com/support/documentation/ScriptReference/CollisionFlags.Below.html
注
減少或Alt-Tab鍵編輯時落occures。
這是一個已知問題;不要擔心它太多,只有在編輯器中,不會在最終制作的遊戲中發生。
請注意:我對這件事沒有任何權限......只是收集了我發現的內容。所以如果您發現任何(嚴重?!)錯誤,請指出。
我的消息來源:
http://answers.unity3d.com/questions/39789/tornadotwinswormvideo2-help.html
http://answers.unity3d.com/questions/17779/character-model-sinks-through-floor.html
http://answers.unity3d.com/questions/31397/object-falls-through-floor.html
http://answers.unity3d.com/questions/31033/items-falling-through-floor.html
http://answers.unity3d.com/questions/29719/falling-through-the-floor-issue.html
http://answers.unity3d.com/questions/43206/falling-through-floor.html
http://answers.unity3d.com/questions/35010/my-object-falls-through-terrain.html
http://answers.unity3d.com/questions/8369/whenever-i-run-my-game-i-fall-through-any-terrain.html
http://answers.unity3d.com/questions/21021/enemies-fall-through-floor-when-chasing-player.html
http://answers.unity3d.com/questions/17221/char-is-falling-through-the-terrain-when-alt-tabbi.html
http://answers.unity3d.com/questions/63750/my-characters-and-rigidbodys-fall-on-my-new-terrai.html
http://answers.unity3d.com/questions/57077/character-collider-physics-bug-in-unity-33-falling.html
http://forum.unity3d.com/threads/38996-first-person-controller-falls-through-the-terrain
- 1. 聚焦後跌落組合
- 2. fogbugz選擇跌落
- 3. 某人從其他角色返回發展角色的時間過長?
- 4. 統一降落平臺在落地的同時穿過地面
- 5. C++:提升本地時間落後
- 6. NSProgressIndicator - 白色角落
- 7. UIModalPresentationFormSheet白色角落
- 8. 如何將一個SKPhysicBody固定在另一個上而不會同時跌落
- 9. 圓角圖像只有某些角落與calayer的角落Radius
- 10. 旋轉時黑色邊框角落iPhone
- 11. 如何獲得2個其他角色之間的角色?
- 12. Unity3D - 如何檢測一個角色是否已經跳躍後落地
- 13. 日期時間列落在兩個時間範圍之間
- 14. Box2dWeb Revolute通過地面落地
- 15. 玩角色扮演框架
- 16. 「在時間上落後」 XKCD
- 17. Laravel時間戳落後於
- 18. 檢測玩家與地面之間的碰撞Unity3D
- 19. 製作一個Movieclip令人信服地轉過一個角落
- 20. Android的圓角矩形彩色角落
- 21. Laravel + AngularJS將角色傳遞到角落
- 22. 簡單的落沙玩具滯後
- 23. 什麼是在玩遊戲的過程中計算玩家之間玩家的時間的最佳方式
- 24. jquery動畫從一個角落裏面
- 25. 圖像中一個又一個頁面之後衰落加載
- 26. 方向api:檢查某個地點是否落入兩個地點之間的路徑路徑
- 27. 我的球員在地面下跌
- 28. 當時間落在時間範圍之間時,返回True?
- 29. 爲什麼我的角色會在地板上徘徊或墜落?
- 30. 時間戳落後2小時
發生這種情況的最常見情況是,當您處於嚴重建模/連接地形上的裂縫之間(由於浮點舍入錯誤)。如果你的「floor」實際上是一個單一的固體物體,那麼接下來我要檢查的是物理循環的運行頻率足夠高,以至於在下一個tick之前玩家不能掉入物體太遠。如果不符合以上所有條件,我會讓你的對撞機稍微大一些。 – Basic
我的固定時間步是0.02,最大允許時間步是0.3333333,它仍然是默認值。可以嗎?我也意識到,這似乎只發生在播放時間較長的動畫時,該動畫的播放時間設置爲3. – congtrungvnit
正如您所建議的,我已將固定時間步長調整爲0.002,這是10倍更快。事情似乎更好。但是,CPU可以嗎?據我所知,減小這個值會影響CPU的性能。你建議的價值是什麼?順便說一句,你嘗試這個解決方案嗎? (http://answers.unity3d.com/answers/1244965/view.html)。我已經嘗試過,但不起作用。 – congtrungvnit