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
b5820a4e90
Fix string-id for message translation.
2012-09-26 13:38:26 +01:00
ThorstenB
dac8706e2e
Move GUI init code to gui module.
2012-09-25 22:39:13 +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
2f6172687e
Make FGControls behave like a standard subsystem.
2012-09-25 00:48:48 +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
ThorstenB
88592bfe71
splash screen: use language resource for translation
...
Also pimp the progress spinner.
2012-09-21 19:36:25 +02: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
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
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
ThorstenB
01376eec31
Minor main loop/init clean-up
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
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
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
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
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
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
0b6579e0e4
Fix a minor warning.
...
System complains about "system" call's result being ignored.
2012-01-12 22:14:17 +01:00
ThorstenB
e1c1a28288
Introduce some structure in fgMainLoop.
...
- Move some code to sub functions.
- Make sound manager a subsystem-manager member (and make sure it's
still processed last).
2011-11-20 16:21:15 +01:00
James Turner
a05ea36acb
Restructure GUI code, isolate PLIB in source files, to ease future refactoring and alternative GUI layers.
2011-11-19 20:25:51 +00:00
ThorstenB
4b2506d709
Add new performance monitoring subsystem.
...
Rename some subsystems for naming consistency.
2011-11-19 15:37:49 +01:00
James Turner
c1eca1ff6b
Refactor SGSky handling and ownership - sink into Renderer, remove global variable 'the sky', and hence clean up main loop and subsystem creation a little more.
2011-11-05 17:11:52 +00:00
James Turner
daf644d600
Revert my code-cleanup, causing startup crashes, bah.
2011-11-04 12:02:43 +00:00
James Turner
ecced6be78
Fewer static properties in the main loop, minor code tidying.
2011-11-04 09:40:09 +00:00
Mathias Froehlich
0bd7078c42
Make use of SGTimeStamp for sleep*
2011-10-28 17:01:50 +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
James Turner
b1c7495fec
Restructure option/config handling code, to avoid multiple scans & parses for special options (fg-root/fg-aircraft/aircraft). Push most of the code into a new Options class, inside options.cxx, and clean up various call-sites as a result.
2011-10-16 18:35:40 +01:00
Mathias Froehlich
af1e00ac72
clouds: remove unused bump mapping flag.
2011-10-01 09:22:44 +02:00
Torsten Dreyer
d860c949e3
Merge branch 'next' of gitorious.org:fg/flightgear into next
2011-09-21 19:19:10 +02:00
James Turner
227b3e469c
Remove indirection on viewer draw/resize code-paths.
2011-09-21 17:13:53 +01:00
Torsten Dreyer
25707ce82e
Add debug messages for real-weather runway selection
2011-09-20 16:15:47 +02:00
ThorstenB
e9a9f8c96d
Use some more logging class variety.
...
Stop using SG_GENERAL and SG_ALL everywhere. Using different
classes makes switching the classes really useful...
2011-08-12 00:09:26 +02:00
Torsten Dreyer
62e46b09a5
fix for #381:fgfs -h -v throws error with no --fg-root
...
Because there is no help without fgdata,
be a little more verbose with the error message and
give the user at least a hint about what might help.
2011-07-28 22:52:40 +02:00
Torsten Dreyer
c238f86637
Bump to version 2.5.0
2011-07-17 11:07:07 +02:00
Torsten Dreyer
172c635f03
Bump version to 2.4.0
2011-07-17 10:47:27 +02:00
ThorstenB
ee40e8ae3f
Introduce terrasync subsystem.
...
Fix tile reloading issue.
2011-06-12 00:44:07 +02:00
ThorstenB
db7112c20b
Remove stray space
...
Thanks to Vivian - make MSVC9 happy again.
2011-06-06 19:53:21 +02:00
ThorstenB
bc9ffe96c2
Minor error message formatting.
2011-06-04 17:55:37 +02:00
Torsten Dreyer
0774ca000a
Anticipating v2.4.0 - bump fgdata version to 2.3.0
2011-06-04 15:53:38 +02:00
ThorstenB
dd9d82d941
Some minor splash screen status improvements.
2011-05-22 18:32:15 +02:00
ThorstenB
473d1447c3
Minor renderer clean-up & performance bits.
...
Use non-static methods so we can use member variables.
2011-05-21 13:24:23 +02:00
ThorstenB
82f6d29f9f
Improve OSG caching.
...
Ensure property tree is provided early to modellib.
To disable: --prop:sim/rendering/cache=0 (enabled by default)
(also requires simgear update)
2011-04-03 19:13:51 +02:00
ThorstenB
38226af24e
Improve timing statistics
...
Enable/disable and print statistics at run-time.
Configurable intervals and filters.
2011-03-23 23:09:02 +01:00
Dave Luff
d6fceb3fbc
Remove conditional compilation of ATCDCL
...
This patch removes the conditional compilation of ATCDCL, compiling both
the old and new ATC systems. The old system only provides ATIS, AWOS and
some dialog lookups, and hence should not conflict with the new system.
2010-12-28 18:23:40 +00:00
Dave Luff
86505fd8bc
Fix up some include paths in main.cxx
...
Don't include legacy ATCmgr.hxx when it is not compiled (default).
Do include 3 paths that are necessary for main, but were only picked
up indirectly through the legacy ATC code.
2010-12-26 23:19:57 +00:00
ThorstenB
fabf45bfd5
Use simgear abstraction for sleeping.
...
Fix required for Bill's OS...
2010-11-19 15:05:12 +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
Torsten Dreyer
0917a5e062
Bugfix: no automatic runway selection with --parkpos=
2010-11-10 23:28:07 +01:00
Torsten Dreyer
9242f3a083
Make startup.nas obsolete
...
This is an ugly hack for automatic runway selection on startup based on
metar data. It's main intention is to make startup.nas obsolete and
to guarantee the same runway selection logic as used for AI traffic.
Calling presets-commit from startup.nas during the initialization
sequence caused occasional trouble and sometimes, the AI traffic
operated on the opposite runway.
2010-11-10 22:19:25 +01:00
James Turner
d1a4590721
Goodbye old HUD - and the archeology it depended upon in cockpit.cxx
2010-10-29 08:47:58 +01:00
James Turner
0e53e2cbb1
PLIB net removed from FlightGear
2010-10-24 07:10:51 +01:00
James Turner
d573cb43a0
Move three more subsystems into the init + update scheme - fixes some crashes found by papillion.
2010-10-22 16:44:37 +01:00
James Turner
9b2cea33e8
Remove uneccessary explicit update of FGLight
2010-10-05 23:17:32 +01:00
James Turner
0c342308eb
Make MultiPlayer a well-behaved subsystem.
2010-10-05 23:17:32 +01:00
James Turner
d39841d2df
Make FGAircraftModel behave like a standarrd subsystem.
2010-10-05 23:17:32 +01:00
James Turner
0beab94cb5
Make the tile-manager a well-behaved SGSubsystem
2010-10-01 19:09:19 +01:00
James Turner
1afd4e602e
Get rid of FGGeneral; expose equivlanet values via properties.
2010-10-01 09:33:31 +01:00
James Turner
af4e47179e
Kill off fgRequestRedraw
2010-09-30 23:13:11 +01:00
James Turner
84b45683fc
Refactor exit code, so the osgViewer gets 'done'.
2010-09-30 23:13:11 +01:00
James Turner
a7a2cb393a
Use the new Simgear ResourceManager to resolve paths.
2010-09-06 09:13:10 +01:00
James Turner
7f36caede6
Create TimeManager subsystem, and collect the time related code out of main.cxx and fg_init.cxx into it.
...
Remove the unfortunately named 'tmp.[cxx|hxx]', pushing the remaining code in FGLight.
(second try, with init bug fixed)
2010-08-04 09:16:37 +01:00
David Luff
53358a55bf
Remove old AI system
2010-08-03 00:21:56 +01:00
James Turner
47fd8a8a2a
Revert "Create TimeManager subsystem" - not quite ready for prime-time yet!
...
This reverts commit 50eb95dcad
.
2010-08-02 00:23:36 +01:00
James Turner
50eb95dcad
Create TimeManager subsystem, and collect the time related code out of main.cxx and fg_init.cxx into it.
...
Remove the unfortunately named 'tmp.[cxx|hxx]', pushing the remaining code in FGLight.
2010-08-01 20:33:11 +01:00
James Turner
8e5f3ac8a3
Set the key SGModelLib callback to make aircraft-dir OSG loading work.
2010-07-29 01:07:32 +01:00
James Turner
c32da90e5c
Ensure sim/signals/fdm-initialized is only fired on a rising edge; add sim/fdm-initialized as the state value.
2010-07-13 13:47:24 +01:00
James Turner
88e65f7662
aircraft.[cxx|hxx] is gone.
2010-07-01 22:56:22 +01:00
James Turner
01e0156b5d
Remove current_aircraft global, fgAIRCRAFT struct, and dead code for reading aircraft dirs.
2010-07-01 22:33:51 +01:00
James Turner
3f26d2b14b
Trivial cleanup commit, to test continuous integration server.
2010-07-01 19:51:05 +01:00
Durk Talsma
3c60bf6511
Make sure also not to try running AI_mgr when compiling fgfs with --disable-atcdcl. FlightGear can now actually run without segfaulting when compiled this way.
2010-06-27 10:08:26 +02:00
Torsten Dreyer
4466729987
fix assertion in sunsolver.cxx with --timeofday=xx
2010-06-26 21:58:45 +02:00
Torsten Dreyer
e1b9d3d759
Don't crash if built with --disable-atcdcl
2010-06-26 20:24:34 +02:00
James Turner
f9ec605ffb
Fix ordering of aircraft-model updates against flight model.
2010-06-26 10:31:22 +01:00
James Turner
85be9be1e0
Initial work on FDM shell, and removal of cur_fdm_state
2010-06-26 10:31:22 +01:00
James Turner
4756cd4882
Wrap SGEphemeris in a subsytem/property interface, and remove from mainloop.
2010-06-26 10:31:21 +01:00
James Turner
3fbf3aa080
Make FGAircraftModel more subsystem-alike, move update to fgMainLoop.
2010-06-26 10:31:21 +01:00
Tim Moore
0f8312150d
Log OpenGL vendor and version string
2010-06-15 23:58:55 +02:00
ehofman
5d0d6998d2
Don't forget to resume the sound system after reinit
2010-04-12 10:01:51 +02:00
ehofman
2b83ed9cbe
allow reinitializing the sound system by setting /sim/sound/working to false at runtime.
2010-04-12 10:01:28 +02:00
fredb
00e9ad3055
MINGW patch from Benoît Laniel
2010-01-25 17:12:04 +01:00
durk
a023700ebe
Update base package version check.
2010-01-21 06:30:35 +01:00
Tim Moore
98d8a98ef2
Merge branch 'ehofman/sound'
2010-01-13 07:30:52 +01:00
ehofman
8e4d979aca
Don't initialize the soundmanager wehn defining --disable-sound. Sound can still be enabled at runtime by setting /sim/sound/working to 'true'
2010-01-10 23:33:57 +01:00
Tim Moore
15b6c431c0
Merge branch 'timoore/merge-effects'
2009-12-20 12:05:07 +01:00
Tim Moore
b5c46a8d59
Merge branch 'ehofman/sound'
2009-12-20 11:11:16 +01:00
Tim Moore
9a94b26609
Changes for animated effects
2009-12-20 10:34:07 +01:00
ehofman
e657a53b32
Turned out a tied proeprty can't be used as a user archive, use a different one
2009-12-01 19:12:56 +01:00
ehofman
86cd525200
update to allow selection of a new sound device
2009-11-30 22:45:33 +01:00
ehofman
fde1a925fe
Change of thoughts since it makes life easier:
...
/sim/sound/working enable/disable the use of OpenAL
/sin/sound/enabled master mute/unmute
2009-11-30 22:45:23 +01:00
ehofman
3a4892cede
New Property layout:
...
/sim/sound/enabled enable/disable the use of OpenAL
/sin/sound/pause master mute, effects all SampleGroups
/sim/sound/volume master volume
/sim/sound/effects/enabled enable/disable (mute) sound fx
/sim/sound/effects/volume effects volume
/sim/sound/chatter/enabled enable/disable (mute) atc chatter
/sim/sound/chatter/volume chatter (sample queue) volume
2009-11-29 15:57:37 +01:00
ehofman
c56c520ab5
initlialize _playing for FGATC. Proper listerner orientation based on view offset. proper velocity orientation
2009-10-28 23:23:53 +01:00
durk
904a99714e
Two patches:
...
1) Fix for the "use custom scenery airport data" property.
2) Make it a little harder for stupid people to make money behind our backs.
2009-10-24 19:53:03 +02:00
ehofman
f9445874a0
Don't make the SoundManager a memebr of the subsystem manager; It needs to be initialized very early and destroyed as late as possible. That doesn't work as a subsystem meber onless some sort of priority scheme gets implemented. Get rid of auto_ptr which doesn work for the samples either.
2009-10-24 19:51:39 +02:00
ehofman
73d4b78396
explicitly activate the sound manager
2009-10-18 18:19:52 +02:00
ehofman
b64259b295
allow disabling sound completely (note: openal gets initialized but shuts down a bit later leaving the soundmanager to handle only very specific commands). At this time by specifying '--prop:/sim/sound/enabled=false', not sure why '--disable-sound' doesn't work properly
2009-10-06 10:23:15 +02:00
ehofman
446b200edc
Add the Sound Manager before any other subsystem that uses it. This makes sure the SoundMgr is available at construction time which makes the code much cleaner. Call the update_last() after any other class
2009-10-06 10:23:03 +02:00
ehofman
86f462933d
Initial commit of the new sound system, expect more updates to follow
2009-10-06 10:22:09 +02:00