1
0
Fork 0
Commit graph

444 commits

Author SHA1 Message Date
Durk Talsma
88dc9a14b7 Remove the assertSpeed debugging code. 2011-10-10 18:51:41 +02:00
Durk Talsma
da3c098a4b AITraffic exits the runway as soon as possible (in theory; the code still needs some fine tuning). 2011-10-09 23:44:42 +02:00
Durk Talsma
02712dc1ad Several Bugfixes:
* Landing AIAircraft now land properly!!!
 * Fixed problems with takeoff scheduling.
 * Untangled several vertical speed calculation algorithms.
 * No more bent-over-backwards and jump-in-the-air AI aircraft initializations.
 * Fixed intermixed target speed and target altitude during climb phase.
 * Implemented beginnings of a "line up and wait" procedure.
 * Tried to use actual runway elevation for calculating the decent profile.
2011-10-09 00:25:04 +02:00
Durk Talsma
a9ac75b9c9 Revert back to the version from sept 4. Vertical speed calculations of decending AI aircraft were messed up. 2011-10-05 21:40:47 +02:00
Durk Talsma
f2b354d9cb Merge branch 'next' of gitorious.org:fg/flightgear into next 2011-10-03 20:57:32 +02:00
Durk Talsma
4640f5bb02 * A new algorithm for determining hold position instructions. This version still needs some finetuning, but already appears to be more solid than the old version.
* Some tweaks to the traffic scheduling algorithm.
* Misc cleanup.
2011-10-03 20:54:58 +02:00
ThorstenB
3451012bca Make LOD properties of AI/MP aircraft run-time configurable. 2011-10-03 12:01:58 +02:00
Durk Talsma
152fec1cb6 Patch by Torsten Dryer: Remove the Ugly global dialog variable and remove rwy as a member variable from the AIFlightPlan class. 2011-09-22 20:52:05 +02:00
Durk Talsma
1e4b17595a -Prevent crashing the sim when starting at a gate that is not connected to the ground network. For now, just silently shut down the ATC system. 2011-09-11 21:42:29 +02:00
Durk Talsma
35abe6d0ab A number of cosmetic and/or infrastructural changes.
Traffic Manager:
	* Just continue routing until we run out of flights. This change removes one of the major requirements for setting the "Home port" field.
	* Add a time restriction requirement for the aircraft scheduler; this became necessary after removing the limited-to-home-port routing restriction.
	* Added a new field to the heuristics calculation: take into account whether an aircraft has already been used in a previous session. Rotate aircraft assignments for greater variability across sessions.
	* Added a revision number to the cache files, so that old cache results, which are no longer compatible with the new file format, are discarded.

Groundnetwork and traffic control:
	* Added a revision number to the cache files, so that old and incompatible results are discarded.
	* The caching algorithm probably didn't store the correct data for airports that were processed while the user was quite far away. This is now corrected by checking whether the cached elevation data are equal to the generic airport elevation.
AIAircraft:
	* I've been searching for the infamous aircraft bend-over-backward bug, that can occur during initialization, but to no avail yet. The only variable potentially responsible (tgt_vs) wich can explain the irregular jumping behavior, as well as the weird pitch results is initialized in AIAircraft's only constructor (through AIBase), and I can't find any situation in the ground handling code where this variable could get bizarre values. But,
	* a couple of tgt_vs. calculations appear to be completely redundant. This value was calculated twice inside the ProcessFlightplan function, and subsequently again in the updateSecondaryTargetValues function. I have removed the calculations in the process flightplan function, without any apparent side effect.
2011-09-04 20:27:36 +02:00
Erik Hofman
1e9120a8ac Add proper conversion factor 2011-08-29 18:34:57 +02:00
Vivian Meazza
ce97a1e4c5 Bugfix: Ballistic objects with "expiry" set were not instantiating correctly.
Signed-off-by: Vivian Meazza <vivian.meazza@lineone.net>
2011-08-11 21:46:51 +02:00
Durk Talsma
552aa5419f Some fine tuning of the ATC messages related to ground to tower transfer.
Removal of obsolete debugging messages. Let's hope I caught them all.
2011-08-10 21:39:28 +02:00
Durk Talsma
b603344d69 Merge branch 'next' into durk-atc 2011-08-09 20:09:14 +02:00
Torsten Dreyer
1e7d072eed Add LOD to each AI model
Add a LOD (range animation) to each AI model if the property
/sim/rendering/static-lod/ai is set to any number greater than
zero. AI models get loaded but only displayed when closer than
the number given in the property (in meters).
If the property is absent or it's value is less or equal 0.0
than no LOD is added to the AI model.
2011-08-09 18:02:37 +02:00
Durk Talsma
5f3804e816 AI/ATC enhancements:
- Better transistion between taxi and takeoff phases.
 - Skipping the pushback stages when a gate doesn't require push-back.
 - Some test code always chooses the user aircraft as the one that has to hold position.
2011-08-07 21:38:50 +02:00
Durk Talsma
98048d1000 Some preparory work for enabling the handover from ground to tower controller. 2011-08-03 23:09:52 +02:00
Durk Talsma
449675deca Removal of some debugging statements. 2011-08-03 21:23:42 +02:00
Durk Talsma
4928886e56 Bugfix: Change the point where leg numbers recycle, in order to avoid hitting the default case in AIFlightPlan::create(). 2011-08-01 21:34:33 +02:00
Durk Talsma
f84d9d4757 A fairly major interal reorganization of the AI code
- Change AIFlightPlan::waypoint into an independent class FGAIWaypoint
 - Don't update leg count until the aircraft has passed the last waypoint that was created by the corresponding leg
 - Clear ground network rendering for controllers that are no longer active.
2011-07-31 19:27:44 +02:00
Durk Talsma
987a0fd1df Fix broken constructor to prevent a segfault when deleting taxiroute during program shutdown. 2011-07-26 18:28:34 +02:00
Durk Talsma
dbceffeae8 Fix flightplan initialization issue. 2011-07-25 21:36:09 +02:00
Torsten Dreyer
0c9716227c let bool FGAIFlightPlan::createCruise() return a value
fix Windows build.
2011-07-24 17:22:00 +02:00
Durk Talsma
3f26233d69 Some cleanup in the ATC/AI code before merging with the next branch:
- Hide the ATC dialog box by default
 - Allow dynamic enabling and disabling of the AI groundnetwork visualization
 - Cleanup of debug messages
2011-07-24 12:48:13 +02:00
Durk Talsma
5228053f7f Merge branch 'next' into durk-atc 2011-07-24 08:44:22 +02:00
James Turner
7abf7c5748 CMake header support for XCode/Visual Studio 2011-07-19 07:58:03 +01:00
Durk Talsma
f8a8805e2d Merge branch 'next' into durk-atc 2011-07-01 22:20:40 +02:00
ThorstenB
1ebab94710 #358: Missing option to disable AI scenarios
--ai-scenario=... can only add/enable another scenario.
Introduce --disable-ai-scenarios option to disable all scenarios (can be
used by external launchers, GUIs etc)
Also provide error instead of debug message when a scenario cannot be loaded.
2011-06-26 16:08:19 +02:00
ThorstenB
c19664291f #221, #242: Fix/work-around for AI traffic issues
Move the disable-HOT feature from the MP aircraft to the a/c base class,
disable HOT for all AIaircraft, since that's a fix/work-around for
#242: AI aircraft respect the user a/c only when HOT is _disabled_ for them
#221: AI aircraft don't stack at parking positions when HOT is disabled
Also generally disables HOT for ballistic and other models (suggested by vivian),
allowing it for ship/carrier models only.
2011-06-25 20:44:44 +02:00
Torsten Dreyer
bad5fbf66a Use computed gravity instead of hardcoded value 2011-06-08 20:17:40 +02:00
Vivian Meazza
8b6779aa96 Bugfix: set life timer to 0 on instantiation and when ballistic object dies.
Signed-off-by: Vivian Meazza <vivian.meazza@lineone.net>
2011-06-06 09:32:00 +01:00
Durk Talsma
de1564d83e Merge branch 'next' into durk-atc 2011-05-31 20:38:42 +02:00
Vivian Meazza
a6cc487b74 Add the capability of switching slaved objects at runtime.
Signed-off-by: Vivian Meazza <vivian.meazza@lineone.net>
2011-05-24 19:45:08 +02:00
Vivian Meazza
455b7fe61e Add the capability of switching slaved objects at runtime.
Signed-off-by: Vivian Meazza <vivian.meazza@lineone.net>
2011-05-21 17:08:36 +01:00
Durk Talsma
6ee1d7411b Simple FlightPlan generation and execution for the user aircraft: This will allow ATC guided taxiing to the runway. 2011-05-07 10:03:27 +02:00
Durk Talsma
17fececa9f Some more work on AI/ATC user interaction integration:
* Update AI aircraft object based on user position.
* Process flightplan
* Don't try to update the radar information for AIAircraft that don't have a valid manager pointer
2011-04-29 20:44:05 +02:00
Durk Talsma
a7ccae9fca More work on AI/ATC integration:
- Fixed a bug in AI aircraft ground steering code: When aircraft were not moving, the value of headingchangeRate kept increasing to insane levels. Although this was clamped to a maximum of 30 degrees per second, the initial rate could still push the aircraft in the wrong direction. In practice, this bug would be visible when an AI aicraft would be pushed back, when it tended to veer to the right.
 - Make sure that the aircraft slows down well ahead of the pushback point. This change ensures that the AC will actually reach the pushback point. It also ensures a slightly tighter steering range.
 - AI ground steering rate is tuned to 30 degrees per second at a nominal taxispeed of 15. I now modulate the heading adjustment rate by manipulating the adjustment using a non-linear function (the sqrt). This allows for a slightly tighter turn radius at speeds < 15 and slightly looser turns at speeds > 15.
 - The AI Flightplan generation code can return false. This can be used to determine whether any additional AI aircraft may be created. Currently, the function returns false when no more parkings are available. This should limit the build-up of huge AIAircraft tower stacks.
 - The ground network can now graphically display all aircraft actitivy on the ground network by using a virtual marker system.
2011-04-19 18:01:24 +02:00
Durk Talsma
c597f72158 Added some interface function to traffic manager related classes and added a traffic record that mimicks the users aircraft's traffic intentions. 2011-04-12 23:28:48 +02:00
Durk Talsma
493661a2dc Small step forward: Ensure that traffic information is appropriately updated. 2011-04-11 22:23:53 +02:00
Durk Talsma
819e6a04fa Some more work on AI/ATC interaction.
* Added an AIAircraft that is shadowing the user aircraft's behavior, in terms of AI / ATC interactions
* Set up a shadow AI FlightPlan that is used for tracking the user's aircraft.
2011-04-10 12:46:00 +02:00
Durk Talsma
52b0baace1 adding changed files for previous commit. 2011-04-03 17:58:16 +02:00
ThorstenB
f6b9c5b908 Make AIplanes respond to TCAS RAs. 2011-02-25 21:12:35 +01:00
ThorstenB
0f7f7fce6b Expose vertical speed for MP planes
vertical speed of MP planes was always 0,
calculate their (average) vertical speed since
it's required for TCAS and TCAS display
2011-02-25 21:12:35 +01:00
Torsten Dreyer
f938a23d7c clear two gcc warnings 2011-02-25 20:46:18 +01:00
ThorstenB
8962477cfa Fix huge multiplayer memory leak.
Almost all FGPropertyData elements received via MP were leaked.
Property data is now cleanly deallocated in the FGExternalMotionData destructor.
Thanks to Jester for reporting rising mem consumption in MP mode.
2011-02-16 00:49:00 +01:00
ThorstenB
133cfbfa7f Fixed several compiler warnings
uninitialized or unused variables, init sequence, ...
2011-02-02 22:05:54 +01:00
Frederic Bouvier
6bb8e69b92 Initialize class member in AIFlightPlan 2011-01-30 21:20:50 +01:00
Mathias Froehlich
70dd6279a7 Add an initial implementation of a hla module. 2011-01-17 21:35:03 +01:00
ThorstenB
867508def8 Minor update
Missed this place during code clean-up
2011-01-10 21:19:51 +01:00
ThorstenB
6ff61836fe AI traffic performance boost for busy airports
Stop ground elevation (scenery) checks for stationary AI aircraft.
2011-01-10 20:53:46 +01:00