1
0
Fork 0
Commit graph

619 commits

Author SHA1 Message Date
ThorstenB
bfb0619f76 Fix memory leak with FGAIModelData.
Be lazy and use ref pointers - to remove memory automatically.
2011-12-09 17:03:14 +01:00
Vivian Meazza
6b1391e404 Make parameter "roll-factor" settable in scenario files
Signed-off-by: Vivian Meazza <vivian.meazza@lineone.net>
2011-12-04 19:10:42 +01:00
ThorstenB
07aa70dce9 sound: fix sound-buffer-in-use issue
FGFX objects must be dereferenced early enough, and sound manager must be
removed late enough - otherwise openal complains about resources being
still in use when tryin to remove buffers.
Also: do not create FGFX objects for AI/MP aircraft, when AI sound is
disabled.
2011-12-04 17:18:02 +01:00
Erik Hofman
831f81d97c Properly construct a string from another string and an integer, use a relative path for sound construction, allow enable/disable aimodel sounds using /sim/sound/aimodels/enabled 2011-12-03 14:40:48 +01:00
Erik Hofman
99bb79c7d5 Properly remove FGFX classes when not needed anymore 2011-11-27 15:10:44 +01:00
Erik Hofman
f89ad9baf0 Move some code from the header file to the source file. 2011-11-27 13:48:04 +01:00
Erik Hofman
2c8da4c122 fix a typo 2011-11-27 10:52:28 +01:00
Erik Hofman
ebcc6359b9 Initials sound support for AI models. 2011-11-25 13:39:10 +01:00
Erik Hofman
04395fa9a5 Postpone initialization of the avionics soundgroup until avionics are enabled. This prevents AI classes from creating new and unnecessary avionics sample groups. 2011-11-20 15:31:58 +01:00
Erik Hofman
544bad86c7 remove a .swp file 2011-11-20 15:06:10 +01:00
Erik Hofman
9e1121fc4c First implementation of sound effects for AI models. 2011-11-20 15:05:37 +01:00
ThorstenB
4b2506d709 Add new performance monitoring subsystem.
Rename some subsystems for naming consistency.
2011-11-19 15:37:49 +01:00
Durk Talsma
4903556bb2 Enable the AI pilot to hit the breaks hard when necessary. 2011-11-12 18:42:59 +01:00
Durk Talsma
0905b4f367 Fixing an age old bug. AIAircraft arriving on an airport never received a proper gateId, causing them to taxi to the end of the world and beyond. 2011-11-12 18:40:23 +01:00
ThorstenB
1eb8d0caa4 #424: Don't page out AI objects. Just load lazily.
Changes commit 1e7d072eed and uses the new
deferred loading - instead of paged (un)loading.
2011-11-10 22:12:54 +01:00
James Turner
70b4f38ebc Goodbye automake. 2011-11-01 11:15:53 +00:00
Durk Talsma
8eca759077 Merge branch 'next' of gitorious.org:fg/flightgear into next 2011-10-26 22:38:38 +02:00
Durk Talsma
538e632f45 * Updated routing algorithm. Just sorting the schedules by usage heuristics doesn't work well for major multihub airlines.
* Improved groundnetwork routing algorithm. Don't uncesscarily block taxiways. Instead, use a "just-in-time" blocking system. The unblocking algorithm still needs some work, but the current version is already a major improvement over the previous version.
* Some tweaks to the handover from ground to tower controller. Aircraft could refuse to take-off of even refuse to taxi onto the runway. This now seems to be solved.
2011-10-26 22:26:37 +02:00
James Turner
16a54a4409 Change a hot-spot in the AI code, to use cartesian instead of geodetic math. 2011-10-26 17:26:11 +01:00
Frederic Bouvier
8057c50849 AITraffic fix - forgot two files 2011-10-22 10:31:38 +02:00
Frederic Bouvier
3a262fe7d3 Fix a problem in AITraffic where waypoint iterator is trashed by push_back. A cleaner solution would be to use indices instead of iterators to track position in the waypoint vector 2011-10-22 10:15:16 +02:00
James Turner
b1b4b7ecf4 Fix (nearly) all the std:: namespace violations in headers, in preparation for fixing SGsmplstat.hxx to *not* do a 'using namespace std'. 2011-10-17 17:41:59 +01:00
ThorstenB
b16338598a Use more specific log classes.
Log class filters work better when different modules
use different classes :).
2011-10-11 21:55:50 +02:00
ThorstenB
53e6c0ac5f Reduce AI/MP lags when removing models
Move load of removing OSG objects to the OSG pager thread
2011-10-11 21:43:24 +02:00
Durk Talsma
835334bd4f Finetuning of AI Aircraft landing performance. Aircraft slow down to taxi speeds just before leaving the runway. Increased vTaxi on the runway to further reduce time on the runway and slow down to vTouchdown well ahead of touching down. 2011-10-10 21:55:09 +02:00
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
ThorstenB
6eadcb8dfc Fixed AIplane vertical speed.
Fixed reversed fps-fpm conversion.
2010-12-29 21:17:46 +01:00
Curtis L. Olson
f8015bf54f Add a small bit of nan/fpe protection. It's possible that this routine
could be called with a zero dt which would then lead to a divide by zero
error if we ran through all the computations.
2010-12-20 12:20:57 -06:00
James Turner
a91ec5f9f9 Initial work on CMake build files, with considerable help from Olaf Flebbe. 2010-12-19 15:06:04 +00:00
Csaba Halasz
674a295896 Merge commit 'refs/merge-requests/13' of git://gitorious.org/fg/flightgear into next 2010-11-30 00:26:22 +01:00
ThorstenB
44901ae86f Tile manager improvements
Priority scheme for tile loading/removing
Cleaner tile manager interface for AI/groundcache/...
Reduce start-up delay. Drop splash screen when inner scenery is available.
Be nice to osg loader: slow-down main loop while initial scenery is still loading.
2010-11-19 13:59:43 +01:00
ThorstenB
ca3cabc60a Kill some unnecessary include dependencies.
Speed-up compilation when working on tilemanager.
2010-11-19 13:44:52 +01:00
ThorstenB
e5348b67a5 New property identifying missing MP planes
Provide "model-installed" property at MP planes for pilot list.
Avoid direct directory access in Nasal (aircraft installed check).
2010-11-13 16:29:34 +01:00
Christian Schmitt
0a5e86f4e6 remove old .cvsignore files 2010-11-11 01:16:29 +01:00
ThorstenB
7dd2cf19e8 Fixed some compiler warnings.
Please the compiler (gods).
2010-10-29 21:14:09 +02:00
Vivian Meazza
b88d0988cd More rationalization of methods, and other clean-ups
Signed-off-by: Vivian Meazza <vivian.meazza@lineone.net>
2010-10-28 17:29:41 +01:00
James Turner
0147f78d20 Remove persistent references to AI mananger and its objects from the submodel-manager. 2010-10-28 15:10:37 +01:00
James Turner
f5c2c630eb Remove references to old (unused) airways code 2010-10-20 17:54:16 +01:00
James Turner
0d7769ae72 Search aircraft dirs when loading AI models. Thanks to Thorsten Brehm for the catch. 2010-10-20 00:07:54 +01:00
James Turner
0beab94cb5 Make the tile-manager a well-behaved SGSubsystem 2010-10-01 19:09:19 +01:00
Csaba Halasz
5a2d948c6f Add missing initializer in AIBallistic.cxx 2010-09-30 13:07:42 +02:00
Vivian Meazza
abd1d983c6 Rationalize methods.
Signed-off-by: Vivian Meazza <vivian.meazza@lineone.net>
2010-09-30 01:08:50 +02:00
Vivian Meazza
2b95158704 Add coefficients configurable at runtime, and bugfix.
Signed-off-by: Vivian Meazza <vivian.meazza@lineone.net>
2010-09-30 01:06:19 +02:00
Vivian Meazza
a5eba61c2a Remove unneeded variable.
Signed-off-by: Vivian Meazza <vivian.meazza@lineone.net>
2010-09-30 01:05:59 +02:00
Csaba Halasz
5000d212ec Merged commit from Vivian Meazza: Rationalize methods (ea85e50c2093942164bbc02f371a0c05b259f9f4) 2010-09-30 01:05:04 +02:00
Csaba Halasz
141186a358 Merge branch 'next' into vivian
Conflicts:

	src/AIModel/AIBallistic.cxx
	src/AIModel/AIBase.cxx
2010-09-30 00:45:13 +02:00
Vivian Meazza
10866851de Add join manoeuvre/command to AIWingman. Rationalize more methods. Fix some more bugs 2010-09-30 00:34:15 +02:00
Durk Talsma
df00df3feb - Fix compiler warnings. 2010-09-27 17:48:38 +02:00
Anders Gidenstam
cf4d0fb0e3 Restored src/AIModel/AIShip.hxx to unix line endings. The last step of
rebasing merge-request #6 for inclusion.
2010-09-17 22:03:00 +02:00
Vivian Meazza
474789269b Bugfix - untie property.
Signed-off-by: Vivian Meazza <vivian.meazza@lineone.net>
2010-09-17 21:44:58 +02:00
Vivian Meazza
00f26994b2 Add <name> tag so that AIWingman or other suitable AI Object can be attached.
Signed-off-by: Vivian Meazza <vivian.meazza@lineone.net>
2010-09-17 21:44:58 +02:00
Vivian Meazza
1dc3ecf016 Make AI Objects of type Wingman, Escort, and GroundVehicle able to be stationed or formated to any AI Object type which can be named - Carrier, Ship, Tanker, Wingman etc.
Signed-off-by: Vivian Meazza <vivian.meazza@lineone.net>
2010-09-17 21:44:58 +02:00
Vivian Meazza
f08012d14f Remove debugging statement.
Signed-off-by: Vivian Meazza <vivian.meazza@lineone.net>
2010-09-17 21:44:58 +02:00
Vivian Meazza
b22960ffff Associate submodels with parent AI Objects.
Signed-off-by: Vivian Meazza <vivian.meazza@lineone.net>
2010-09-17 21:17:56 +02:00
Vivian Meazza
2758f07df0 Use AIBase method setParentNode() vice the local method.
Signed-off-by: Vivian Meazza <vivian.meazza@lineone.net>
2010-09-17 21:17:56 +02:00
Vivian Meazza
afbc360eed Add callsign for consitency.
Signed-off-by: Vivian Meazza <vivian.meazza@lineone.net>
2010-09-17 21:06:35 +02:00
Vivian Meazza
c7e864cee9 Move methods "setParentNode()" etc. to make them available to all AI Objects.
Signed-off-by: Vivian Meazza <vivian.meazza@lineone.net>
2010-09-17 21:06:35 +02:00
Vivian Meazza
b4fbde72b2 Enable Ballistic objects to be slaved to any AI Object.
Signed-off-by: Vivian Meazza <vivian.meazza@lineone.net>
2010-09-17 21:06:35 +02:00
Csaba Halasz
fdbfd6fd0b Merge commit 'refs/merge-requests/1552' of git@gitorious.org:fg/flightgear into next
Conflicts:

	src/MultiPlayer/multiplaymgr.cxx
2010-09-09 00:48:17 +02:00
James Turner
8a97ed354d Fix submodel code to work with multiple aircraft dirs. 2010-09-06 09:12:25 +01:00
Anders Gidenstam
95a7e177d7 Restored line endings in src/AIModel/AIMultiplayer.cxx.
Please check that the line endings are not messed up before mergeing.
2010-09-02 19:46:44 +02:00
Vivian Meazza
bc12f0be21 Walk the AImodels property tree only once at init, rather than at update. Should have a beneficial effect on frame rate, but in practice makes no discernible improvement. It is cleaner code though.
Signed-off-by: Vivian Meazza <vivian.meazza@lineone.net>
2010-09-02 09:24:45 +01:00
Vivian Meazza
118036cdda Make the parameter isTanker controllable
Signed-off-by: Vivian Meazza <vivian.meazza@lineone.net>
2010-08-30 17:15:34 +01:00
Vivian Meazza
8ca420ec53 Merge branch 'next' of D:\Git_New\flightgear into next 2010-08-30 09:49:42 +01:00
Durk Talsma
467513cbaf Major update to the AI code:
* New features
    - More realistic descent paths
    - Separation during descent and approach
    - ATC approach controller (still silent)
    - inbound traffic flow will start immediately
  * Bug fixes
    - Properly handle vertical speed when on ground
    - Departing aircraft now wait for taxiclerance before moving
    - Traffic manager waits for proper weather initialization
    - Fixed instabilities in the preferential runway usage code
    - Fine tuning of waypoint following code.
2010-08-29 19:25:34 +02:00
Vivian Meazza
9e44be1df7 Merge branch 'next' of D:\Git_New\flightgear into next
Conflicts:
	src/AIModel/AIBallistic.cxx
2010-08-29 00:08:50 +01:00
Vivian Meazza
dff8099994 Major update of Ballistic objects and submodels. Introduce submodels slaved to AI Objects. Remove deprecated code. Try to increase framerate. Use quaternion calculations for Initial Conditions.
Signed-off-by: Vivian Meazza <vivian.meazza@lineone.net>
2010-08-29 00:00:09 +01:00
Frederic Bouvier
52ac173257 Merge commit 'refs/merge-requests/1551' of git://gitorious.org/fg/flightgear into stuartb/modelcallsign 2010-08-21 14:54:08 +02:00
Vivian Meazza
72c5a314e6 Add aubmodels to AI objects
Signed-off-by: Vivian Meazza <vivian.meazza@lineone.net>
2010-08-14 13:39:30 +01:00
Vivian Meazza
d317428257 More tidying
Signed-off-by: Vivian Meazza <vivian.meazza@lineone.net>
2010-08-01 14:50:03 +01:00
Vivian Meazza
6a7ec168e5 Tidy up for commit
Signed-off-by: Vivian Meazza <vivian.meazza@lineone.net>
2010-08-01 10:47:40 +01:00
Vivian Meazza
a61f34667f Merge branch 'work4' into next
Conflicts:
	src/Environment/environment_mgr.cxx

Signed-off-by: Vivian Meazza <vivian.meazza@lineone.net>
2010-07-28 22:39:07 +01:00
Vivian Meazza
adf17287ab Add "expiry" parameter and other changes to implement persistent contrails using Ballistic objects
Signed-off-by: Vivian Meazza <vivian.meazza@lineone.net>
2010-07-28 22:20:50 +01:00
James Turner
d1852430bf Make various implicit includes (via PLIB) explicit. 2010-07-28 10:25:42 +01:00
Durk Talsma
a49d553ea8 Merge branch 'next' of git@gitorious.org:fg/flightgear into next 2010-07-24 09:21:06 +02:00
Durk Talsma
7313b8f1df - Trying to improve waypoint following. 2010-07-24 09:19:37 +02:00
James Turner
900fce6374 Fix issues exposed by PLIB-free SimGear. 2010-07-23 09:41:37 +01:00
Vivian Meazza
6310fdd9c5 Remove range criteria, add sub-submodels to any depth, and add expiry criteria
Signed-off-by: Vivian Meazza <vivian.meazza@lineone.net>
2010-07-16 23:05:05 +01:00
Durk Talsma
74549784b4 Whoops, forgot to add this file. 2010-07-04 21:00:36 +02:00
Durk Talsma
b78bf2e9e6 Make sure that takeoff distance calculations are done in the correct frame of reference. Additionally, add some experimental lead-in distance clipping code (although the latter needs more sophistication, because it leads to a considerable increase of spinning around waypoints when on ground. 2010-07-04 20:57:25 +02:00
Mathias Froehlich
721ae71cd7 Use simgear abstraction instead of directly osg for the AIBase class. 2010-06-16 07:00:18 +02:00
Mathias Froehlich
a565e90c4f Fix an uninitialized value valgrind warning. 2010-05-29 16:31:58 +02:00
Mathias Froehlich
9626805a09 Fix an uninitialized value valgrind warning. 2010-05-29 16:31:05 +02:00
Stuart Buchanan
1a29f4499a Export the AI object callsign on ballistic impact. 2010-05-24 21:16:46 +01:00
Torsten Dreyer
a060fe3acf Stuart Buchanan:
A small patch to allow the user to ignore specific
MP aircraft on a per-MP instance basis by setting
"controls/invisible". This
property name was chosen for consistency with the existing property
for AIBallistic objects.
2010-05-20 21:25:37 +02:00
durk
e004e43553 Expanded ATC communication between AI aircraft and Airport ground control. 2010-05-05 11:59:37 +02:00
Tim Moore
eca715f687 Merge branch 'jmt/track-bug' 2010-04-25 23:04:24 +02:00
Tim Moore
7ff80d11a0 changes for SGPropertyNode::getPath return type
It's now a std::string.
2010-03-09 11:24:45 +01:00
jmt
7523f05047 bug #80, exception flying west from NZAA (Auckland, NZ). The underlying
issue is numerical problems in _wgs84_inverse, triggered by the traffic-manager
testing enormous distances geodetically.

Changes
 - refactor AISchedule::update, so the aircraft approximate position
   calculation is simpler.
 - refactor AIAircraft to no longer use exceptions as a return value mechanism
 - change AISchedule::update to use cartesian math for in-visible-range check
2010-02-21 22:24:42 +01:00
Tim Moore
988a6771aa Merge branch 'durk/atcdcl-cond'
Conflicts:
	src/ATC/trafficcontrol.cxx
	src/Main/Makefile.am
2010-02-10 00:45:06 +01:00
ehofman
8da2f1a31b Use SGPropertyNode_ptr wherever possible 2010-01-17 00:03:06 +01:00
Tim Moore
c1bb4aec97 Merge branch 'vivian/trainz' 2010-01-17 00:02:51 +01:00
durk
8114d1d899 Conditional compilation of ATCDCL module. Use --disable-atcdcl to try building flightgear without ATCDCL code. 2009-12-30 17:44:06 +01:00
Tim Moore
582a95f0cb small cleanup to vivian's patch 2009-12-09 09:23:20 +01:00
Tim Moore
3922c12163 Vivian Meazza: AI escorts 2009-12-09 09:04:23 +01:00
Tim Moore
e503591af4 Merge branch 'jmt/gps'
Conflicts:
	src/Instrumentation/gps.cxx
2009-11-27 06:40:47 +01:00
Tim Moore
d096455b7f Add support for high speed trains. Change update rate to main frame rate, and move framerate-heavy functions to a 20Hz update cycle. Jitter is much reduced, at a small cost to framerate
Signed-off-by: v meazza <vivian.meazza@lineone.net>

Conflicts:

	src/AIModel/AIGroundVehicle.cxx
2009-11-01 00:15:14 +01:00
Tim Moore
3a890859d3 more include SGMath.hxx to keep MSVC happy 2009-10-26 18:40:12 +01:00
v meazza
d974954b5a Fix bug in collision calculations
Signed-off-by: v meazza <vivian.meazza@lineone.net>
2009-10-14 10:40:47 +02:00
v meazza
e91b5a8804 remove debug message
Signed-off-by: v meazza <vivian.meazza@lineone.net>
2009-10-14 10:40:47 +02:00
Tim Moore
919d1625df Merge branch 'stuart/clouds' 2009-10-12 11:04:58 +02:00
jmt
bc7ac3493e Refactor airway code to use SGGeod in external APIs. First of various changes to make airways more useful in GPS/FMS modules. 2009-10-08 10:37:21 +02:00
durk
47a7952f89 Stuart Buchanan:
Improvements to the cloudsystem:
        - A new xml format
        - Texture indexing based on the position of the sprite in the cloud
          mass, allowing more control over the texture set.
        - Improved fog and shading
        - Better sprite distribution
        - A more natural distribution of clouds, so no more obvious grids.
2009-10-04 02:05:08 +02:00
Tim Moore
d59088dc1a Try to improve frame rate and reduce jitter
Signed-off-by: v meazza <vivian.meazza@lineone.net>

Conflicts:

	src/AIModel/AIGroundVehicle.cxx
2009-09-30 08:08:09 +02:00
vmeazza
5c7d8c7b68 Add support for tunnel, y-offset and limit update rate
Signed-off-by: vmeazza <vivian.meazza@lineone.net>
2009-09-18 20:03:38 +02:00
frohlich
d09c0ec8b9 Disable collisions with the MP aircraft again.
Modified Files:
	src/AIModel/AIMultiplayer.cxx
2009-09-12 15:47:52 +02:00
frohlich
cb10d714fd Initialize all members.
Modified Files:
	src/AIModel/AIAircraft.cxx src/AIModel/AIBase.cxx
2009-09-09 08:56:31 +02:00
frohlich
8676c2bbd8 Replace the SGVec*::sg() methods with the equivalent SGVec*::data() calls.
Modified Files:
	src/Traffic/Schedule.cxx src/Sound/fg_fx.cxx src/Main/main.cxx
	src/Instrumentation/navradio.cxx
	src/AIModel/AIFlightPlanCreateCruise.cxx
2009-09-09 08:56:30 +02:00
Tim Moore
acbcf94bde AIGroundVehicle from Vivian Meazza 2009-08-25 12:52:50 +02:00
Tim Moore
d838ef5f40 compilation fixes for gcc -Wall -Werror
Most are cosmetic, but the changes in the FGATCInstruction constructor
fix unitialized members.
2009-08-24 17:13:31 +02:00
torsten
e0b2d43fb4 the warning extinguisher hits again... 2009-08-23 21:43:09 +02:00
frohlich
bb2e5fb2c9 Use the 'all but self' capability of the scenery elevaton code instead of
playing with node masks.

Modified Files:
 	src/AIModel/AIAircraft.cxx src/AIModel/AIBallistic.cxx
 	src/AIModel/AIBase.cxx src/AIModel/AIBase.hxx
 	src/AIModel/AIShip.cxx src/AIModel/AIShip.hxx
	src/AIModel/AIThermal.cxx src/ATCDCL/AILocalTraffic.cxx
2009-08-10 23:31:21 +02:00
Tim Moore
7d6c567fde Refer to property types using props:: namespace
BOOL, FLOAT etc. conflict with typedefs in windows.h.
2009-07-17 14:54:12 +02:00
timoore
4cc3084256 SGPropertyNode::Type moves to simgear::props namespace 2009-07-16 12:10:47 +02:00
Tim Moore
e342d879e8 Radar patch from Vivian 2009-07-12 01:02:58 +02:00
fredb
219be77f1e Suppress warnings 2009-07-02 08:59:16 +02:00
frohlich
33a2e2128f Simplify AI model loading.
Modified Files:
 	AIBallistic.cxx AIBallistic.hxx AIBase.cxx AICarrier.hxx
 	Makefile.am
Removed Files:
	AIModelData.cxx AIModelData.hxx
2009-06-23 10:54:10 +02:00
frohlich
8f501de78c Remove carrier wire and catapult configuration from the scenario file.
This is now included in the model xml file.
So, wires and catapults also work even if they are not loaded by an AICarrier.

Modified Files:
 	AICarrier.cxx AICarrier.hxx
2009-06-23 10:54:10 +02:00
timoore
d30398f2b2 uninitialized variable fix from Vivian Meazza 2009-06-16 11:32:14 +02:00
fredb
97c214e4fc Suppress warnings 2009-06-15 10:29:45 +02:00
jmt
6e42458a55 Convert waypoint::CourseAndDistance users to use SGGeodesy helper functions. 2009-06-11 16:05:20 +02:00
jmt
e1583cb28c Update FGViewer position clients to work with SGGeod directly 2009-06-11 16:05:20 +02:00
fredb
5b93117e2d Functions should always return a value 2009-06-03 00:18:54 +02:00
frohlich
d9c3c6da96 Fix Carriers without catapults and wires.
Modified Files:
	src/AIModel/AICarrier.cxx
2009-05-20 00:00:05 +02:00
fredb
19eab15f8e Remove few warnings 2009-05-18 12:24:17 +02:00
fredb
25c633af3e Functions should always return a value 2009-05-18 12:24:17 +02:00
durk
a4debec122 Removed hardcoded performance data. 2009-05-18 12:24:15 +02:00
Tim Moore
f528fc7154 AICarrier fixes from Vivian 2009-05-04 16:16:00 +02:00
torsten
2fc7f94154 restoring original copyright of David Culp 2009-05-02 00:44:20 +02:00
torsten
7e3531ef5c Implementation of ridge lift from Patrice Poly based on an algorithm of Ian Forster-Lewis 2009-05-02 00:44:20 +02:00
frohlich
58a427fb12 Fix a problem with node traversal masks and paged model loading that
shows up as a non solid carrier under some circumstance.

Modified Files:
	AIBase.cxx AIBase.hxx AIShip.cxx
2009-04-15 23:19:30 +02:00
mfranz
de35bbe4ed assign a unique module name to ai/mp embedded nasal (again): __model%u 2009-04-01 09:23:54 +02:00
durk
c478cdd35f Allow the AI Traffic controller to set a transponder code. This code is
used in ATC chatter, and writted to the property, so it can -in principle-
be picked up by the radar.
2009-04-01 09:23:54 +02:00
frohlich
a99ea1c7b5 Port over remaining Point3D usage to the more type and unit safe SG* classes.
Remove leftover headers from plib/sg.

Modified Files:
 	src/AIModel/AIBase.cxx
 	src/AIModel/AIFlightPlanCreateCruise.cxx
 	src/ATCDCL/AIEntity.cxx src/ATCDCL/AIEntity.hxx
 	src/ATCDCL/AIGAVFRTraffic.cxx src/ATCDCL/AIGAVFRTraffic.hxx
 	src/ATCDCL/AILocalTraffic.cxx src/ATCDCL/AILocalTraffic.hxx
 	src/ATCDCL/AIMgr.cxx src/ATCDCL/ATC.hxx
 	src/ATCDCL/ATCDialog.cxx src/ATCDCL/ATCProjection.cxx
 	src/ATCDCL/ATCProjection.hxx src/ATCDCL/ATCutils.cxx
 	src/ATCDCL/ATCutils.hxx src/ATCDCL/approach.cxx
 	src/ATCDCL/commlist.cxx src/ATCDCL/ground.cxx
	src/ATCDCL/ground.hxx src/ATCDCL/tower.cxx
 	src/ATCDCL/tower.hxx src/Airports/calc_loc.cxx
 	src/Airports/dynamics.cxx src/Airports/groundnetwork.cxx
 	src/Airports/parking.cxx src/Airports/runwayprefs.cxx
 	src/Airports/simple.cxx src/Cockpit/cockpit.cxx
 	src/Cockpit/hud.hxx src/Cockpit/hud_card.cxx
 	src/Cockpit/hud_rwy.cxx src/Environment/environment.cxx
 	src/FDM/UFO.cxx src/FDM/SP/MagicCarpet.cxx src/GUI/dialog.hxx
 	src/Instrumentation/HUD/HUD.hxx
 	src/Instrumentation/HUD/HUD_runway.cxx
 	src/Instrumentation/KLN89/kln89.cxx src/Main/fg_init.cxx
 	src/Main/viewer.cxx src/Main/viewmgr.cxx
 	src/Model/panelnode.cxx src/MultiPlayer/mpmessages.hxx
 	src/Scenery/tilemgr.cxx src/Traffic/SchedFlight.cxx
 	src/Traffic/TrafficMgr.cxx
2009-03-18 08:00:08 +01:00
frohlich
da8b3f9ce5 The simtime alread contains the increment. So do not add that twice.
Modified Files:
	src/AIModel/AIShip.cxx
2009-03-18 08:00:08 +01:00
frohlich
2d1d8120f6 Set the reference time the transform is meant for.
Modified Files:
	src/AIModel/AICarrier.cxx src/AIModel/AIShip.cxx
2009-03-18 08:00:08 +01:00
frohlich
7e73a87882 Improove FGTileMgr::scenery_available for small ranges.
Use SGGeod in FGTileMgr, FGScenery apis.

Modified Files:
	src/AIModel/AIBallistic.cxx src/Main/main.cxx
	src/Scenery/scenery.cxx src/Scenery/scenery.hxx
	src/Scenery/tilemgr.cxx src/Scenery/tilemgr.hxx
	src/Scripting/NasalSys.cxx
2009-03-18 08:00:07 +01:00
durk
9cc92035b1 A set of additions related to allow the use of SID and STAR procedures.
The current code still has some rough edges, in particular memory still
needs to be deallocated where possible, and the actual use of the code
needs more testing. This code has been running without noticable problems,
so I think it's ready for some wider exposure. Detailed changes include:
- Finetuning of the SID/STAR data concept.
- Preloading of all SIDs, from one xml file.
- ATC determines which SID should be used and echoes this over the com1 or
  com2 radio.
2009-03-11 23:14:34 +01:00
frohlich
82b54e7a25 Avoid SGLocation usage.
Modified Files:
	configure.ac src/AIModel/AIBase.cxx
	src/ATCDCL/AILocalTraffic.cxx src/FDM/Makefile.am
	src/FDM/flight.hxx src/FDM/LaRCsim/LaRCsim.cxx
	src/Main/Makefile.am src/Main/fg_init.cxx src/Main/main.cxx
	src/Main/viewer.cxx src/Main/viewer.hxx
	src/Scenery/tilemgr.cxx src/Scenery/tilemgr.hxx
2009-03-11 23:14:34 +01:00
frohlich
6b72986b27 Use api's with objects instead of scalars.
Modified Files:
	src/AIModel/AIAircraft.cxx
2009-03-11 23:14:33 +01:00
frohlich
3afc7e0690 Move the velocity computations for aimodels into AIShip.
You should now be able to step on any ship with your model.

Modified Files:
	src/AIModel/AICarrier.cxx src/AIModel/AIShip.cxx
	src/AIModel/AIShip.hxx
2009-03-05 10:52:03 +01:00
frohlich
1708e43a39 Make initial use of the boundingvolumes for the ground cache.
Modified Files:
	src/AIModel/AICarrier.cxx src/AIModel/AICarrier.hxx
	src/FDM/flight.hxx src/FDM/groundcache.cxx
	src/FDM/groundcache.hxx
2009-03-05 10:52:03 +01:00
durk
321706a007 Remove stray debug statement. 2009-03-05 10:52:03 +01:00
durk
c7e9c7a610 Some initial code for AI Aircraft making use of SIDs. Current code is a bit
experimental: Only one SID per runway is supported, and the waypoints are
read from file at every request, which is not very efficient. The current
code is only executed when FlightGear is configured to use airport dynamics
data from the scenery repository, instead of the base package. Since the
latter is still the default, I believe that this will provide enough safe-
guarding to commit SID/STAR support in small, incremental steps.
Next step will be buffering and support for multiple departure routes per
runway.
2009-03-05 10:52:03 +01:00
durk
d24fe19914 One step further toward better integration of AI and ATC systems.
* Changed the runway XX. ATC message to actually report the real
   designated departure runway
 * In case of multiple active runways, select the one with a heading that is
   closest to the direction of the ultimate departure destination / lines up
   with the arrival path.
2009-02-16 00:56:44 +01:00
mfranz
4b5353d396 make default model configurable (default: Models/Geometry/glider.ac)
This allows to set Models/Geometry/null.ac or something that doesn't
look bad in multiplayer for both fast and slow speeds, for example
the harrier.
2009-02-04 23:51:22 +01:00
fredb
41a8ae42f5 Allow the search of header files in the current directory 2009-02-02 00:58:00 +01:00
durk
9a19c238a9 And some more cleanup. 2009-02-02 00:58:00 +01:00
durk
c6f88e5b9b Development for two new features:
* Some support for geometry information provided by the custom scenery
   project. Current support is for AI groundnets and runway use files only
   since this is a switch that involves a lot of data verification and
   updating, during the transistion the actual path where the data can be
   read from is user configurable. setting the property

   /sim/traffic-manager/use-custom-scenery-data to true

  will cause flightgear to read the ground networks from the scenery
  directory (--{fg-scenery}/Airports/[I]/[C]/[A]/[ICAO].groundnet.xml to be
  precise). Setting this property to false will retain the original
  behvior.
* For departing aircraft, runway takeoff calculations will be done on the
  basis of the performance database. For testing purposes, a performance
 estimate for a heavy jet has been added.
2009-02-01 23:44:10 +01:00
Tim Moore
9bb896dd20 Merge branch 'maint' into next 2009-01-18 23:22:06 +01:00
timoore
51b686a796 Division by zero fixes from Vivian Meazza. 2009-01-18 23:17:23 +01:00