基本上我想在XNA的3D模型周圍放置一個邊界框/立方體(在這種情況下,它是一個簡單的繪畫,因此模型本身只是一個帶紋理的矩形)。邊界框碰撞-3D XNA
我嘗試下面的代碼來創建多維數據集:
public BoundingBox BoundingBoxCreation()
{
min = Position + Vector3.Up * Height - Size/2
max = Position + Vector3.Up * Height - Size/2;
boundingBox = new BoundingBox(min, max);
return boundingBox;
}
然後,我創建了兩個相同的型號,具有相同的高度,大小及規模: 規模:新的Vector3(500.0f)(大因爲我在Blender中創建了它們) 身高:2f 大小:new Vector3(6.75f * 500,-1.09f * 500,0.35f * 500)(將所有數據乘以比例)。然後我試圖檢查兩個像這樣的碰撞:
if (CollisionTest.boundingBox.Intersects(tapestryLeftOne.boundingBox))
{
Window.Title = "Collision";
}
但是窗口標題只會改爲顯示當兩個是絕對100%完全一致的碰撞,但我要去的嘗試即使他們在任何時候接觸,而不僅僅是當他們相匹配時都能做到這一點。 關於如何實現這一點的任何想法?
如果有更好的方法來構造一個邊界框/立方體並檢測另一個邊界立方體,球體等之間的碰撞,那麼我會非常感謝你能否給我看。
在一些更多信息,謝謝你回到我這個問題上。我會明天嘗試這個第一件事,並讓你知道這是否解決了我的問題。 – Mike 2013-04-14 22:24:51
我設法讓我的最小和最大邊界框工作。只需將+更改爲a-on分鐘,因爲我正在創建一個大小爲零的框,解釋了爲什麼它必須完全對齊才能檢測到碰撞。 但是我現在有另一個問題。由於某些原因,當我畫出圍繞模型的框時,它看起來遠離模型本身。你知道解決這個問題的方法嗎? (如果需要可以提供截圖) – Mike 2013-04-28 20:33:28