1
0
Fork 0
Commit graph

8338 commits

Author SHA1 Message Date
ThorstenB
395c317627 ATCVoice: support multiple voice files
so we can split ATIS voice files into separate files, i.e. for airport
names and phraseology, so we don't need to regenerate airport names when
extending/changing phraseology. Also allows to add custom airport names.
Enable switching voice files at run-time (different airports could have
different voices...).
2012-10-13 15:45:15 +02:00
ThorstenB
9bb9a78249 Stash properties 2012-10-13 15:45:15 +02:00
Thomas Geymayer
78b5dfb58b Expose SGPropertyNode::addChild to Nasal 2012-10-13 15:13:56 +02:00
Anders Gidenstam
a44acfa875 merge-requests/1566: Adjust indentation. 2012-10-12 23:48:09 +02:00
Vivian Meazza
bbea07e8b1 Bugfix: correct calculation of range and realtive bearing when parent is not the main model.
Signed-off-by: Vivian Meazza <vivian.meazza@lineone.net>
2012-10-12 23:45:56 +02:00
ThorstenB
b838691f50 #897: float vs double precision issues (frequency dialog not always working)
puObject only provides float, not double, which causes precision/rounding
issues with some numerical values (try "114.2").
Work around: obtain string value, and manually convert with proper double
precision.
2012-10-10 20:28:17 +02:00
James Turner
607e7d7bf3 Use an SGGeod inside FGAIFlightPlan::Waypoint.
This allows incremental refactoring to move away from discrete lat/lon use in favour of SGGeod.
2012-10-08 15:52:06 +01:00
Mathias Froehlich
fd23f5dee5 hla: Fix velocity units. 2012-10-07 22:23:04 +02:00
ThorstenB
ccb890447a Improve gyro heading indicator failure simulation
Error/offset induced by precession and yaw also depend on spin (no spin =>
no additional error/offset).
Error/offset induced by changing a/c orientation while gyro spin is
low (<<1) should apply to the "offset" (instead of "error") property.
2012-10-07 20:47:50 +02:00
James Turner
4994973ef4 Separate instruments from cockpit displays. 2012-10-05 18:13:50 +01:00
James Turner
7d547d1287 Make traffic take-off roll look a little better.
Expand the performance DB logic to support aliases, and select based on aircraft type as well as class. This allows to introduce some variation into AI traffic performance. Change the initial climb-out waypoints to use pitch-hold until passing 3000', which looks much more convincing
2012-10-05 18:12:46 +01:00
James Turner
1e5bd162e7 Use a helper thread to init the traffic-manager.
Make traffic manager startup asynchronous, but also avoid frame-stutter due to file parsing on the main thread. Note only XML parsing happens on a thread - once that's complete, everything happens as normal on the main thread, as before.
2012-10-05 09:33:04 +01:00
ThorstenB
2bdcde5a4b Split ATIS generator into smaller, more readable methods. 2012-10-05 00:22:02 +02:00
ThorstenB
575f576aa9 Revive master sound enable switch. 2012-10-05 00:17:28 +02:00
ThorstenB
109d04b605 Fix ATIS output.
Need to call inherited update to control volume and enable/disable
depending on sound ATC switch.
2012-10-05 00:07:40 +02:00
ThorstenB
06a8a9c536 Fix Linux build: "malloc" needs stdlib.h 2012-10-04 21:14:48 +02:00
Mathias Froehlich
74f07982bd Provide reader writer options to the effects. 2012-10-03 22:03:25 +02:00
James Turner
5eb2f74e99 Run the filters for comm/navaids as required.
Apparently most filters are only filtering on type - we weren't running the filter body for navaid or comm-station lookups, causing weird ATIS bugs. Ensure that we actually run the filter at the point we have an FGPositioned* result.
2012-10-01 13:06:28 +01:00
James Turner
bcea720db3 Make the sound-manager optional in a few places. 2012-10-01 10:10:34 +01:00
James Turner
21d50b11f5 Make FGVoicePlayer.hxx not require sample_openal.hxx 2012-09-30 20:23:13 +01:00
James Turner
7b8804bd40 Tolerate refactored SGSound headers.
An upcoming commit will make the sound headers standalone, and no longer include various other headers / using std:: declarations. Prepare for this by making includes and usage of namespaces explicit.
2012-09-30 19:40:08 +01:00
James Turner
8608a48073 Initial work on dynamic subsystem creation.
Make subsystems create-able and removable from commands. Only some subsystems are supported so far, since many have non-default constructors or other complexities.

With this, change, it's possible to dynamically add and remove the traffic-manager at runtime, for example: fgcommand("add-subsystem", props.Node.new({ "subsystem": "traffic-manager", "name":"traffic-manager", "do-bind-init":1}));
2012-09-30 16:34:51 +01:00
James Turner
3b6c2c426d Support a --no-default-config option.
For (future) easier testing of the sim, support a mode where only explicitly named config / option files are loaded, instead of the default ones. (Including, for example, preferences.xml). This currently produces a non-functional sim, but will soon be more useful :)

No behaviour should change unless you try the new option.
2012-09-29 19:02:03 +01:00
Thomas Geymayer
f462dfdfac Canvas: default fill-rule to evenodd and make it configurable 2012-09-29 19:54:31 +02:00
James Turner
cd7a02ca69 Make FGControls behave like normal subsystem.
FGControls create/init/bind order was incorrect, causing initial property tree state to get over-written. Restructure the code so bind() sees correct values.
2012-09-28 15:32:31 +01:00
Thomas Geymayer
65f2881770 Fix finding ATIS CommStation 2012-09-27 17:03:14 +02:00
James Turner
8c80824dbd Tweak init order of controls/input. 2012-09-27 15:33:12 +01:00
James Turner
fe3a1424eb Restore the fdm-init check to splash-screen logic.
Guessing this is the cause of the splash-screen coming down early in some cases. Adding this back to confirm or deny that guess.
2012-09-27 15:15:02 +01:00
Thomas Geymayer
37d0c19f7c Canvas: Make path destroying more robust 2012-09-27 14:41:00 +02:00
Thomas Geymayer
5ac3de21e3 Fix some CommStation bugs
- kHz/mHz conversion needs factor 1000 not 100
 - Correctly read name for CommStations from NavCache
 - Fix parsing CommStation names from apt.dat (Name
   can contain spaces)
2012-09-27 12:21:22 +02:00
James Turner
682d78301e #793 - invalid data on final FP leg.
The Flight-plan leg data computation was omitting certain data for the final waypoint, which in turn made some of the route-manager data bogus when flying the final leg. Fill in some sensible values which we can compute.
2012-09-27 09:27:48 +01:00
Thomas Geymayer
f00bcad479 Fix ATIS /environment/attention handling
Using a tied property works only for one single usage of the
property. In reality FGATIS is normally instantiated four
times (nav/comm/1/2) where only the first instantiation
works correctly. All subsequent instantions fail to tie
and show some error messages.
Also tied properties shouldn't be used anymore.
2012-09-27 00:42:06 +02:00
James Turner
8e3314a7ec Make the radio interpolation tables static.
No need to read these again for each navradio - and the marker beacon doesn't use them at all.
2012-09-26 23:10:37 +01:00
Thomas Geymayer
b8b4fb00f8 Canvas: On z-index change move element always to last position of elements with same z-index 2012-09-26 23:52:43 +02:00
James Turner
0f927d5766 Part of bug 885
Allow the route-manager to be explicitly de-activated.
2012-09-26 22:43:19 +01:00
Frederic Bouvier
ba8190d97f Close Sqlite3 database *before* trying to delete the file. Will avoid a segfault when the schema is out of date 2012-09-26 22:34:48 +02:00
Thomas Geymayer
3b10fc5f3e Canvas: Support z-index inside Groups/Maps 2012-09-26 18:09:06 +02:00
James Turner
872e84d827 Make HUD items private to the subsystem.
Make the HUD independent of the instrument manager, and push most of the declarations from the header into a private header.
2012-09-26 17:02:11 +01:00
James Turner
1be2aa558f Quieten down autopilot creation log. 2012-09-26 16:25:43 +01:00
James Turner
a67d8e1983 All FPU control happens in bootstrap.cxx
Remove some platform includes which don't belong in main.cxx
2012-09-26 16:25:18 +01:00
James Turner
ebf3a0793d Tolerate the lack of a GUI in some places. 2012-09-26 13:39:38 +01:00
James Turner
b5820a4e90 Fix string-id for message translation. 2012-09-26 13:38:26 +01:00
James Turner
3d4806adbe Remove dead file. 2012-09-26 13:37:31 +01:00
Thomas Geymayer
703bb9bbf3 Retrieve property node once instead of using fgGetXXX 2012-09-26 12:18:47 +02:00
Thomas Geymayer
2f630e502d Let fgGetLong actually return long instead of int 2012-09-25 23:24:29 +02:00
Thomas Geymayer
6dd4782254 Canvas: Proper fix for OpenVG init handling.
- Redraw all canvases in the frame OpenVG is initialized.
   Otherwise if multiple canvases are created in the same frame
   only one of them would get correctly updated.
2012-09-25 23:24:29 +02:00
ThorstenB
dac8706e2e Move GUI init code to gui module. 2012-09-25 22:39:13 +02:00
ThorstenB
e5b81a8bb6 Minor pointer safety and compiler warning issues. 2012-09-25 22:10:06 +02:00
Thomas Geymayer
16d73f4012 Canvas: Redraw if OpenVG has been initialized.
If OpenVG/ShivaVG is initialized nothing is drawn in the same
frame, therefore we need to draw another frame to ensure all
paths are rendered correctly.
2012-09-25 21:34:58 +02:00
James Turner
a10638c6b4 Use a helper thread to rebuild the navcache.
Avoid the application becoming unresponsive during nav-cache rebuilds. We still have to wait for the rebuild, but perform it on a helper thread so the main GUI thread stays responsive and hence doesn't trigger a beach-ball / 'not responding' alert. Also ensures there's some feedback (the spinner) during the rebuild operation, so users don't think we've hung.
2012-09-25 17:24:12 +01:00
James Turner
ae6218ff10 Restore named JS/input configs (overrides)
Thanks to jano for pointing out I'd broken this feature!
2012-09-25 14:20:18 +01:00
James Turner
8050f39089 Fix linux build, needs explicit <cstring> 2012-09-25 10:29:32 +01:00
James Turner
9426928cdf Fix a typo. 2012-09-25 10:07:11 +01:00
James Turner
649d579124 Helpers to access view position.
Avoid direct use of FGViewer in various places, by providing property-based accessors to the current view position.
2012-09-25 10:06:56 +01:00
James Turner
4456f42e67 Make the view-manager and sound-manager independent.
Use properties to pass current-view information to the sound-manager, so there is no hard-coded dependency between the subsystems.
2012-09-25 09:17:00 +01:00
James Turner
4ea5a0c31d Whoops, parking refactoring changed the positioned types.
Force a nav-cache rebuild to accommodate the renumbered types.
2012-09-25 09:15:36 +01:00
James Turner
2f6172687e Make FGControls behave like a standard subsystem. 2012-09-25 00:48:48 +01:00
James Turner
b1ff365a8f Make FGTaxiNode and FGParking inherit FGPositioned.
In preparation for caching the groundnet in the NavCache, make taxi-nodes and parkings inherit from FGPositioned. As part of this, make them heap (as opposed to value) classes, disable their copy-constructors, remove many mutating operations, and give them real constructors.
2012-09-25 00:31:17 +01:00
ThorstenB
a2cfef95fb Minor tile manager clean-up.
The tilemgr schedules scenery, so it should also trigger the
"sceneryloaded" signals once it's done.
2012-09-24 23:42:25 +02:00
James Turner
fd99e9fdfb std namespace fixes in headers. 2012-09-24 08:39:30 +01:00
James Turner
59f6f330c2 Defer SGEphemeris creation until ::init()
Trying to make subsystem *creation* cheap - major work such as IO should be deferred until init() where possible.
2012-09-24 00:37:46 +01:00
James Turner
fb266722ba Parking: another segfault edge-case.
Again, when there's no parking/ground-net, tolerate this.
2012-09-24 00:36:47 +01:00
James Turner
6c6452c62b Adapt to revised SGTime API
Convert SGTime users to pass SGGeod/SGPath instead of raw values.
2012-09-24 00:03:23 +01:00
James Turner
66a6438de1 Avoid a segfault-on-null
This code is called both when there's no ground-net, but also when there's no parking data at all.
2012-09-23 23:07:00 +01:00
James Turner
b1854459b3 Clean up dynamics/parking handing code.
Refactor some parking / airport-dynamics APIs, in preparation for caching the ground cache data in the nav-cache.
2012-09-23 21:42:40 +01:00
James Turner
01be5529ba Commands to bind metar to the property tree.
New commands request-metar and clear-metar will bind metar reports to an arbitrary property tree path. E.g:

fgcommand("request-metar", var n = props.Node.new({ "path": "/foo/mymetar", "station":"LOWI"}));
2012-09-23 16:55:29 +01:00
Thomas Geymayer
efe978e679 Canvas: Fix detection if something has changed
- Reset dirty flag for redrawing canvas properly after
   rendering has complted.
 - Update path properly if path elements have been removed.
2012-09-23 17:31:12 +02:00
ThorstenB
293d6b3565 Fix compilation with enabled EVENT_INPUT
Need to move the definition to the toplevel cmake file, since sources
are no longer compiled on directory level (individual libs per dir).
2012-09-22 14:23:15 +02:00
ThorstenB
0f3fecf0c6 Fix NavDisplay segfault
When "addSymbolInstance" returns NULL, we cannot update "ins->endPos".
2012-09-22 14:23:15 +02:00
ThorstenB
acb7fb8e95 Fix shared library build with sqlite
Dependency to threading lib is required (It is already provided for
static SimGear).
2012-09-22 14:23:14 +02:00
Thomas Geymayer
0f850312ea Canvas: Support for pseudo non-zero fillrule 2012-09-21 22:03:58 +02:00
Thomas Geymayer
4a94071ed7 Canvas: Performance improvements.
- Only render the canvas if something has actually changed
   (Currently checked by looking for modified properties).
 - Only write bounding box to property tree if it has been
   recalculated (until now this happened every frame).
2012-09-21 22:03:58 +02:00
ThorstenB
88592bfe71 splash screen: use language resource for translation
Also pimp the progress spinner.
2012-09-21 19:36:25 +02:00
ThorstenB
db3c70e235 Improve readability. 2012-09-21 16:44:16 +02:00
ThorstenB
002cada172 gyro heading indicator: realism when spin is low
Low spin or switched off gyros result in the indicator being stuck.
When the gyros are repowered, the indication doesn't jump to the correct
indication, but keeps the current error.
2012-09-21 15:59:04 +02:00
ThorstenB
2003e7cf2a Avoid compiler warning. 2012-09-21 15:36:52 +02:00
ThorstenB
9d08cfc24a Sound Manager: support subsystem reinit
instead of using property listener.
Also moved run-time init to standard init phase.
2012-09-21 15:33:13 +02:00
ThorstenB
05e9172220 Avoid AL warning messages when using "--show-sound-devices". 2012-09-21 15:33:13 +02:00
ThorstenB
9968888e45 FGProps: improve error messages
Lowlevel "simgear:NetChannel" only returns status infos, but doesn't
output log messages itself.
2012-09-21 15:33:13 +02:00
James Turner
d7d19649aa Fix a stupid logic bug when re-ordering waypoints.
http://code.google.com/p/flightgear-bugs/issues/detail?id=870
2012-09-21 12:47:51 +01:00
James Turner
d56ac505c4 Linux needs explicit <cstring> include. 2012-09-21 11:34:28 +01:00
James Turner
6e7ac46751 Cached joystick config loading.
Avoid parsing all the joystick configs every launch.
2012-09-21 10:17:16 +01:00
James Turner
666a68c742 Lazy GUI dialog loading, for slightly faster startup. 2012-09-21 10:16:44 +01:00
Thomas Geymayer
f0927fc06d Canvas: Change default fill-rule to nonzero 2012-09-21 00:42:21 +02:00
Stuart Buchanan
a3a40af860 Simplify code for taxiways. 2012-09-20 21:53:31 +01:00
Stuart Buchanan
ac1fc699b7 Expose surface types and taxiways via the airportinfo() Nasal call. 2012-09-19 22:33:43 +01:00
ThorstenB
f8b689c040 Allow instruments/systems to reset on sim reset
so they can instantly adjust to the changed environment.
(Not fully working yet, since some environment settings, like environemnt
pressure/temperature, still changes slowly after a sim reset - instead of
immediately jumping to the new setting. Also, METAR sometimes arrives too
late...).
2012-09-19 20:57:52 +02:00
ThorstenB
a68716316f Adjust subsystem order (instruments vs systems)
"instruments" depend on "systems" (pitot/static pressure etc), so
"systems" should be there first.
2012-09-19 20:53:54 +02:00
ThorstenB
f6207d5cb8 Minor renaming issue. 2012-09-19 20:52:36 +02:00
James Turner
3cf7715485 Expose the route-path of leg to Nasal.
In advance of converting the Map and NavDisplay to use the canvas, expose the full route-path vector for each flight plan leg, as a vector on the leg. Use leg.path() to get this.

E.g.:

var fp = flightplan();
for (var i=0; i<fp.getPlanSize(); i += 1)
{
  var leg = fp.getWP(i);
  debug.dump(leg.path());
}
2012-09-19 18:40:34 +01:00
James Turner
029012b8b9 Kill off some globals.
Break some subsystem dependencies, by explicitly using properties to read the primary position, orientation and velocities. (Instead of directly accessing the primary model placement). This means a couple more globals can die.
2012-09-19 18:17:44 +01:00
James Turner
32248bf576 Support string-list properties in the cache.
Not used yet, but will aid in caching joystick and dialog configs.
2012-09-19 18:15:49 +01:00
James Turner
c9351e0185 Whoops, some code got re-introduced.
Merging/rebase the navcache re-added this code to fg_init.cxx, remove it again.
2012-09-19 15:56:23 +01:00
James Turner
f7878cfd4d Fix a Clang warning in Shiva. 2012-09-19 15:55:49 +01:00
James Turner
50c61b4211 Allow use of the system's SQLite3 library.
Keep distro packagers happy by having the option to use the system's sqlite library instead of our bundled version. Set SYSTEM_SQLITE=1 when running cmake to use the system one.
2012-09-19 14:28:25 +01:00
James Turner
9b900e9430 Implement a persistent cache for navigation data.
Cache the parsed navigation and airport data in a binary file to reduce
startup times and memory consumption (since only referenced FGPositioned
elements are held in memory).

Data will be reimported when the mod-time of any input file is changed.
If a global file is changed (nav.dat, awy.dat, apt.dat, etc), the cache
will be completely rebuilt, which takes approximately 30 seconds on
moderate hardware. (Future work may reduce this).
2012-09-19 11:38:19 +01:00
James Turner
48c26079e1 Fix classes derived from SubsystemGroup.
Various classes derive from SubsystemGroup, but extend the init behaviour. Fix those for the incremental init scheme, generally by forcing their init to be atomic. Can convert them to be truly incremental in the future if it's needed, but probably not.
2012-09-19 11:37:19 +01:00
Thomas Geymayer
09ac319e87 Canvas: Don't crash on removing child hierarchie from map
Currently if a SGPropertyNode is removed from the property tree
only for this single node a childRemoved event is triggered. So
if we just check for a specific child to be removed, we will never
be notified. This commit manually triggers the event recursively
for all children but this should probably go directly into simgear.
2012-09-18 23:21:50 +02:00
James Turner
ffbb0a0e5d Sink position-init code into its own file.
Separate other init functions from position init, since they are unrelated, and made fg_init.cxx very complex. Next step will be brining some sanity to the position init logic :)
2012-09-18 20:50:28 +01:00
James Turner
e2eea405a3 Make subsystem init incremental.
(Requires latest SimGear!)

Break fgInitSubsystems into several phases - subsystem creation, then binding and then init. Run init over multiple main-loop iterations so the application stays responsive to GUI/OS events during init. 

There should be no behaviour changes due to this, except that during init Windows and OS-X should no longer show the beach ball / 'application not responding feedback', hopefully.
2012-09-18 20:29:36 +01:00
Stuart Buchanan
9d30d622ae Expose the shader language version, to help diagnostics. 2012-09-18 15:48:06 +01:00
James Turner
39307d335c Avoid an 'overloaded-virtual' warning.
Clang reports an overloaded-virtual in FGGeneric (and it's correct). Rename the overload to avoid both the warning and confusion.
2012-09-18 00:59:36 +01:00
James Turner
505796e349 Make magavr a regular subsystem.
Remove various hacks and make magvar work like a normal subsystem, as part of the environment manager. Fix the remaining users of the globals->get_mag accessor, and hence kill off the global pointer.
2012-09-18 00:58:27 +01:00
Thomas Geymayer
9f5790c843 Canvas: Use seperate projection instance for each map 2012-09-18 00:33:36 +02:00
ThorstenB
01376eec31 Minor main loop/init clean-up 2012-09-17 13:45:31 +02:00
ThorstenB
fa0a7f8700 Avoid compiler warnings. 2012-09-17 13:45:31 +02:00
ThorstenB
06170ddaae Handle scenery-override in a single place only. 2012-09-17 13:45:31 +02:00
ThorstenB
7415696492 Create FGSoundManager as a wrapper for SGSoundMgr_OpenAl
and sink all sound related code from main.cxx in there.
2012-09-17 13:45:31 +02:00
ThorstenB
043128c7c0 Prepare and implement reinit methods for instruments
to clear error conditions, drifts, offsets etc
2012-09-17 13:45:30 +02:00
Mathias Froehlich
65a5f6744f cmake: Make rti/hla compile again. 2012-09-16 21:16:57 +02:00
Frederic Bouvier
db53e4c0b8 Sort fgfs source files in IDE folders 2012-09-16 19:26:53 +02:00
ThorstenB
f675d51c29 Correct ATIS pressure phraseology
Unit is spoken for all values <1000hPa (to avoid confusion with inHg).
Unit is not spoken for values >=1000hPa (but don't drop highest digit).
(And we should replace "millibars" with "hectopascal" - we're missing the
necessary voice sample though.)
2012-09-16 14:21:11 +02:00
Thomas Geymayer
0554d987e8 property-interpolate: support using rate instead of time.
- property-interpolate now supports specifying the
   interpolation time by passing rate instead of the actual time,
   similar to max-rate-of-change in the noise-spike filter.
2012-09-06 14:05:57 +02:00
ThorstenB
1dbc2c83e5 Minor error message improvement. 2012-09-05 00:00:25 +02:00
ThorstenB
6745d27691 #858: Fix loading issue with aircraft models in "--fg-aircraft" directories
Something after FG 2.8.0 has broken loading aircraft models from
--fg-aircraft directories. Issue is fixed by resolving the aircraft path
in FGAircraftModel (though this module itself hasn't changed and things
were working before...).
2012-09-04 23:57:25 +02:00
Frederic Bouvier
024ef128e3 Better fix for a compilation problem with MSVC 2012 2012-09-03 19:09:35 +02:00
Frederic Bouvier
ace6f4173f Revert "Fix compilation problem with MSVC 2012"
This reverts commit 85ae0697ee.
2012-09-03 19:08:06 +02:00
Frederic Bouvier
85ae0697ee Fix compilation problem with MSVC 2012 2012-09-03 17:33:20 +02:00
Thomas Geymayer
7463ebad1d Canvas: Only use cull callback if it's still valid 2012-09-01 16:50:21 +02:00
Mathias Froehlich
26664aaff0 Push SGMaterial use into these classes that need it. 2012-08-29 06:29:29 +02:00
Mathias Froehlich
7e97a4c693 Fix compile of simgear headless past bvh rework. 2012-08-27 17:58:25 +02:00
Stuart Buchanan
5c78970663 Stop the property tree from keeping a shadow of the deleted input properties, as it can mean that the array of bindings ends up with some incorrect name tags if the set of joystick config files changes and a given js-named entry shifts in the array. This can then result in incorrect bindings being selected. 2012-08-25 22:23:55 +01:00
Mathias Froehlich
e3ad3d3a07 bvh: Adapt to upstream bvh changes in simgear. 2012-08-24 21:24:12 +02:00
Stuart Buchanan
cce186a57c Add properties for raw axis and button values, for use
in joystick configuration function.  Also rationalize references to
/sim/fg-home into a global property.
2012-08-23 21:52:30 +01:00
Thomas Geymayer
ced478cf95 Canvas: CSS like property value inheritance.
- Groups store property nodes for different styles and pass them
   to child elements on creation (No dynamic updates yet)
 - Use StyleSetter map instead of loads of if/else if statements
   for setting element styles.
 - Unify element style properties (Only use one property, instead
   of multiple like it has been with colors)
 - Fix: Create only one element per property node (Was two)
2012-08-23 20:00:13 +02:00
James Turner
8a087582bc Whoops, case-sensitivity matters on Linux. 2012-08-22 00:53:48 +01:00
James Turner
588eba658a Make some include dependencies explicit. 2012-08-22 00:07:53 +01:00
James Turner
45d2e693ee Fix a crash encountered with ATC.
This might need to be back-ported to 2.8 (to make a 2.8.1), unless it's been exposed by some of my other changes. Which I think is unlikely but not impossible.
2012-08-21 18:12:25 +01:00
James Turner
7fabeed85d Fix some places relying on public 'using std::string' in SimGear
(Otherwise my next SimGear commit will break them)
2012-08-21 17:07:47 +01:00
James Turner
688d76613e Expose SGCondition as a ghost to Nasal directly. 2012-08-19 21:13:31 +01:00
ThorstenB
59fe04f8e9 Make web browser app configurable through CMake (for Linux)
so package builders don't need local patches.
Also, instead of hardcoded firefox, use "xdg-open" or "sensible-browser"
launchers on Linux, to auto-detect user's preferred browser.
Override with cmake switch -DWEB_BROWSER=...
(Not affecting Mac/Win which are hard-coded anyway).
2012-08-18 14:11:31 +02:00
ThorstenB
a3e76909ee Christoph Korn/PlayDeb.net: fix typos 2012-08-17 23:51:30 +02:00
Thomas Geymayer
ec73c62da5 Canvas: Fix stupid off-by-one error 2012-08-13 20:29:08 +02:00
Thomas Geymayer
875b59952b Canvas: Bugfixes
- Fix dependency cycle
 - Correctly forward mouse release event
2012-08-13 14:11:26 +02:00
Thomas Geymayer
624522b426 Canvas: Don't crash if texture not available 2012-08-12 20:23:31 +02:00
Frederic Bouvier
e6cb846ad3 Don't let the cloud alpha value change the lighting buffer 2012-08-12 19:06:41 +02:00
Thomas Geymayer
948d87e561 Canvas: Basic support for window stacking 2012-08-11 23:38:04 +02:00
Frederic Bouvier
b7b4553db6 Add forgotten uniforms to the display stage (Rembrandt) 2012-08-11 12:19:44 +02:00
Thomas Geymayer
544784ca85 Canvas: Forward mouse events to elements.
- Use bounding box intersections to determine which element is
   hit.
 - Transform mouse coordinates to local coordinates.
 - Try to get osgText bounding box correct (or at least better)
2012-08-10 13:11:06 +02:00
Thomas Geymayer
288e7fa5ca Canvas: default image element dimensions to texture size 2012-08-09 21:58:55 +02:00
Thomas Geymayer
83bbd9e45c Canvas: Image/Window unifying and allow using canvas inside canvas.
- Refactor and unify common functionality of canvas::Window and
   canvas::Image
 - Make canvas::Image actually work
 - Allow using canvases inside canvas::Image
   * Use new canvas:// "protocol" to allow using canvases in
     place of images
 - Prepare for categorizing canvases:
   * Move canvases to /canvas/by-index
   * Later support linking to other nodes in subbranches of
     /canvas
2012-08-09 16:13:38 +02:00
Thomas Geymayer
350d508324 Clean up
- Replace deprecated boost::shared_static_cast with
   boost::static_pointer_cast
 - Use boost::ends_with in favor of own implementation.
2012-08-09 13:22:48 +02:00
James Turner
310ddbf8c5 Initial work on Image element for Canvas. 2012-08-05 22:43:01 +01:00
James Turner
4593c3521f Fix a crash with the native menubar.
http://code.google.com/p/flightgear-bugs/issues/detail?id=821
2012-08-05 21:30:15 +01:00
James Turner
bd0a5d825d Cocoa clipboard implementation.
Fix OS-X build by supplying a Cocoa clipboard implementation.
2012-08-05 21:00:05 +01:00
Thomas Geymayer
052d578483 Canvas: Fully remove Window drawable if destroyed 2012-08-05 18:06:56 +02:00
Thomas Geymayer
d6a5a911bc Complete X11 clipboard support.
- Now ClipboarX11 also supports writing to the clipboard and
   sending the data to another application if requested.
2012-08-05 11:19:24 +02:00
Thomas Geymayer
aa9d0e3a8a Basic clipboard access from Nasal.
- Add platform independent clipboard layer for Nasal access
   to clipboard (thanks to Hooray for basic code)
 - Add Windows clipboard access
 - Add partial X11 clipboard access (only reading from clipboard)
 - Add fallback clipboard for application internal clipboard if
   platform not supported
 - Add some helper functions to FGNasalSys
2012-08-04 17:33:48 +02:00
Tim Moore
6110139197 Merge branch 'timoore/optimization' into next 2012-08-03 20:20:01 +02:00
Tim Moore
f2762d0be7 use DeletionManager 2012-08-03 20:18:11 +02:00
James Turner
f94b2d127b Avoid a naming clash on 'canvas' 2012-08-03 10:21:26 +01:00
Frederic Bouvier
c3de8851f8 Fix incorrectly hardcoded effect in last Rembrandt stage 2012-08-02 23:00:20 +02:00
James Turner
f703882ffa Skeleton Nasal-Canvas integration.
This code is non-functional, but contains most of the stubs to show what's required to add property get/set access, convert to from ghost & C++ types, and manage ownership. Element derived classes & inheritance (e.g., methods on image/path/map elements) will follow, along with some actual functionality!
2012-08-02 12:18:38 +01:00
Frederic Bouvier
64a8924035 Add some predefined uniforms to Rembrandt stages 2012-08-01 22:42:00 +02:00
Thomas Geymayer
e980178213 Canvas: Fix warning and rename file. 2012-08-01 10:57:15 +02:00
Frederic Bouvier
766014883c Fix Win32 build - No GLUT please \! 2012-08-01 08:53:40 +02:00
Thomas Geymayer
8a6a234653 Canvas: First version of new Canvas GUI system.
- Refactor CanvasMgr into PropertyBasedMgr to be also used
   for the Canvas GUI system.
 - Get rid of tied properties in the Canvas system.
 - Add new placement type 'window' for placing canvases onto
   windows
 - Pass mouse events to Window class (only if cursor is over
   window)
 - Refactor canvas placement clean up
2012-07-31 23:19:23 +02:00
Thomas Geymayer
5f08e10c0a Canvas: Support for text selection.
- Expose nearest hit for text/character selection
 - Fix culling
2012-07-31 23:19:23 +02:00
Thomas Geymayer
91c3f63110 Canvas: UTF-8 support and more settings exposed.
- Allow hiding objects
 - Use UTF-8 encoding for text elements
 - Add paramter max-width to text elements
 - Support stroke-linecap for path elements
 - Fix mouse coords
 - Set better mipmap filter
2012-07-31 23:19:23 +02:00
Thomas Geymayer
e81db175f4 Canvas: Add new element type map for geo mapping.
- The new map element automatically transforms geo coordinates
   (lat, lon) to the according screen coordinates.
 - Currently one type of projection is supported
   (Sanson-Flamsteed projection)
2012-07-31 23:19:23 +02:00
Thomas Geymayer
a876ff93e1 NasalPositioned: Expose actual postion of parkings 2012-07-31 23:19:22 +02:00
Thomas Geymayer
373d511c69 Canvas: Allow using canvases as PUI widgets.
- Add new widget type canvas
 - Set canvas view dimension from the gui xml.
 - Expose mouse events to canvas widget properties.
2012-07-31 23:19:22 +02:00
James Turner
36fe51c7f0 Add property to disable native menu on Mac. 2012-07-30 17:05:01 +01:00
Mathias Froehlich
86e61cfd78 autopilot: Introduce virtual dtor.
Introduce a virtual destructor to make deleting
FunctorBase instances ComponentForge::~ComponentForge
work reliable.
2012-07-29 17:59:38 +02:00
Mathias Froehlich
a131589a6c hla: Convert to the new callback system. 2012-07-29 17:30:24 +02:00
James Turner
909ed99332 Ensure WSAStartup is called for metar.exe 2012-07-27 17:51:04 +01:00
Markus Pargmann
ecfbb951ae Remove most compile warnings 2012-07-26 11:10:27 +01:00
Thomas Geymayer
e4fed256b7 Remove hardcoded update intervals for radar. 2012-07-26 10:48:16 +01:00
Frederic Bouvier
b44b8005b8 Don't stop displaying the sky dome in Rembrandt at any visibility 2012-07-22 18:09:47 +02:00
Frederic Bouvier
359b67cf43 Remove a redundant line 2012-07-22 17:43:27 +02:00
jberndt
1d33664067 Fixed a bug where a structural to Body frame conversion was being doen twice for tanks. 2012-07-20 00:18:35 +02:00
Stuart Buchanan
5e3ec6209c Add command to reload materials definitions. Note that this explicitly
does not attempt to delete the old materials definitions, as they
may be in use at the time.
2012-07-19 22:06:08 +01:00
ThorstenB
a2bd520a3b ATISMgr clean-up / improvements
Adds serviceable/operable properties to comm radio.
Obey comm radio power source (no power => no radio => no ATIS).
Also further clean-up to stuff belonging to former ATCmgr module.
2012-07-17 19:32:12 +02:00
ThorstenB
ec739a17c2 Fix compiler warning
(access beyond array bounds)
2012-07-17 19:32:05 +02:00
ThorstenB
0b9adf8854 ADF: code clean-up/documentation 2012-07-17 19:31:57 +02:00
ThorstenB
d50aa8999d ADF: add "operable" property
Add same property as for nav radio, to provide a property to cockpit models
whether the ADF is active (serviceable/switched on/power ok/...). Useful
to enable/disable displays (i.e. KR87).
2012-07-17 19:31:49 +02:00
Frederic Bouvier
9db625af79 Add a node mask bit for permanent lights (needed by Rembrandt) and select it in the lighting stage 2012-07-16 20:07:59 +02:00
ThorstenB
e4c3b77f15 Restore ATIS reception with nav receivers.
nav radios can be used for comm reception - mainly to receive ATIS. This
had worked with FG 2.6, but was lost in the ATCMgr->ATISMgr conversion.
2012-07-15 19:02:05 +02:00
ThorstenB
d5c56cdffa #798: Betrand Coconnier: Fix setting initial vertical speed with JSBSim 2012-07-15 15:23:46 +02:00
ThorstenB
831662fca8 Option to restore defaults and enable/disable random buildings+vegetation
fgfs can fail to start when random buildings is set to an excessive level,
so you can't even reach the GUI setting to reduce/disable again.
2012-07-15 10:56:59 +02:00
ThorstenB
df4ccc3b88 Debug message about loaded AI models. 2012-07-15 10:15:53 +02:00
Frederic Bouvier
735b6d43ec OSG 3.0.1 has no osg::Node::asCamera method 2012-07-15 10:03:19 +02:00
Frederic Bouvier
7e90968c4e Make the point light non permanent in Rembrandt 2012-07-15 08:13:05 +02:00
Frederic Bouvier
7b4287e151 Restore 2D panels in Rembrandt 2012-07-15 00:09:05 +02:00
Frederic Bouvier
a72caad8bc Restore point light in Rembrandt 2012-07-14 21:30:18 +02:00
Frederic Bouvier
c1137f371d Rembrandt: Add debugging properties and fix transparency issues. Side effect: light are not fogged (may be added in the light shader later) and depth buffer precision issues on light are more visible due to near plane really near (0.1m) 2012-07-14 13:07:41 +02:00
ThorstenB
00fe1e3445 #803: apply hotfix to revive "--carrier" option. 2012-07-14 10:01:29 +02:00
ThorstenB
39a7caae15 Proper error checks for generic protocol.
Drop FGGeneric instances which failed to initialize to avoid run-time
issues.
2012-07-13 20:33:36 +02:00
Thomas Geymayer
26aeb84399 Canvas: Calculate bounding box for path elements.
- Add an update callback to calculate a bounding box for every
   path to ensure correct culling of paths.
 - Ensure OpenVG get's initialized even if elements are subject to
   culling.
2012-07-13 11:11:33 +01:00
Thomas Geymayer
580891f181 Rename tf elements for easier handling. 2012-07-13 11:11:29 +01:00
Thomas Geymayer
c5695f6f88 Fix setting global path options per path 2012-07-13 11:11:22 +01:00
James Turner
e226983835 Revised patch from Yves to fix Mac 10.5 compilation
NSMenuDelegate is an informal protocol before 10.6, so declare it locally in that case.
2012-07-10 08:39:11 +01:00
ThorstenB
7edbf8a8c9 #798: climb rate cannot be higher than the true speed
Don't set vertical-speed on sim reset, unless the user intentionally
requested this as a start-up property.
2012-07-08 11:40:24 +02:00
Thomas Geymayer
0934ba859f Fix canvas clean up.
On clean up there are no parents any more and therefore the assertion
was triggered.
2012-07-03 16:29:44 +02:00
Thomas Geymayer
948dd2ab95 Add missing glx.h include and fix some warnings. 2012-07-03 15:58:05 +02:00
James Turner
2a276ae5d1 Disable panel-extent drawing in hot-spots mode.
To keep the tutorial looking nice, switch off the panel extent outlines for the 2.8 release. Longer-term I should remove the code, or add a separate property if this feature is actually useful.
2012-07-02 11:44:34 +01:00
Stuart Buchanan
60af52707c Reduce severity of a failure to create a marker beacon due to an unknown runway from ALERT to WARN. Not particularly relevant error message for most users. 2012-06-30 20:50:57 +01:00
Frederic Bouvier
398936d08c Working 'noshadow' animation 2012-06-30 16:26:42 +02:00
Frederic Bouvier
6d0cacc0a3 Get rid of TexGen magic and do the projective texturing for shadow mapping ourself 2012-06-27 19:38:04 +02:00
James Turner
20071b66af Fix an edge case in flight-plan inserts.
When inserting with an invalid index, ensure we return the leg based on the fixed-up index, not the original one. Thanks to Matthias Götz for the catch!
2012-06-26 15:16:03 +01:00
James Turner
08e72f8bfc Issue 790, restore hiding of 2D panel by view.
Restore previous behaviour where the 2D panel is automatically hidden when the current view is != 0. Also add two property controls to alter this behaviour, and the 'autohide' behaviour at runtime. (Requires an fgdata update to get matching preferences.xml)

https://code.google.com/p/flightgear-bugs/issues/detail?id=790
2012-06-26 11:24:10 +01:00
James Turner
18469f0059 SafeTexFont is unused, remove from build & Git 2012-06-21 12:00:52 +02:00
ThorstenB
b14401df66 #769: fix glideslope reception
Add missing frequency update.
2012-06-19 00:41:52 +02:00
ThorstenB
aabea95d19 #769: fix glideslope reception
The glideslope station was only searched once whenever the NAV station
changed. However, sometimes a mismatching G/S station is found, since
another G/S station is still closer when the NAV station changes.
When this happened, the G/S station was never updated again (while the
NAV station stayed in range), resulting in the NAV receiver providing
correct localizer, but bad G/S data (data matching another, remote station).
Issue is fixed by alternating between searching NAV and G/S stations.
2012-06-18 22:57:22 +02:00
James Turner
a8fbfb17b4 Fix OS-X compilation. 2012-06-17 21:14:04 +01:00
Thomas Geymayer
569042acbd Allow filling paths and do some clean up/fixing. 2012-06-17 21:14:00 +01:00
Thomas Geymayer
c8e1433a5c Add ShivaVG sources 2012-06-17 21:13:54 +01:00
Thomas Geymayer
df768766d9 Canvas: basic support for OpenVG (path with stroke and pattern)
- Bugfix: Don't access children by index as it's not unique
2012-06-17 21:13:47 +01:00
Frederic Bouvier
a360653eb6 Fix indentation 2012-06-16 17:29:03 +02:00
Frederic Bouvier
608520d932 Don't invalidate Rembrandt buffers when the window is iconified 2012-06-16 17:20:56 +02:00
Frederic Bouvier
622c10b8f9 The terrain branch can contain models having lights 2012-06-11 09:14:23 +02:00
Frederic Bouvier
d84f48cc0c Get more fps in Rembrandt: don't redraw the terrain in the lighting stage. Should also fix the green z-fight that occurs on terrain with some camera directions. 2012-06-10 22:29:16 +02:00
Frederic Bouvier
cd06896b2d Reset pointers in menus 2012-06-10 22:25:58 +02:00
James Turner
5fc98e4ed0 Fix another case-sensitivity issue in the NavDisplay. 2012-06-10 11:11:42 +01:00
ThorstenB
a237fa6a4c Harald JOHNSEN: Prevent a crash during startup. 2012-06-08 15:13:04 +02:00
ThorstenB
b79e9ca1c8 Fixed compiler warning
about incorrect init order.
2012-06-08 13:32:12 +02:00
ThorstenB
db09e11ba0 Fix inconsistent NAV receiver gs-inrange behaviour.
Make sure gs-inrange and deflection outputs have same behaviour, no matter
which out-of-range condition applies (i.e. aircraft moved out of range,
frequency changed, ...).
2012-06-08 13:28:08 +02:00
ThorstenB
805c4cbba1 Performance optimization
Throttle instruments not requiring the fast FDM simulation rate.
2012-06-08 13:20:39 +02:00
Erik Hofman
1575fad886 Merge branch 'next' of gitorious.org:fg/flightgear into next 2012-06-03 10:14:25 +02:00
Thomas Geymayer
023021a879 Expose character-aspect-ratio and do some clean up
- Fix stupid memory corruption bug
 - Fix bounding box calculations
 - Fix docs
 - Fix text size
 - Expose setting background color
 - Expose trigger for updating elements
 - Untie nodes if deleting according element
 - Allow deleting canvas, text and group elements
 - Allow creating groups as children of groups
2012-05-31 22:04:19 +02:00
James Turner
17ec3278ed Remove platform-specific code in favour of simgear::Dir wrappers. 2012-05-31 08:57:22 +01:00
Erik Hofman
10e6c6eea7 change file permissions 2012-05-30 08:42:47 +02:00
Erik Hofman
642735ab18 sync with JSB JSBSim CVS 2012-05-30 08:39:04 +02:00
Frederic Bouvier
115324af4f Fix multi screen in a single window issue in Rembrandt 2012-05-23 09:09:14 +02:00
Frederic Bouvier
fad7181a2d Remove hard-coded lighting stage 2012-05-20 00:36:42 +02:00
Frederic Bouvier
3e7b8e57b6 Add world viewer position in cartesian and geodesic coordinate as shader uniforms 2012-05-19 23:50:35 +02:00
Frederic Bouvier
a5dff11f13 Make Rembrandt compatible with multi screen 2012-05-19 15:43:49 +02:00
James Turner
2c640b0329 Another Win32/Canvas fix. 2012-05-18 08:56:17 +01:00
James Turner
b5283fafb1 Fix Win32 build, hopefully. 2012-05-18 07:45:30 +01:00
Thomas Geymayer
d82fd7cc5f Basic 2D canvas implementation.
Support text and transformations for the moment, more
features to follow in due course.
2012-05-18 07:05:37 +01:00
James Turner
fe0a703a19 Fix a dumb bug in NavDisplay text-enable. 2012-05-18 06:49:18 +01:00
James Turner
9b4c2def75 Merge commit 'refs/merge-requests/28' of git://gitorious.org/fg/flightgear into merge-requests/28 2012-05-17 17:33:58 +01:00
James Turner
caf0138ab3 NavDisplay enhancements for Syd.
- Support text-enable condition on symbols
- support <limit>N</limit> on symbols to restrict
to closest N symbol instances.
- change search to hopefully be more stable at
larger ranges.
2012-05-17 17:30:30 +01:00
James Turner
ffac5ff889 Standard property to ignore unusably short runways in NavDB.
Default values should match existing behaviour. Set
/sim/navdb/min-runway-length-ft to skip short runways
in GPS / Map / ND / Nasal queries.
2012-05-16 16:51:39 +01:00
James Turner
8f10fff8dc Lazy-loading of the 2D panel node.
Sink the 2D panel logic into FGPanelNode, simplifying
renderer.cxx and a few other places. Also allows potential
for unloading / paging of 2.5D panels in the future.
2012-05-16 11:43:09 +01:00
James Turner
77cd7b39f7 Since we require OSG 3.0 now, this check is obsolete. 2012-05-15 23:10:53 +01:00
James Turner
e06b3df11e Make HUD loading lazy upon first show. 2012-05-15 18:17:39 +01:00
James Turner
2999675234 From TomG - support per-aircraft GUI dialogs a little easier. 2012-05-15 18:06:38 +01:00
James Turner
1ef77b2bc2 More route-manager functionality moved to Nasal.
The routing behaviour now happens entirely in Nasal,
using a delegate, and can be over-ridden or disable
by aircraft authors. Default behaviour should be
unchanged.
2012-05-15 17:53:30 +01:00
Frederic Bouvier
73a3434421 Rely entirely on the configurable renderer and add more configuration options in the lighting stage to prepare the implementation of the lightfield effect in Rembrandt 2012-05-13 18:57:00 +02:00
ThorstenB
91198ebc8e Clean-up, part III.
Consistent white-spacing only. Also move all dead code to bottom section
(to be removed later).
2012-05-13 00:11:20 +02:00
ThorstenB
a2922e2e23 ATCDCL cleanup, part II.
Remove/comment out obsolete code.
Refactor ATCmgr(-old) into ATISmgr(-new), only keeping the COM radio / ATIS
support.
2012-05-12 23:53:30 +02:00
ThorstenB
d6ef7bb091 Drop obsolete ATCDCL dialog. 2012-05-12 23:53:29 +02:00
ThorstenB
d2fa9e26a0 #767: stop ATIS when switching off volume or loosing station 2012-05-12 23:53:29 +02:00
James Turner
ce92730ef6 Expose FlightPlan delegates to Nasal, finally.
This will permit Nasal (e.g., FMS) to update nicely when the FlightPlan
is modified from anywhere else.
2012-05-12 17:23:17 +01:00
Frederic Bouvier
8bb03adc1f Fix compilation of FGRenderer 2012-05-12 15:19:11 +02:00
Frederic Bouvier
bb16463d63 Add simple conditions (no opengl related tests) to buffers, stages and attachments 2012-05-12 13:45:40 +02:00
Frederic Bouvier
b1f098d959 Fix camera render orders
Set default uniforms to fullscreen cameras
Add du/dv to predefined uniforms
2012-05-12 13:45:38 +02:00
Frederic Bouvier
6b2ba60772 rename /sim/rendering/rembrandt -> /sim/rendering/rembrandt/enabled
and put rembrandt-related properties in /sim/rendering/rembrandt/
2012-05-12 13:45:36 +02:00
Frederic Bouvier
dd8d9a6f60 First round of changes toward a programmable rendering pipeline.
Stages are predefined for now.
2012-05-12 13:45:35 +02:00
Frederic Bouvier
64e3e98069 More work on configurable rendering pipeline implementation 2012-05-12 13:45:33 +02:00
Frederic Bouvier
6b008126b5 Begin to implement configurable rendering pipeline 2012-05-12 13:45:31 +02:00
Frederic Bouvier
e55c0b8819 Use names to identify cameras in camera group 2012-05-12 13:45:30 +02:00
Frederic Bouvier
81d181beb5 Remove built-in shaders and rely entirely on fgdata 2012-05-12 13:45:28 +02:00
Frederic Bouvier
41b5144c3a Use names to identify deferred buffers in camera group 2012-05-12 13:45:26 +02:00
Frederic Bouvier
4bfd2dd2d2 Use names to identify deferred buffers 2012-05-12 13:45:25 +02:00
James Turner
33dd4b3b92 Fix a Clang warning, checking signed char as if it was unsigned. 2012-05-12 10:26:15 +01:00
James Turner
0f61108f5b Break FlightPlan out into its own file. 2012-05-12 10:25:56 +01:00
James Turner
b0384d035f Remove remaining includes of simgear/waypoint 2012-05-11 23:49:12 +01:00
James Turner
acd8fa25e6 Expose procedure routing and fixes to Nasal. 2012-05-11 17:07:56 +01:00
James Turner
02fcd32e44 Don't repeat splash-screen status on the console. 2012-05-11 17:07:37 +01:00
James Turner
79391f818c Remove stale includes, use local ground-speed property. 2012-05-11 17:07:21 +01:00
ThorstenB
b91175d47a Adapt logging level for some messages.
Also keep default logging level during very early startup at "alert"
(unless explicitly set on cmd-line).
2012-05-09 23:56:43 +02:00
James Turner
ec4f2f59c9 Airways routing is driven via Nasal now. 2012-05-09 09:39:33 +01:00
ThorstenB
de6ac7153d Improve debug output 2012-05-08 23:04:53 +02:00
ThorstenB
0b7b0f16a8 Improve fgfs startup logging.
Establish log-level very, very early during startup, so debug/info/warning
messages in the very early fgfs startup phase are also shown.
2012-05-08 22:47:32 +02:00
James Turner
ea2c73e8b5 Expose airways via Nasal, and allow waypoint creation and deletion via Nasal too. 2012-05-08 21:06:28 +01:00
James Turner
8aeb650d16 On OS-X, used NSWorkspace to launch the browser. 2012-05-07 23:49:21 +01:00
James Turner
ff91fec1bb Fix various route-manager issues reported by Hyde. 2012-05-07 23:48:56 +01:00
James Turner
5808ed1b62 Permit an invalid index to be set on a flight-plan. 2012-05-07 10:59:34 +01:00
Frederic Bouvier
71622dc3ca SID is a predefined type under windows 2012-05-07 10:19:55 +02:00
James Turner
b092987656 Fix SID class ambiguity on Windows (clashes with winnt.h) 2012-05-07 00:59:28 +01:00
James Turner
1b7b69b498 Create a real FlightPlan (and Leg) class
Convert the route-manager to use a flight-plan internally, and expose
flightplan, leg and procedure data to Nasal. Move the Level-D parser
into its own file.
2012-05-07 00:35:48 +01:00
ThorstenB
563ed19f97 Add Windows-specific implementation to determine locale settings. 2012-05-06 23:15:27 +02:00
ThorstenB
e794bb8e25 Fix Linux compile / math dependency
wasn't redundant in one place
2012-05-05 12:16:20 +02:00
Frederic Bouvier
75fc136931 Remove redundant inclusion of math/SGMath.hxx 2012-05-05 11:20:04 +02:00
ThorstenB
1f7b57546d Fix Mac compile. 2012-05-05 09:41:23 +02:00
ThorstenB
c5ce8e29ca Support localized menu on Mac/CocoaMenuBar. 2012-05-05 09:30:52 +02:00
ThorstenB
0f462d4a6e Fix rpmlint/Linux packager complaints
about outdated/invalid FSF address in some license headers.
2012-05-05 01:42:41 +02:00
ThorstenB
b9260f543b Ganael Laplanche: fix include dependencies for FreeBSD support 2012-05-05 01:08:20 +02:00
ThorstenB
e59fabaf82 Clean-up some SGMath dependencies. 2012-05-05 00:56:29 +02:00
ThorstenB
a524e654f9 Fix rpmlint/Linux packager complaints
about outdated/invalid FSF address in some license headers.
2012-05-05 00:38:56 +02:00
ThorstenB
c808376927 Use separate header file for vector properties.
(We could drop the "SGMath.hxx" include in many places now...)
2012-05-05 00:12:41 +02:00
James Turner
84beec9325 TrafficManager - check model paths when loading schedules, and ignore schedules with a missing mode completely. 2012-05-03 11:05:37 +01:00
ThorstenB
645b0ae588 #607: change path in warning message
Code checks both, "Aircraft" and "AI/Aircraft" directory - but users
obviously prefer to see the AI/Aircraft directory in the reported
warnings... ;-)
2012-05-02 23:50:07 +02:00
ThorstenB
d00cc33a2e set correct file mode
More non-executable data files.
2012-05-02 23:26:42 +02:00
James Turner
ea73373109 Support PBD waypoints in procedures files.
http://code.google.com/p/flightgear-bugs/issues/detail?id=635
2012-05-02 22:09:41 +01:00
James Turner
1632c5b266 Add an auto-release pool wrapper to the Cocoa code
Hopefully this will address some warnings seen on Mac
2012-05-02 21:24:44 +01:00
ThorstenB
05588c2ee4 Adapt font size behaviour to original plib font.
Original plib 'Helvetica 12' reported point size "13". Stick with this to
keep backward compatibility of GUI layouts.
2012-05-01 11:44:52 +02:00
ThorstenB
229fe3bff9 Support disabling AI traffic at run-time. 2012-05-01 10:32:30 +02:00
Frederic Bouvier
746b0d60cc Add the ability to record depth in color buffer. This should solve depth buffer resolution problem for older NVidia cards. 2012-05-01 08:27:13 +02:00
ThorstenB
38ca3dda60 #248: support enabling AI module at run-time
Traffic manager can also be enabled at run-time, so "ai enabled" check
also needs to be moved for traffic.
2012-04-30 19:44:11 +02:00
ThorstenB
3986e1fe3a Add separate switch to enable/disable AI scenario support.
Switch is enabled automatically when scenarios are given on command-line.
2012-04-30 19:04:49 +02:00
ThorstenB
a2c2373758 #248: support enabling AI module at run-time
Move /sim/ai/enabled check behind the MP enabled check.
2012-04-30 17:48:13 +02:00
ThorstenB
9b51c5e87e #248: support enabling AI module at run-time
Also adapt MP and traffic module to enable the AI module when required.
This makes /sim/ai/enabled an internal property: it can default to false
(in future), and can be enabled as soon as any user-level feature (traffic,
MP, local weather, ...) requires it.
2012-04-30 17:26:04 +02:00
ThorstenB
10d2d94778 Avoid compiler warnings.
Unsigned values are always >= 0...
2012-04-30 14:33:38 +02:00
ThorstenB
b8f61df80f #734: MP cannot be enabled without 'AI' module
Add and improve error messages.
2012-04-30 14:32:35 +02:00
Frederic Bouvier
44e672c256 16bit source type is overkill for 8bit normal buffer 2012-04-29 14:19:32 +02:00
Frederic Bouvier
da2110a544 Really initialize shadow cascades from the preferences
Reformat without tabs
2012-04-29 13:29:57 +02:00
James Turner
f4318044ef And expose the published navaid range to Nasal, since we can. 2012-04-28 23:35:19 +01:00
James Turner
78afdb3c22 Convert all the Nasal wrappers around FGPositioned to use ghost-member-access
Lazy-ness is good. Along the way, expose the course on ILS/LOC navaids to Nasal.
2012-04-28 23:28:12 +01:00
James Turner
15724a6a44 NavDisplay: ignore case when matching symbol types in rules. 2012-04-28 22:39:55 +01:00
James Turner
a318baa9e2 Update some nasal-positioned code to use new ghost-member support
(Requires latest SimGear)
2012-04-28 22:33:13 +01:00
James Turner
2d267a5782 Remove PositionedBinding (which no one ever used), Nasal is better for this jobs. 2012-04-26 00:37:47 +01:00
James Turner
de975699fe Expose single-runway query on airport. 2012-04-26 00:27:18 +01:00
James Turner
4d39882ab2 Expose SGBucket index computation to Nasal. 2012-04-26 00:00:46 +01:00
ThorstenB
89b41395d8 Move viewer-related sources to separate folder.
Simple source directory clean-up, so "Main" folder contains fewer stuff
and the list of files in the editors a lot shorter.
2012-04-25 23:28:00 +02:00
ThorstenB
5683467d34 Abstract AP implementation base classes need a virtual destructor
(SGReferenced doesn't provide it)
2012-04-25 23:11:45 +02:00
James Turner
c5781546b9 Expose greatCircleMove to Nasal, and allow geo.Coord to be passed into methods. 2012-04-25 16:54:40 +01:00
Frederic Bouvier
7006ca12a8 Don't care about light volumes when picking in the scenegraph 2012-04-24 23:35:05 +02:00
Mathias Froehlich
4d6a4eb836 Fix explicit reference counting with waypoints and positions. 2012-04-24 23:25:51 +02:00
James Turner
fb66aeade1 More search functions exposed to Nasal, also airport parking. 2012-04-24 22:12:56 +01:00
James Turner
3d46809ea8 Expose waypoint source (airport/runway/navaid) to Nasal 2012-04-24 10:53:46 +01:00
James Turner
b57d24913a Hacking to expose route/waypt data via Nasal, API not final yet. 2012-04-23 23:55:22 +01:00
James Turner
a132ced084 Nasal airport functions for various ancillary data pieces now work. 2012-04-23 23:04:59 +01:00
James Turner
9eb0f67a82 Make traffic-manager schedule XML loading incremental, to
avoid a long pause during startup.
2012-04-23 15:03:08 +01:00
James Turner
1011251504 Feature request for Syd - expose the ND view heading 2012-04-23 13:59:01 +01:00
ThorstenB
17651be494 Try to fix MSVC build.
MSVC wants to see the full "SGVec3" class spec, not just the fwd
declaration provided by SGMathFwd.hxx.
2012-04-22 09:40:36 +02:00
ThorstenB
f3502a760b #263: (Re-)introduce language option for menu
Adapt FGPUIMenuBar to use new Locale module.
Adds support for separate "key" property for menu items, so keyboard hints
are no longer part of the item's label (and do not need to be part of the
translated text resources).
2012-04-21 20:18:01 +02:00
ThorstenB
470552fab1 Move locale code to separate module.
Introduce convenience methods to handle localized string resources
and obtain strings.
2012-04-21 20:17:42 +02:00
ThorstenB
056b85bc1f Add Latin1 character subset to default FG font.
Copies HELVETICA_12 from PLIB to FG, adding some more chars needed for
Latin1/ISO-8859-1 (West European languages).
(SANS_12B and HELVETICA_14 also support Latin1, but not the other default
PLIB fonts).
2012-04-21 19:06:11 +02:00
ThorstenB
b358af2611 Minor clean-up. 2012-04-21 19:06:10 +02:00
James Turner
3edd350c55 Work on extending the Nasal airports API - attempt to give methods to airport hashes. 2012-04-21 11:15:23 +01:00
James Turner
2e5febec7d Work on an azimuthal project mode for the map, to improve behaviour in polar regions. Disabled for now since performance is extremely poor. 2012-04-21 11:14:45 +01:00
ThorstenB
2a4ab38e70 Move another string to the language resource. 2012-04-18 15:44:42 +02:00
ThorstenB
201d9d7852 Be more tolerant about locale name when detecting the default language,
i.e. consider the German resource provided for "de_DE" or "de" when
locale name is "de_DE.utf8".
2012-04-18 15:43:42 +02:00
James Turner
516d92c077 Fix part of #263, --language option not working for --help. 2012-04-18 12:46:26 +01:00
James Turner
2218a44ed7 Support loading PropertyList data remotely, as part of #450. Along the way, centralise the HTTPClient object so it can be used beyond the METAR download engine. 2012-04-18 10:25:27 +01:00
Frederic Bouvier
7d3195aaa6 Make the number of shadow cascades and the range of each configurable 2012-04-17 09:13:54 +02:00
James Turner
f1ad01478e Expose more things to Nasal for FMSs in particular - still work in progress. 2012-04-16 10:18:37 +01:00
ThorstenB
fdff9291bd Fix build for Linux, really.
;-)
2012-04-15 16:07:17 +02:00
ThorstenB
d683d39e85 Fix SceneryPager destruction sequence.
SceneryPager singleton must not be removed while FGScenery is still alive,
so hold a reference to it in FGScenery, saving the pager from being
deleted first.
2012-04-15 15:30:44 +02:00
James Turner
ef796e88bc Fix build for non-Mac, hopefully. 2012-04-15 14:20:03 +01:00
James Turner
f5a79fc893 Start refactoring how FGPositioned classes are exposed to Nasal, more to come. 2012-04-15 13:54:50 +01:00
James Turner
91f2d0798a Make 2D panel mouse action repeat independent of the frame-rate. 2012-04-15 13:21:12 +01:00
James Turner
96ee2b1577 Tweak ODGauge usage, fix multiple instances of NavDisplay or wxRadar. 2012-04-15 12:03:21 +01:00
Frederic Bouvier
0a1417e06d Get rid of RG16 buffer made possible by a different way to encode normals 2012-04-12 23:59:42 +02:00
ThorstenB
ffe7149b81 Don't call "exit" when reporting an error.
Add some more guards for missing way points.
Comment out some unused variables.
2012-04-12 19:38:32 +02:00
ThorstenB
4348f17b8c #738: crash when switching 2D panels
FGPanelNode doesn't always own its "_panel" object - so it's not ok to
always delete it. Use ref-counting/smart-pointers instead.
2012-04-12 00:03:16 +02:00
James Turner
2ce5b5276f NavDisplay: respect initial values for various properties. 2012-04-11 10:48:33 +01:00
Frederic Bouvier
ec4b006c08 Rembrandt: Restore rendering stats
intercept first change in stats display to change stats handler camera render order
2012-04-09 17:41:33 +02:00
James Turner
76efc104c0 Route-manager distance helpers for Hyde and others working on VNAV support. 2012-04-09 14:06:44 +01:00
James Turner
2408be0abb Whoops, fix a type found by Syd in the NavDisplay. 2012-04-09 12:17:38 +01:00
ThorstenB
efa18fae1e Add CMake option to disable building test applications. 2012-04-08 18:49:11 +02:00
ThorstenB
da2ee04eea Fix scenery reload issues.
Aircraft could fall through the ground on scenery reload.
2012-04-07 16:35:04 +02:00
ThorstenB
82d66caaf2 Comment out some unused vars. 2012-04-07 16:20:22 +02:00
ThorstenB
9effb06047 Fix scenery reload issues.
Aircraft could fall through the ground on scenery reload. Properly reset
the "sceneryloaded" flag to pause FDM processing while scenery is being
reloaded. Also stop processing some instruments while scenery is reloaded.
2012-04-07 16:20:22 +02:00
Frederic Bouvier
43f7ebcb35 Restore splash screen for the Rembrandt renderer 2012-04-05 23:30:38 +02:00
ThorstenB
cab350d7fc YASim performance optimization
Use stashed property nodes.
2012-04-05 21:06:39 +02:00
ThorstenB
7dc8db8ef5 Fix some compiler warnings.
Also removes "itm.cpp" from CMake to avoid code duplication/warnings, since
this the file is already included by radio.cxx.
2012-04-05 21:02:09 +02:00
ThorstenB
8c74b47a0d Add "--max-fps" option to limit frame rate. 2012-04-05 21:02:09 +02:00
ThorstenB
ed1ec90287 YASim performance optimization
Several functions of YASim's math wrapper are hotspots. Allow compiler
optimization/inlining.
2012-04-05 21:02:09 +02:00
ThorstenB
5f1435b4fd Avoid "using..." in header files. 2012-04-05 21:02:09 +02:00
ThorstenB
5fb6614c23 Remove unused variables (moment/ias) 2012-04-05 21:02:09 +02:00
Torsten Dreyer
68e1a8c4cb Autopilot: save loads of CPU cycles
Not every xml-autopilot filter needs to run at the update rate
of the FDM. This only makes sense for the autpilot filters. Those,
who update instrument needles or environment properties for example
may run at frame rate.
This patch (thanks to ThorstenB, who is the author) forces those
filters defined in /sim/systems/autopilot into the FDM loop and those
defined in /sim/systems/property-rule into the default loop. They
show up as xml-autopilot and xml-proprules in the performance monitor
2012-04-05 20:40:07 +02:00
Frederic Bouvier
44de0e1df4 Honor /sim/rendering/shadows/enabled preference 2012-04-04 20:43:16 +02:00
Frederic Bouvier
f7174f5422 Code cosmetic 2012-04-03 23:17:04 +02:00
Frederic Bouvier
8f5e9619aa Fix issue with sky added in commit 25e0ab0b82 2012-04-03 08:41:28 +02:00
Frederic Bouvier
93ad2f2ef6 Hopefully fix the shadow disappearing because of range animation issue in a more elegant way 2012-04-02 23:54:31 +02:00
Frederic Bouvier
65d86e872d Restore messages and fog draw order reverted in the previous commit 2012-04-02 23:36:34 +02:00
Frederic Bouvier
93d97374e1 Revert "Disable LOD when rendering to the shadow map."
This reverts commit e46357d819.
2012-04-02 20:07:29 +02:00
Frederic Bouvier
25e0ab0b82 Enable light source for transparent surfaces 2012-04-01 23:37:47 +02:00
Frederic Bouvier
e46357d819 Disable LOD when rendering to the shadow map.
Produce few NaNs at start
2012-04-01 23:07:33 +02:00
Frederic Bouvier
b05bbddde5 Make the shadow map available for effects 2012-03-31 22:50:38 +02:00
Frederic Bouvier
7e6ecfec56 Fix picking zone display 2012-03-31 21:59:50 +02:00
Frederic Bouvier
e4094356f5 Be sure to not render light volumes in the classical renderer 2012-03-31 20:39:47 +02:00
Frederic Bouvier
2416f9f8d8 Working spot and point lights
Use 8bit normals if /sim/rendering/no-16bit-buffer is set to true. May be usefull for old card returning 0x8cda at fbo setup time
White/gray specular material
s/Tabs/Spaces/
2012-03-31 20:16:36 +02:00
Erik Hofman
47a910bccc Make sure _avionics is enabled before calling suspend, this fixes a crash caused by the way AI models are handled now. 2012-03-31 11:45:28 +02:00
Frederic Bouvier
954a09dce1 Shadow map size settable at run-time. It needs to be a power of two. Now needs a real gui dialog 2012-03-30 22:30:26 +02:00
Frederic Bouvier
0dcadb7e1a Fix a typo in proptest.cpp 2012-03-30 20:59:39 +02:00
Frederic Bouvier
440234d4eb Compile proptest.cpp with MSVC. There is still a link problem though 2012-03-30 07:41:08 +02:00
Frederic Bouvier
1194f1f991 Implement Cascade Shadow Mapping in the Rembrandt renderer.
Shadow map size is set by the /sim/rendering/shadows/map-size property before starting fgfs. Its default value is 4096. Maximum value is 16384 in most card
2012-03-30 07:28:04 +02:00
Emilian Huminiuc
825d6565a4 YASim: enable building of YASim's proptest utility
Signed-off-by: Emilian Huminiuc <emilianh@gmail.com>
2012-03-29 09:29:29 +01:00
ThorstenB
5ef15023fc Properly drop empty tiles from tile cache.
Tiles which expired before being loaded could clog the tile cache.
2012-03-28 23:03:13 +02:00
Frederic Bouvier
8a382cd536 Fix normal storage into texture data. Input [-1..1] should be output to [0..1] 2012-03-28 22:39:28 +02:00
James Turner
f0bf3ed841 Fix total-distance computation in the route-manager, and expose some additional values - departure and arrival field elevation, and total distance along the route of a waypoint. (Addresses some feature requests) 2012-03-27 21:54:38 +01:00
ThorstenB
a8fe035b54 #723: perpetual "GPS init complete" info messages.
Don't report "init complete" unless "init" is complete :).
2012-03-27 21:24:54 +02:00
James Turner
a4deeb332e Fix All-FDMs linkage. Thanks Torsten, no idea what ar/ld interaction is happening here. 2012-03-27 15:07:34 +01:00
ThorstenB
834d4e1e3e CameraGroup: adapt order of member vars to their init sequence.
(Avoids flood of "init sequence" GCC warnings, whenever CameraGroup.hxx
is included anywhere)
2012-03-26 21:21:41 +02:00
ThorstenB
d436484c21 Prevent negative alpha value
(affects splash screen)
2012-03-26 21:11:04 +02:00
ThorstenB
1df5347a06 Fix "use of uninitialized data" reported by valgrind.
(issue triggered when FGGlobals::saveInitialState copies the entire
property tree on start-up).
2012-03-26 21:11:04 +02:00
ThorstenB
2f7f5da4ad marker beacon: catch NULL pointer
when runway not in navdb (affects incomplete/inconsistent nav data only).
2012-03-26 21:11:04 +02:00
ThorstenB
cabb17818f Fix "use of uninitialized data" reported by valgrind.
(also pushed to JSBSIM cvs)
2012-03-26 21:11:04 +02:00
ThorstenB
c14343d02b AIFlightPlan: Initialize the same member variables in all constructors.
distance_to_go / lead_distance were not initialized in all constructors.
Fixes 'condition on uninitialized data' reported by valgrind.
Also comment-out unused vars.
2012-03-26 21:11:03 +02:00
ThorstenB
39ce84ac52 Replace unnecessary use of copy constructor. 2012-03-26 21:11:03 +02:00
ThorstenB
f14ca9c611 tilemanager: initialize member variables
Also drop some obsolete members.
2012-03-26 21:11:03 +02:00
James Turner
4bde2451b0 Avoid a crash when using the native menubar on Mac, due to non-static classes with identical names. 2012-03-26 17:38:09 +01:00
James Turner
59253531bc Fix YAsim linkage. 2012-03-26 16:09:21 +01:00
James Turner
a38362646d Don't create intermediate static libraries for build fgfs. (Speeds up rebuilds in Xcode dramatically, possible in other IDEs too) 2012-03-26 13:09:39 +01:00
James Turner
086df400de Fix 2.5D panel hit detection, compute logical panel extend from actions. 2012-03-25 18:46:04 +01:00
Frederic Bouvier
2e735e6234 Warn of harmless messages caused by the Rembrandt renderer 2012-03-25 19:05:10 +02:00
Frederic Bouvier
79396655a3 Remove tabs 2012-03-25 16:07:56 +02:00
Frederic Bouvier
416e6df9e3 First, preliminary, code of the Rembrandt renderer.
The new renderer is activated by the --enable-rembrandt option, or in the preferences.xml file.
The renderer at this stage doesn't have shadows yet, and shows a lighting bug. The slash screen doesn't work too.
2012-03-25 16:06:54 +02:00
Frederic Bouvier
86185c8014 Add options to enable or disable the Rembrandt renderer 2012-03-25 15:28:19 +02:00
Frederic Bouvier
400129ae15 Allow any number of cameras as render stages for a single viewport 2012-03-25 15:28:17 +02:00
Frederic Bouvier
19e7163971 Compile with MSVC 9 2012-03-25 14:39:24 +02:00
Frederic Bouvier
94e3ae4c67 Choose renderer from /sim/rendering/rembrandt property 2012-03-25 14:39:22 +02:00
Frederic Bouvier
1a3f69723b Move camera setup to the renderer 2012-03-25 14:39:19 +02:00
Frederic Bouvier
bca4683d52 Small refactoring in CameraInfo 2012-03-25 14:37:43 +02:00
ThorstenB
11a9bdf29e #548: segfault in AIFlightPlanCreate
check "tn != NULL" before calling tn->getGeod()
2012-03-25 10:34:07 +02:00
ThorstenB
bc9331fc3f No avionics sound group for aimodels. 2012-03-22 23:53:18 +01:00
ThorstenB
7d37f6af58 Don't crash on start-up when avionics sound is disabled.
FGFX::init/soundfx::init use "_avionics" unconditionally, so it has to be
valid, even when avionics sound is disabled. Also allow to properly
enable/disable avioncis sound at run-time.
2012-03-22 23:36:39 +01:00
ThorstenB
22c20a2f09 Make FG_OPTIONS_EXIT work.
'fgfs --version' wants to exit...
2012-03-17 12:01:51 +01:00
ThorstenB
92d5620b9f Fix Linux build 2012-03-16 23:21:07 +01:00
James Turner
8c187164fe Work on making 2D panels act like standard scene-graph elements for picking and drawing.
(This includes 2.5D panels in the 3D scene)
2012-03-16 17:22:18 +00:00
Mathias Froehlich
1ddb658a70 scenery: Move flightgears paging back into the application.
This way of scenery paging is really application code.
Now that the simgear stg loader is seperated from the paging
code, this appication specific paging can reside here.
May be at some time also use the spt stuff here.
2012-03-15 20:56:37 +01:00
Mathias Froehlich
44c716bb03 scenery: The tile entries load callback is not needed anymore.
The stg loader can do this itself.
2012-03-15 19:39:07 +01:00
Mathias Froehlich
8d3e1b06be Remove /sim/paths/use-custom-scenery-data.
Scenery people tell me that this is always set to true
today. Thus we can remove this property as this allows
me for some further osg loader cleanups.
2012-03-15 18:48:57 +01:00
Torsten Dreyer
5caa42af8e Make use of auto-coordination more flexible
- move property /sim/auto-coordination to
  /controls/flight/auto-coordination
- introduce new property /controls/flight/auto-coordination-factor
  with default of 0.5
- auto-coordinate the rudder if auto-coordination is true and the factor
  is greater than zero

backward compatibility for the old property is temporary provided by
a temporary Nasal hack in FGDATA/Nasal/aircraft.nas
2012-03-13 21:00:22 +01:00
Torsten Dreyer
25c6e8acbd bind the sky disable cutoff distance to a property
There used to be a hardcoded visibility of 1000m below which the
sky was disabled. This distance is now bound to
/sim/rendering/minimum-sky-visibility with a default value of 1000
2012-03-09 21:00:23 +01:00
ThorstenB
6113981b39 #702: Misspelled "devices" property node.
(Typo from my commit earlier this week)
2012-03-08 08:58:44 +01:00
ThorstenB
bb59af4357 Fix segfault when loading routes in RouteManager
FGRouteMgr::loadRoute always needs to call "update_mirror" before
returning.
2012-03-07 21:33:08 +01:00
ThorstenB
e24004b17b #589: 2D panels transparent at night. May also fix #591.
Since d91a617423 (vectory color calculations)
all 4 elements of a color were scaled with the respective brightness.
The caused some panels to be transparent at night etc.
Before the change, only the 3 RGB elements of the colors were scaled,
while the 4th element (alpha channel?) remained unaltered.
Commit restores the alpha elements to their original behaviour.
=> "Quick hack" for 2.6.0. Need s.o. to double check the initial changes
and commit something clean to "next".
2012-03-07 20:49:13 +01:00
ThorstenB
ba257eeecf More spring-cleaning fun.
Use tiedPropertyLists, instead of manual tie/unties.
2012-03-07 20:48:00 +01:00
ThorstenB
db098593be #591: Fix sky flickering at certain sun/view angles
Commit 5f0066c resulted in an incorrect angle calculation. At certain view/sun
angles "hor_rotation" and "rf1" would skip from the minimum to the maximum
value).
Also, an offset angle of 90 degrees (PI/2) is added, which seems to align
the sky effect with the sun position. Calculation is probably still wrong,
but seems less wrong than before - and the flickering is gone...
2012-03-07 20:43:52 +01:00
Torsten Dreyer
644bb8c4f4 Spring-cleaning: some minor optimization
- initialize uninitialized properties
- use prefix instead of postfix increments
- reduce visibility of variables
- use empty() instead of size() == 0 for vector and string
- pass string by reference, not by value
2012-03-06 22:28:18 +01:00
ThorstenB
9264243a71 Use tiedPropertyLists instead of manually matched tie/untie calls.
Ensures we don't forget to untie some individual properties.
2012-03-04 17:38:06 +01:00
ThorstenB
0abf252ec8 Use tiedPropertyLists instead of manually matched tie/untie calls.
Ensures we don't forget to untie some individual properties.
2012-03-04 15:30:08 +01:00
ThorstenB
d0d86bf0b7 Fix type issue.
multi-sample-buffers is int, not bool.
2012-03-03 21:39:22 +01:00
Mathias Froehlich
742f0eb939 Fix compile past last simgear change. 2012-03-03 14:05:43 +01:00
Mathias Froehlich
c71c9aee0a Adapt to simgear SGMath change.
Simgears SGMath has lost its dependency on osg.
Update includes and code using these methods.
2012-03-03 13:37:43 +01:00
Mathias Froehlich
5ca01925cd hla: Rename HLAVariantData* to HLAVariantRecordData*.
Rename the variant record data types and elements to something
more standard conformant. This catches up with recent changes
in simgear.
2012-02-25 18:01:17 +01:00
Mathias Froehlich
c5ddd7b1f3 hla: Avoid using deprecated readObjectModelTemplate.
Avoid using the now deprecated readObjectModelTemplate() method
in HLAFederate. Make more use of the available general
initialization functions in HLAFederate.
2012-02-25 18:01:09 +01:00
ThorstenB
da73dd97d3 Clean-up cmake (linker) dependencies. 2012-02-24 22:23:15 +01:00
ThorstenB
632824e4d8 Fix MSVC build issue.
MSVC complained about ambiguous "floor" when T=<int>.
2012-02-19 20:30:15 +01:00
ThorstenB
511072f206 protocol module: minor clean-up 2012-02-19 14:57:25 +01:00
Thomas Geymayer
dd3afd4c4e Use simgear functions for clip and wrap around. 2012-02-19 14:53:04 +01:00
Thomas Geymayer
ccf15ac97e Remove unneeded function and add bool relative changes 2012-02-19 14:53:04 +01:00
Thomas Geymayer
4ec6810c29 Support relative changes and wrapping for generic protocol input. 2012-02-19 14:53:04 +01:00
ThorstenB
93a5765d08 #669: reset fly-by-view when a new replay loop begins 2012-02-19 14:53:04 +01:00
ThorstenB
39b03594aa Remove obsolete ignore pattern for automake generated headers. 2012-02-17 23:46:42 +01:00
Torsten Dreyer
c5eba72c75 Navradio: provide property is-localizer-frequency
This property is true if the active frequency is tuned to a
paired LOC/GS frequency in the range 108.00 - 111.95 with a
odd 100kHz digit (108.10, 108.15, 108.30, 108.35 ...)
It only indicates, that this _is_ a LOC/GS frequency,
it does _not_ provide any indication if a LOC/GS station is
actually being received.
2012-02-15 22:43:15 +01:00
Torsten Dreyer
4da0760edd Remove the deprecated warning for JSBSim's egt_degf
At least no FGDATA aircraft uses this property anymore.
2012-02-15 15:13:33 +01:00
Torsten Dreyer
ed934c1999 Some xml-autopilot tuning
- Add update-interval-secs to the entire autopilot
- cache min/max values in InputValue
- a little more relaxed "equals zero" checking in the NoiseSpikeFilter
2012-02-15 14:59:10 +01:00
Torsten Dreyer
d141beee0f Accept setting-hpa along with setting-inhg for altimeter 2012-02-13 22:25:30 +01:00
Torsten Dreyer
5a05e30abd Fix file access mode for newnavradio.[ch]xx 2012-02-13 22:24:41 +01:00
Torsten Dreyer
f6c3a41b92 Merge branch 'next' of gitorious.org:fg/flightgear into next 2012-02-12 11:42:01 +01:00
Torsten Dreyer
5ebdcdc3d5 Some autopilot works
- add new <update-interval-secs> for autopilot components.
  This does what it says.
- add new method to PeriodicalValue to normalize symmetric around zero
- move the DigitalFilterImplementation out of the header file
- refactor NoiseSpikeFilter: spare some cpu-cycles and respect periodical
  output
2012-02-12 11:41:21 +01:00
James Turner
a5153615e6 Mac-specific fgjs / event-input fixes from Tatsuhiro. 2012-02-11 17:33:02 +00:00
ThorstenB
58e79013e3 Ron Jensen: fixed a potential NaN and Segfault in JSBSim propeller code
The property /fdm/jsbsim/propulsion/engine/prop-induced-velocity_fps
gives wrong answers, and can become NaN under certain conditions. When thrust is
negative and forward velocity is small we can take the square root of a negative
number. This could occur, for example, when using reverse thrusters on landing.
The value comes out much too high when alpha is near 180, such as taxing with a
tail wind.
2012-02-11 17:12:14 +01:00
ThorstenB
a8d5ac90c6 #656: COM1 frequency set to 0 at startup
Also, don't flood the screen with AI ATC messages when COM1/2 is set to 0
(ignore aircraft "transmissions" on frequency "0 MHz").
2012-02-10 23:43:03 +01:00
ThorstenB
17590ba436 Fix another line lost in a merge conflict. 2012-02-07 21:12:51 +01:00
ThorstenB
ff14ddf914 Fix missing declaration. 2012-02-07 19:32:55 +01:00
ThorstenB
578df0f484 #553: decouple OSG callbacks from Nasal subsystem 2012-02-06 22:19:33 +01:00
ThorstenB
33c63a6d72 This 'fixes' #613 but partly re-introduces #553. 2012-02-06 22:12:58 +01:00
ThorstenB
0b049c877a #591: night-time rendering issues, avoid negative color values
Fog color became negative at certain sun angles (around midnight), which
resulted in weird sky dome coloring issues.
Hack: simply clamp the value for now.
2012-02-05 15:14:30 +01:00
Torsten Dreyer
62dfa8cc64 new command: property-interpolate
exposes the SGInterpolator to <binding><command>
formerly only accessible via Nasal
2012-02-02 22:17:34 +01:00
Torsten Dreyer
72483d565b initialize the heading-indicator/offset-deg in it's class
Don't initialize the offset in the main loop but in
the init method of the implementing class. This ensures
it gets initialized if you instantiate more than one
heading-indicator and does not initialize the property for
unsused heading-indicators (no more stray heading-indicator-fg
property anymore).
2012-02-01 22:24:06 +01:00
ThorstenB
5c3b6a2cc4 Fix string buffer issue with replay time display.
Unclean method of appending a string to a buffer would break with
some compiler optimization settings.
2012-01-31 23:19:02 +01:00
ThorstenB
5f6012802f Use existing define to supply version number. 2012-01-31 21:42:37 +01:00
ThorstenB
7b83b49260 Oops... 2012-01-29 10:44:28 +01:00
ThorstenB
3e08e5ecfe Minor clean-up. 2012-01-29 10:34:11 +01:00
James Turner
b501dc97ce Bug 620, respect enable/disable state of entire menus when using native Cocoa menu 2012-01-25 18:56:51 +00:00
ThorstenB
477e621633 #561: normalize to [0-360[ 2012-01-22 19:15:25 +01:00
ThorstenB
4e9e35a0a2 #609 route manager/nav display related startup segfault
Immediately update the property-tree mirror when adding waypoints (i.e.
using the "--flight-plan=..." startup option).
2012-01-22 11:23:56 +01:00
ThorstenB
64fda03bd6 #605: Reduce warning level for unsupported keys. 2012-01-18 21:41:55 +01:00
ThorstenB
90ce4ec93d Clean-up: move autosave.xml loading code to proper method 2012-01-17 23:49:25 +01:00
Stuart Buchanan
4c321b6b80 Add property controls for cloud impostors and LoD hierarchy radii. 2012-01-17 22:16:58 +00:00
Torsten Dreyer
3bfee87bba bump version number to 2.7.0 2012-01-17 08:36:20 +01:00
Torsten Dreyer
979fc9785b bump version number to 2.6.0 2012-01-17 07:46:52 +01:00
James Turner
96cd6018f9 Allow distinct rule and symbol definitions for navDisplays. 2012-01-14 17:00:50 +00:00
ThorstenB
0b6579e0e4 Fix a minor warning.
System complains about "system" call's result being ignored.
2012-01-12 22:14:17 +01:00
ThorstenB
6f4a090770 #199: fix issue with relative paths
Relative paths don't work with FG. Since we Linux users just love
command-lines and often do use relative paths, make sure to convert them
before use.
2012-01-12 22:14:17 +01:00
James Turner
472cc02d6e NavDisplay: fix update lag when switching range or centre. 2012-01-12 10:08:08 +00:00
ThorstenB
d051ba5cd2 #577: blinking not working for static HUD labels
Only worked for dynamic labels displaying a property (mode!=NONE).
2012-01-10 22:01:05 +01:00
ThorstenB
6b348dc481 #590: agradar copying an uninitialized string
Thanks to Olaf Flebbe.
2012-01-09 23:41:07 +01:00
adrian
045912f5a7 ITM radio calculations are only considered valid
between 40 MHz and 20 GHz.
Fix for bug which assigns a frequency of 0 MHz to
AI aircraft, thus resulting in infinite values.
2012-01-09 21:01:01 +01:00
ThorstenB
e82c36d76b #587: don't crash on negative sizes
(see simgear commit)
2012-01-09 20:29:51 +01:00
Erik Hofman
699f4eeb38 fix a typo 2012-01-09 08:14:46 +01:00
James Turner
fdbdbfe93d When clearing the route, skip generated waypoints. 2012-01-08 19:31:07 +00:00
Mathias Froehlich
db241f3e10 Handle unset texture-compression property correctly. 2012-01-08 20:19:36 +01:00
James Turner
975a5202a8 NavDisplay: fix many bugs relating to stretched and heading-rotated symbols. 2012-01-08 17:47:13 +00:00
Erik Hofman
5f0066c4c2 Fix the sun position and fog/ambient coloring misalignment 2012-01-08 16:28:43 +01:00
Erik Hofman
94e4d19ad1 Merge branch 'next' of gitorious.org:fg/flightgear into next 2012-01-08 15:38:22 +01:00
Erik Hofman
3abf0b5df1 remove some ugly while loops 2012-01-08 13:51:38 +01:00
ThorstenB
59d400d58b Temporarily disable Nasal callbacks in lazily loaded scenery models
to avoid segfaults due to multi-threading issues. Will need to be replaced
by proper fix, if this proves Nasal related segfaults to be fixed.
2012-01-08 13:31:49 +01:00
ThorstenB
246feef85f #553: MP-model-loading related segfault
MP aircraft are loaded by a separate OSG thread (introduced after FG2.4.0).
The OSG thread also calls the "modelLoaded" callback. However, we mustn't
allow the OSG thread to call FGNasalModelData::modelLoaded directly:
FGNasalModelData isn't thread-safe. There are obvious issues (_callCount++;),
tricky issues like calling the Nasal _parser_ or creating hashes and
modifying the global Nasal namespace. It doesn't use locks to protect
against another thread executing a Nasal context or running garbage
collection. It also executes Nasal code itself (the model's "load" hook),
which we also cannot allow in a separate thread...
This patch returns all Nasal parts of MP-aircraft loading (parsing,
module creation, execution) to the main thread, while keeping the
multi-threaded OSG part (loading of MP-aircraft model files itself).
The same issue exists with scenery models (see other commit).

To summarize with 2 words: It s*cks... ;-)
2012-01-08 13:28:49 +01:00
ThorstenB
277ba10b39 Potential fixes for #548, #572, groundnetwork related segfaults
Add some pointer checks - so we at least get some error message naming the
airport with the broken network.
2012-01-08 12:31:18 +01:00
Erik Hofman
d91a617423 vecotry color calculations 2012-01-08 12:09:46 +01:00
ThorstenB
484d3c61f8 #561, clean-up using normalizePeriodic. Thanks to Hyde & James. 2012-01-07 08:17:34 +01:00
James Turner
da7adf63c0 Shortcuts support in the Cocoa menubar. We have fewer keyboard shortcuts for menu items than I realised. 2012-01-06 23:46:35 +00:00
James Turner
b1c6e31c22 Tweaks to get TCAS / multiplayer aircraft showing on the NavDisplay. 2012-01-06 20:47:21 +00:00
James Turner
a0bfa25aa7 Tweak the app-data path on Mac, after discussion with Tat. 2012-01-05 22:10:19 +00:00
Curtis L. Olson
cf86d37514 Fix YASim's /accelerations/pilot/{x,y,z}-accel-fps_sec computations. These
are the accelerations (forces) as felt from the pilot's perspective.  This
combines the accelerations due to change in velocity vector and gravity.

Previosly the gravity part was right, but the body accelerations were being
transformed incorrectly.  The error was very subtle and basically amounted to
the fact that inverting an axis of a vector before transforming it is not
equivalent to transforming the vector and then inverting that axis.

After this fix, pilot accelerations + gyro + gps can be fed into an external
kalman filter and it will converge properly (extra confirmation that there
was a problem and this fix corrects it.)
2012-01-04 19:17:32 -06:00
Stuart Buchanan
af150d1a56 Only initialize MP subsystem if a txhost is set. 2012-01-04 21:47:35 +00:00
James Turner
a3c243f266 Mark NavDisplay stateSet as STATIC 2012-01-04 12:43:25 +00:00
ThorstenB
23cdb0d302 #561: keep magnetic heading within limits when mag-variation is negative
Thanks to Hyde!
2012-01-04 00:00:10 +01:00
ThorstenB
dac00efbc7 Fix some compiler warnings.
Comment out unused code.
2012-01-02 23:16:17 +01:00
Durk Talsma
aab04f44bd Bugfixes and some finetuning:
* Pregenerating taxiroutes could interfere with runway assignments by ATC, when conditions changed, resulting in a taxi to one runway and a takeoff from another
* A simpler solution for the "Error in Traffic record bug". This still needs some more testing, but I haven't seen any error message anymore, since changing to the current code.
* Initialize AI traffic at speed zero, this should prevent some weirdness observed under boundary conditions.
* Don't activate groundnetwork proximity detection for pushback traffic until the "ready for startup message is transmitted. this should allow sufficient time for them to reserve a route, but a little more testing still needs to be done.
2012-01-02 22:23:24 +01:00
Durk Talsma
e0b6ee9d5d --debugMsg; 2012-01-01 15:30:51 +01:00
Durk Talsma
cf279e320b Bugfix: Shutdown the ATC manager when it runs out of waypoints. 2012-01-01 13:12:13 +01:00
Durk Talsma
c8d7b3ecf2 Merge branch 'next' of gitorious.org:fg/flightgear into next 2011-12-31 19:59:56 +01:00
Durk Talsma
53445c80d4 Some commented out debugging code that may help us trace down bug 532. 2011-12-31 18:16:38 +01:00
Torsten Dreyer
de7debe253 simplify the METAR string, remove newline etc. 2011-12-31 17:31:13 +01:00
Durk Talsma
b648b71671 Fix for issue: 520: Error in FGTrafficRecord::setPositionAndIntentions. 2011-12-30 15:27:21 +01:00
ThorstenB
229d9273d7 #545 related: User settings not saved when window was closed
via the window buttons instead of pressing ESC or using menu exit.
(More code should be moved after the 2.6 release)
2011-12-30 00:39:31 +01:00
Mathias Froehlich
48b4596a5f Make the use of the compressed internal format a configuration option. 2011-12-29 12:24:04 +01:00
James Turner
c831d9c857 Get the ATC frequency dialogs working again for the 2.6 release. 2011-12-27 22:55:52 +00:00
James Turner
36fc0367d2 Nav-display: expose TCAS threat level correctly. 2011-12-27 20:19:10 +00:00
ThorstenB
f0c729f2d5 #545: Fix ATC chatter sound settings being ignored
FGSampleQueue is initialized at run-time, long after preferences are
loaded from the persistent files - so it should not reset anything.
2011-12-27 13:04:09 +01:00
Torsten Dreyer
ddb4fa050f Some warning fixes, mostly unused variables 2011-12-25 14:41:47 +01:00
Durk Talsma
0bb17d755c Merge branch 'next' of gitorious.org:fg/flightgear into next 2011-12-24 17:56:45 +01:00
Durk Talsma
762d8a90dd Remove a stray debug message.Z 2011-12-24 16:34:33 +01:00
Erik Hofman
cbdd89493f properly add librt when clock_gettime is used 2011-12-24 11:34:35 +01:00
Erik Hofman
05476d0be3 Fix for SF bug #3171743 - P-factor does not take into account the thruster pitch and yaw angles 2011-12-23 14:18:38 +01:00
Torsten Dreyer
520c002058 Fix #535: METAR from command line ignored 2011-12-22 22:11:37 +01:00
James Turner
342140a694 Add test-mode to NavDisplay, and hence fix bugs in range / scale handling. 2011-12-22 14:07:06 +00:00
ThorstenB
596c3e5d03 Fix issues related to #419. 2011-12-19 21:36:42 +01:00
Erik Hofman
1fb790eb60 comment out unused variables and function and properly initialize variables 2011-12-19 16:50:21 +01:00
Frederic Bouvier
c964d0e83e Restore JSBsim and Yasim in VS2008 build 2011-12-18 16:14:53 +01:00
Frederic Bouvier
c676ffaf53 Merge branch 'next' of git://gitorious.org/fg/flightgear into next 2011-12-17 18:13:31 +01:00
Frederic Bouvier
54d5614e52 Better c++ design to avoid leaks in case of exceptions 2011-12-17 18:13:05 +01:00
ThorstenB
b575446b36 Add some debug messages to help analyzing #385. 2011-12-17 15:26:50 +01:00
ThorstenB
dcaf3d9aea Avoid spamming the log output
Stop printing "State == Running" debug messages in every update loop
(makes "--log-level=debug" a lot more usable)
2011-12-17 15:22:50 +01:00
Erik Hofman
e6e09a8161 Also expose the true sun color in the property tree. 2011-12-17 10:57:08 +01:00
Erik Hofman
ff4c771759 Expose the cloud color in the property tree 2011-12-16 15:37:16 +01:00
Erik Hofman
c78b7e1abb Remove AI prefix for the sound path and add it to the config files instead 2011-12-14 12:45:22 +01:00
Torsten Dreyer
196cfdb569 Fix windows build 2011-12-13 20:48:50 +01:00
adrian
9491c2ea76 Merge branch 'next' into attenuation 2011-12-13 13:35:45 +02:00
adrian
b61e53c484 Merge branch 'navaids-radio' into attenuation 2011-12-13 13:01:23 +02:00
adrian
9cd77924be take care of cases where the model obstructs the antenna 2011-12-13 12:58:44 +02:00
adrian
1c5eb0fb3e Merge branch 'next' into navaids-radio 2011-12-12 14:56:28 +02:00
Erik Hofman
babe714de7 reaneble ai modeul sound effects 2011-12-12 10:49:09 +01:00
adrian
3f3755fda2 Merge branch 'next' into attenuation 2011-12-11 19:06:24 +02:00
James Turner
7c79e16d8d Add hud-cycling back - issue #337 2011-12-11 14:12:17 +00:00
ThorstenB
d47342a5a4 Add --log-class option, improve logging classes.
Replace SG_GENERAL by more specific log classes in many places.
Allow "," to separate logging classes (using "|" is odd on the
command-line).
Also add new option to make logging more useful for developers.
You can use:
  --log-level=debug --log-class=environment
to only get environment debug messages, or
  --log-level=debug --log-class=sound,ai
to only get debug messages related to the sound or AI subsystem.
2011-12-11 14:06:17 +01:00
ThorstenB
7f5dfe1421 Provide error message when file isn't found. 2011-12-11 14:06:17 +01:00
Frederic Bouvier
14b76a1d63 Multiple --atlas options are valid (one for Atlas, one for Terrasync) 2011-12-11 13:12:18 +01:00
ThorstenB
a756ad0f43 #513: netgui alignment mismatching on 32bit/64bit machines
netgui data structure now is identical for all platforms. Manually aligned
the fields, so compilers do not add (CPU architecture-specific) padding.
2011-12-09 19:01:15 +01:00
adrian
3eff9a14c9 Merge branch 'next' into navaids-radio 2011-12-09 18:57:50 +02:00
adrian
b796df3bd7 Merge branch 'next' into attenuation 2011-12-09 18:57:38 +02:00
ThorstenB
4c17cee5fb Lower log level for event input/udev messages. 2011-12-09 17:20:28 +01:00
ThorstenB
444720f62d Avoid useless warnings during FG startup.
Do not warn about missing scenery manager, unless it is really needed.
Also raise warn level for multiple init calls.
2011-12-09 17:19:45 +01:00
ThorstenB
826107f132 #510: Fix disappearing AIShips.
Untangle AI reinit and init methods. Some code in init hooks expects to be
called once only. Derived classes should not redirect their reinit to init,
even if this seems fine for the methods of the derived class itself. This
also triggers the init methods of all base classes, which may not expect
multiple calls to their init methods (or to "init" on "reinit").
2011-12-09 17:06:19 +01:00
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
adrian
66fdb2a5e2 Remove interface from Nasal 2011-12-09 15:44:22 +02:00
adrian
24ff279218 itm.cpp: don't polute the global namespace 2011-12-08 20:16:11 +02:00
adrian
f7f8d7dca9 Clean up my code in NasalSys.cxx 2011-12-08 19:48:31 +02:00
adrian
fec3f47154 Document the code better;
Add some checks in the clutter function;
Use string pointers to get materials;
2011-12-08 15:05:27 +02:00
adrian
10e933dc53 Send geod from Nasal, properly document the code, take some parameters from properties 2011-12-06 23:00:50 +02:00
adrian
971c2820b9 Expose a radio function (receiveBeacon) to the Nasal subsystem 2011-12-06 21:03:40 +02:00
adrian
4826b21968 Lower receiver sensitivity, modify loading of antenna pattern 2011-12-06 11:38:48 +02:00
adrian
8a61ad0fc9 Merge branch 'attenuation' into navaids-radio
Conflicts:
	src/Radio/radio.cxx
2011-12-06 10:27:03 +02:00
adrian
451bf89f70 Merge branch 'next' into attenuation
Conflicts:
	src/Radio/radio.cxx
2011-12-06 02:15:04 +02:00
adrian
b7d59463c8 Fix error caused by assert statement in itm.cpp 2011-12-06 02:04:21 +02:00
adrian
e597d6314e rename function 2011-12-05 22:42:40 +02:00
Torsten Dreyer
26011dd9c6 Fix a typo in the radio propagation code
And for sentimental reason: keep the VC90 project file working
2011-12-05 21:40:01 +01:00
adrian
4b8e74c6af Make antenna radiation calculations selectable via switch 2011-12-05 11:43:21 +02:00
Vivian Meazza
b61e22bdb3 Windows fixes/work-arounds
Signed-off-by: Vivian Meazza <vivian.meazza@lineone.net>
2011-12-05 08:55:33 +00:00
Durk Talsma
482672f941 Merge branch 'next' of gitorious.org:fg/flightgear into next 2011-12-04 22:53:58 +01:00