2012-12-19 1 views
3

Rectangle.Intersects에서 충돌 세부 사항을() 취득 나는 충돌의 정확한 좌표 또는 그것에 관한 세부 사항을 현재 XNA API과 함께 얻을 수 있습니까?어떤 시점에서, 나는 이런 식으로 뭔가에 볼과 외륜 사이의 충돌을 감지, 나는에 브레이크 아웃 게임을

나는 충돌 순간에 각 물체의 정확한 좌표를 비교하는 것과 같은 기본적인 계산을 할 생각이었습니다. 다음과 같이 표시됩니다.

// Ball class 
if((rectangle.X - paddle.Rectangle.X) < (paddle.Rectangle.Width/2)) 
    // Collision happened on the left side 
else 
    // Collision happened on the right side 

그러나 올바른 방법은 아닌지 잘 모르겠습니다.

너희들은 어쩌면 내가 그것을 달성하기 위해 사용해야 할 수도있는 엔진에 대한 조언이 있니? 아니면이 방법을 사용하여 좋은 코딩 관행?

답변

3

가 나는 결과로 당신에게 또한 직사각형 교차로를 줄 두 개의 유사한 정적 방법 (그들은 값이 반환되는 방식에 차이)가 있다는 것을 http://msdn.microsoft.com/en-us/library/microsoft.xna.framework.rectangle.intersect.aspx

에서 발견했습니다. 이것은 당신이 원하는 것을하기에 충분해야합니다.

+0

완벽한 참고를 위해 많은 감사드립니다! –

+0

반환 된 직사각형으로 볼이 충돌 한 외륜의 위치를 ​​어떻게 확인할 수 있습니까? –

+0

나는 당신이 얻으려는 것을 이해하지 못합니다. 패들의 위치는 충돌에 관계없이 알려 져야합니다. 공이 패들에 닿는 충돌 영역의 위치는 이러한 interct 메소드의 결과 사각형입니다. 하나의 점을 알고 그 결과 직사각형이 더 크다면,이 직사각형의 중심을 취함으로써 근사 할 수 있습니다. –

관련 문제