좋아요. 저는 우주 시뮬레이션과 대부분의 우주 시뮬레이션으로 노력하고 있습니다. 내 총알이 도달 할 때 상대방이 우주선 (3 차원 포지션)이 될 곳을 찾아야합니다. 총알이 움직이는 속도와 상대방의 속도가 나르는 속도를 어떻게 계산합니까?간단한 문제 - 속도 및 충돌
답변
그와 당신 사이의 상대 속도 벡터를 계산하십시오. 만약 당신이 여전히 서있다면 그의 움직임으로 간주 될 수 있습니다. 상대 거리 벡터를 계산합니다. 이제 당신은 그가 이미 D 떨어져 있고, V 단위로 움직이고 있다는 것을 알고 있습니다. 계산할 V '가 있습니다. 길이는 알지만 방향은 아닙니다.
이제이 두 제약 조건, 즉 V와 총알의 V '로 삼각형을 구성하고 있습니다. 로 단순화
Dx+Vx*t = V'x*t
Dy+Vy*t = V'y*t
V'x^2 + V'y^2 = C^2
: 두 가지 차원에서처럼 보일 것
(Dx/t+Vx)^2 + (Dy/t+Vx)^2 = C^2
그리고 당신은 해결하기 위해 차 공식을 사용할 수 있습니다 그. 이 기술을 3 차원으로 유사하게 적용 할 수 있습니다. 이것을 해결할 수있는 다른 방법이 있지만 이것은 벡터 미적분 대신에 단순한 대수학입니다.
누군가가 지적했듯이 IF의 문제가 있습니다. 예를 들어 우주선이 총알보다 빠르면 총알이 도착하지 않을 가능성이 큽니다. 이 경우 quadractic 수식은 복소수를 반환합니다. –
, 총알에 선박의 부정적인 속도를 추가하기 만 총알 이동하도록 커트 밀러
http://www.gamespp.com/algorithms/collisionDetection.html
에 의해 충돌 감지. 그런 다음 총알이 이동하는 선의 모양과 선의 교차점을 계산합니다 (* pos -> pos + vel * dt *).
질문은 "총알이 부딪 칠 때 우주선이 될 곳"이 아니어야합니다. 선형 궤도와 일정 속도를 가정하면 두 벡터의 교차점을 계산합니다. 하나는 발사체 경로를 나타내고 다른 하나는 우주선 경로를 나타냅니다. 그런 다음 원래 위치에서 교차 위치까지의 거리를 각각의 속도로 나누어 각 객체 (선박 및 총알)가 그 지점에 도달하는 시간을 결정할 수 있습니다. 시간이 일치하면 충돌 및 충돌이 발생합니다.
더 정확한 충돌 탐지가 필요하면 간단한 BSP 트리와 같은 것을 사용할 수 있습니다.이 트리는 충돌을 빠르게 판별 할 수있을뿐만 아니라 충돌이 발생한 표면과 정확하게 처리 된 경우 정확한 3D를 제공합니다 충돌의 위치. 그러나 동적 환경에서 이러한 트리를 유지하는 것은 어려울 수 있습니다.
- 1. Chipmunk 조건부 충돌 속도?
- 2. Chipmunk Physics의 충돌 속도 확인
- 3. 간단한 충돌 감지 - Android
- 4. OpenCV 프레임 속도 문제
- 5. 간단한 svn 충돌 해결
- 6. 여러 AJAX (jquery) 호출로 극도의 속도 저하 및 충돌 발생
- 7. ffmpeg 속도 인코딩 문제
- 8. Excel 및 속도 문제 사용자 정의 함수
- 9. ALSA dmix 플러그인 및 샘플 속도 문제
- 10. System.IO.Packaging 속도 문제 C#
- 11. Windows에서 NTLMv2 해싱 기술을 사용하는 충돌 속도
- 12. v2.2008에있는 Datareader 속도 문제
- 13. IE에서 GoogleMaps의 이상한 속도 문제
- 14. 가장 중요한 속도 문제
- 15. 게임 속도 문제
- 16. hoverIntent의 다양한 속도 문제
- 17. 가중 RNG 속도 문제
- 18. GDI + gif 속도 문제
- 19. jQuery 및 ASP.NET 유효성 검사기 충돌 문제
- 20. htaccess 리디렉션 충돌 문제
- 21. 데이터 속도 및 프레임 속도 속성
- 22. 예기치 않은 파괴 충돌 문제 (충돌이없는 충돌)
- 23. 복제 문제 - 충돌 해결
- 24. UITabBarController 충돌 문제
- 25. 다각형 충돌 감지 문제
- 26. 충돌 응답 (SAT) 문제
- 27. UIFont 충돌 문제
- 28. 이상한 충돌 문제 + iOS
- 29. jQuery를이 충돌 문제
- 30. CSS의 충돌 문제
시도해 볼 수도 있습니다. http://mathoverflow.net – kindohm
이미 * a * 질문에 대한 답을했습니다. 그러나 이것을 다시 읽으면서, 당신이 어떤 질문을했는지 확신 할 수 없습니다. 맞았을 때 찍은 각도가 맞는지 알고 싶습니까? 또는 촬영할 각도를 알고 싶습니까? (나는 후자에게 대답했다). –