2016-11-26 3 views
1

나는 발사체를 쏠 수있는 적을 가졌지 만, 내 문제는 플레이어를 때리는 데 필요한 각도를 찾으려고한다는 것입니다. 그러나 발사체는 정확한 속도로 발사되어야합니다 (즉 발사체를 더 천천히 쏠 수 없음). 나는 범위 방정식을 시도했으나 시타 (각도), y 거리, x 거리, 속도 및 중력을 얻도록 단순화 할 수 없습니다.중력을 고려해 볼 때 발사체의 각도를 벡터 2 목표에 맞추는 방법

, 하기 Teh 우주 나태 큰 대자로 드러 눕는 질문에 대한 죄송합니다

+0

어떤 적과 플레이어 사이의 수평 범위, 또는 그 변수는? 발사 속도는 (중력 가속도와 함께) 유일하게 일정합니까? –

+1

소프트웨어 또는 소프트웨어 알고리즘이 아니기 때문에이 질문을 주제와 관련이 없으므로 닫으려고합니다. 수학, 물리학 및 게임에 관한 질문입니다. – Rob

+0

범위 방정식은 무엇입니까? 물체가 범위 내에 있는지 확인 하시겠습니까? – Teepeemm

답변

0

음 ... 당신은이 : D - G-힘

V - - 당신의 발사 거리가

그램 = 9.8를 대상으로 속도

X를 따라 당신의 속도는 V의 *의 COS (A)

Y를 따라 귀하의 속도입니다 브이 * 죄의 (a)

당신은 따라서 비행 시간은 = t이며, 거리 D를 여행 할 필요가 D/V *의 COS (가) 당신이 당신의 비행의 최대의 높이에 도달하고 다시 떨어질 필요가있는 시간에

. 최대 지점에서 수직 속도는 0이됩니다. 비행이 끝나면 공기 저항을 무시하면 수직 속도가 시작 수직 속도와 같습니다.

따라서 속도 방정식은 v = acc * t (여기서 acc는 g입니다.) t = v/acc입니다. 귀하의 경우는 0으로 속도를 삭제하고 다시 원래 그걸 얻기 위해, 그래서 당신은 2

톤 = 2 * (V의 * 죄 (A)/g)의 요소가

이 합을 최대 수 있습니다 :

톤 = D/브이 * 코사인 (a)

t = 2 * (브이 * 죄 (a)/g)


2 * (V 죄 (a)/g) = D/vcos (a)

각도 이외에도 모든 것을 알고 있습니다.

그래서, 몇 가지 변수 전송을 수행하여 당신이

을 얻을

2sin (가) COS (A) = D그램/V^2

입니다

:

죄 (2A) = D *에서의 g/V^2

2A = 다 arcsin (D *에서의 g/V^2)

그래서,이 응답해야한다.

A = 다 arcsin (D *에서의 g/(V^2))/2

+0

나는 타겟이 같은 수직 레벨에 있다고 가정하고 있다고 생각한다. – Teepeemm

+0

예. 그렇지 않다면, 수직 속도와 관련한 시간 표현은 좀 더 복잡 할 것입니다. –

+0

블라드 미르 분명하지 않은 것에 대해 유감스럽게 생각합니다. /, 다른 수직 레벨을 의미했습니다. 믹스 업에 대해 미안합니다. ( -TehCosmicSloth –