2012-03-07 39 views
2

我做了很多關於這個話題的研究,但並沒有真正找到我正在尋找的確切答案,也許沒有一個完美的解決方案......我想知道如何在視頻中執行3D碰撞檢測遊戲。視頻遊戲中碰撞檢測的最佳技術?

是不是最好使用碰撞體樣球體和包裝盒,檢查十字路口或者是有一個更簡單的方法,就像剛比較對象的位置和載體,知道他們是否相交?

回答

1

這是一個模糊的問題。這完全取決於你實際正在做什麼。如果它是一個盒子,你會檢查相對於中心的兩側之間的collsions。來想一想,你對球體(半徑)也是這樣做的。

同樣值得注意的是,碰撞是很容易的部分,它是碰撞後難以控制的部分,而且當形狀起作用時更是如此。即一個球體和一個正方形碰撞將對球體和球體起不同的作用。

一個好方法是打擊一個軸上的碰撞,然後移動到另一個軸上。不要讓自己難過。

值得一讀通過:http://www.gamedev.net/page/resources/_/technical/game-programming/general-collision-detection-for-games-using-ell-r1026

之後,其將是值得購買一本書上一般遊戲編程,並通過它的工作,然後你可以看到雙手放在什麼是最好的辦法是你做什麼。

希望這有助於

0

這不一定是答案最快的,但一個充分論證的算法是有由(的XYZ)多​​元函數,如果它在該地區和0,否則,返回1表示兩個區域,乘他們在一起,然後看看整個空間的積分是否非零。

如果碰撞是基於點的,只需使用基於true和false的函數值。

這將工作時間的100%,只要您可以積分,算出積分...

另一種選擇,我會用是剛剛拓展功能區的邊緣,這樣只需要點檢測。準備大量的片段功能。