- #1
ifnspifn
- 2
- 0
Hiya,
I'm working on a 2D turn based space combat game, and I'd like to nail the mathematics of how a ship would truly move in space. Without going too much into my control scheme, here's the problem I'd like to solve:
"Given a ship at point (x_0, y_0), with initial velocity V, along with a fixed length of time, T, and a maximum amount of energy/thrust/fuel a player can spend during this turn (which lasts T seconds long), what is the function f(x, y) that describes how much fuel will remain should the player decide to go to point (x, y) this turn?"
Now, this may seem like an ambiguous question (and, I guess, it could be), but here are some other constraints:
-During this time interval T, only a single, constant force can be applied for the duration of T
-There are no external forces at play
Now, intuitively, I'd guess that the set of (x, y) points where f(x, y) = 0 would form an ellipse of some kind. This is backed up by some preliminary work I've done, but I'm pretty well lost at this point. Here's my attempt at solving the problem, thus far:
since x_f = x_0 + v_x * t + (1/2) * a * t^2, and likewise for the y component, I can say that:
a_x = (2/t^2) * (x_f - x_0 - v_x * t).
From this, I can find the magnitude of a:
||a|| = (2/t^2) * sqrt((x - (x_0 + v_x * t))^2 + (y - (y_0 + v_y * t))^2)
needed to bring the ship to some point (x, y) in time t. However, beyond this, I'm not sure how to model my function f(x,y) so as to draw where a player could go. Initial ideas have included creating some maximum amount of acceleration, A, that a player can use this turn, but that doesn't really make any physical sense. I've tried working in the Tsiolkovsky rocket equation (http://en.wikipedia.org/wiki/Tsiolkovsky_rocket_equation), but I don't quite know how. Any ideas?
I'm working on a 2D turn based space combat game, and I'd like to nail the mathematics of how a ship would truly move in space. Without going too much into my control scheme, here's the problem I'd like to solve:
"Given a ship at point (x_0, y_0), with initial velocity V, along with a fixed length of time, T, and a maximum amount of energy/thrust/fuel a player can spend during this turn (which lasts T seconds long), what is the function f(x, y) that describes how much fuel will remain should the player decide to go to point (x, y) this turn?"
Now, this may seem like an ambiguous question (and, I guess, it could be), but here are some other constraints:
-During this time interval T, only a single, constant force can be applied for the duration of T
-There are no external forces at play
Now, intuitively, I'd guess that the set of (x, y) points where f(x, y) = 0 would form an ellipse of some kind. This is backed up by some preliminary work I've done, but I'm pretty well lost at this point. Here's my attempt at solving the problem, thus far:
since x_f = x_0 + v_x * t + (1/2) * a * t^2, and likewise for the y component, I can say that:
a_x = (2/t^2) * (x_f - x_0 - v_x * t).
From this, I can find the magnitude of a:
||a|| = (2/t^2) * sqrt((x - (x_0 + v_x * t))^2 + (y - (y_0 + v_y * t))^2)
needed to bring the ship to some point (x, y) in time t. However, beyond this, I'm not sure how to model my function f(x,y) so as to draw where a player could go. Initial ideas have included creating some maximum amount of acceleration, A, that a player can use this turn, but that doesn't really make any physical sense. I've tried working in the Tsiolkovsky rocket equation (http://en.wikipedia.org/wiki/Tsiolkovsky_rocket_equation), but I don't quite know how. Any ideas?