Hitting moving target with projectile (w/ gravity) 2D

  • Context: Undergrad 
  • Thread starter Thread starter evesira
  • Start date Start date
  • Tags Tags
    2d Gravity Projectile
Click For Summary

Discussion Overview

The discussion revolves around the problem of calculating the angles required for a projectile to hit a moving target in a 2D side view shooter video game, taking into account the effects of gravity and the target's velocity. Participants explore the necessary equations and considerations for accurately determining the firing angles based on various parameters.

Discussion Character

  • Technical explanation
  • Mathematical reasoning
  • Debate/contested

Main Points Raised

  • The original poster (Vince) provides a pseudocode approach to calculate the angles needed to hit a target, but notes that it does not account for the target's velocity.
  • Vince suggests that the bot's velocity may not be necessary for the calculations, proposing that it could be treated as a relative velocity problem.
  • Another participant argues that the bot's velocity is indeed important, as the projectile inherits the bot's velocity, necessitating consideration of both the x and y components of the velocity in the calculations.

Areas of Agreement / Disagreement

There is disagreement regarding the relevance of the bot's velocity in the calculations. Vince believes it can be ignored, while another participant asserts that it must be included in the analysis.

Contextual Notes

The discussion does not resolve the mathematical steps necessary to incorporate the target's velocity into the projectile motion equations, nor does it clarify how to effectively combine the velocities of the bot and the target.

evesira
Messages
6
Reaction score
0
Hello,

I'll give you a little background information on the problem first. It might help.

I'm working on a video game actually. It's a 2d side view shooter. In it, there are bots (computer controlled players) that have perfect aim. They can hit (assuming it's in range) a target, accounting for the velocity of the target and the effect of gravity on the projectile (though most of the projectiles in the game will travel nearly straight paths, some will curve slightly).

Here's what I need. I need an equation that gives:

2 thetas (angle of firing) if the equation is solvable (if it's not solvable, then the bot is out of range, and just won't fire at all)

And here are the variables I know. These will be plugged into the equation I'm looking for:

--- Bot X, Y
--- Bot V (velocity vector)
--- Target X, Y
--- Target V
--- Acceleration of the bullet due to gravity
--- Firing speed of the bullet (Vo)Just to be clear, there are three objects we're dealing with:

--- the bot (the thing that's firing the bullet)
--- the bullet (affected by gravity)
--- the target (has constant velocity)
Here's what I have so far. This works perfectly, EXCEPT for the fact that it doesn't account for the target's velocity. This is pseudocode, which I'm sure most of you should be able to understand.

____________________________________________________________________
Root = (FireSpeed^4)-(Gravity*( (Gravity*(TargetX^2)) + (2*TargetY*(FireSpeed^2)) ));

if (Root >= 0)
{
Angle1 = arctan(((FireSpeed^2)+sqrt(Root))/(Gravity*TargetX));
Angle2 = arctan(((FireSpeed^2)-sqrt(Root))/(Gravity*TargetX));

if (TargetX < 0)
{Angle1 += pi; Angle2 += pi;}
}

____________________________________________________________________The equation I used there is straight from this wikipedia article:
http://en.wikipedia.org/wiki/Trajec....CE.B8_required_to_hit_coordinate_.28x.2Cy.29
If I'm not a complete moron, I'd say that the velocity of the bot doesn't even matter, since it could just be subtracted from the target's velocity (essentially doing the whole problem with a relative velocity). Correct me if I'm wrong, please. You can solve it using vectors, if you wish. Components would be fine as well.

Any help you can give is appreciated, even if it's just a push in the right direction. If you do explain something, please try to explain it thoroughly. I do understand basic (relative the crazy stuff you guys talk about here) physics, but I'm really stumped on this one.Thanks,
Vince
 
Last edited:
Physics news on Phys.org
Anyone?
 
really no one knows at all? or are you just unwilling to give guidance for some reason..
 
I'm pretty sure that the velocity of the bot fire at the target does matter. The object that you are firing from the bot is moving at the same velocity of the bot, therefore you have to take in consideration the velocity of the bot. because your doing velocity in 2 dimensions, you need to calculate the velocity of the x component, and y component. I think that's what you were asking, seeing how I can't read that code. I hope I could be of some help, and I'm not just telling you something you already know. Good luck anyway.
 

Similar threads

  • · Replies 2 ·
Replies
2
Views
2K
  • · Replies 2 ·
Replies
2
Views
4K
  • · Replies 3 ·
Replies
3
Views
16K
Replies
7
Views
2K
  • · Replies 3 ·
Replies
3
Views
2K
  • · Replies 34 ·
2
Replies
34
Views
12K
  • · Replies 11 ·
Replies
11
Views
2K
Replies
6
Views
6K
  • · Replies 4 ·
Replies
4
Views
4K
  • · Replies 1 ·
Replies
1
Views
2K