Difference between revisions of "Development:AI Navigation"
Line 9: | Line 9: | ||
moveTo(position, velocity, heading, angular_velocity, time) | moveTo(position, velocity, heading, angular_velocity, time) | ||
+ | where a valid argument set would involve between one and all of the vector arguments, and optionally time. | ||
− | + | At present, a valid trajectory for a ship is limited only by the absolute acceleration, that is, the acceleration in any direction. A fairly reasonable trajectory to interpolate between two points, each with an associated velocity can be calculated using a cubic bezier, where the length of the control points is relative to the velocity at the point. | |
− | |||
− | [[User:cracken|cracken]] 23: | + | |
+ | [[User:cracken|cracken]] 23:39, 26 November 2006 (PST) |
Revision as of 08:39, 27 November 2006
At present the navigation routines are quite limited.
The files involved are flybywire.* and navigation.*
Problems with the current routines are: They are unable to navigate(efficiently) in a ship that has 90% of it's thrust only available in the fowards direction.
A solution I am pursuing is a general system of implementing states...
moveTo(position, velocity, heading, angular_velocity, time) where a valid argument set would involve between one and all of the vector arguments, and optionally time.
At present, a valid trajectory for a ship is limited only by the absolute acceleration, that is, the acceleration in any direction. A fairly reasonable trajectory to interpolate between two points, each with an associated velocity can be calculated using a cubic bezier, where the length of the control points is relative to the velocity at the point.
cracken 23:39, 26 November 2006 (PST)