1
0
Fork 0
Commit graph

220 commits

Author SHA1 Message Date
James Turner
239a000763 Use new SGBucket API in tile-manager
- check for invalid tiles / buckets, which occurs at the poles
- use .sibling() method to offset
- no longer need to store view lat/lon in the manager.
2014-02-13 18:52:52 +00:00
Christian Schmitt
6cadc2cf40 Simplify some SGGeod-related calculations 2014-02-05 23:07:43 +01:00
James Turner
ce3a7b20fe Crash-fix: mat-lib is now reference-counted.
Adapt to corresponding SG change to make SGMaterialLib be ref-counted,
and have the 'reload-materials' command notify the tile-manager of this,
so it can update the options struct it passes to new tiles.
2014-01-19 16:49:44 +00:00
James Turner
7b8a64b614 Crash fix: thread-safe material conditions
When tiles are being loaded, re-evaluate the materials cache once
per update cycle. (This is probably too often, but no worse than the
previous approach).
2014-01-06 08:28:40 +00:00
James Turner
ad4834c651 Splash-screen feedback on scenery download. 2013-09-30 16:36:13 +01:00
James Turner
cb087dc4de Tile-manager: kill off tile-refresh.
Now the manager waits on terrasync, we never need to do the 
'experimental' refresh feature, since we only load finished tiles.
2013-09-30 12:07:35 +01:00
James Turner
e03ebef99f Tile-Manager waits on TerraSync to load.
Using a new TerraSync API, make the tile manager wait on actively
syncing tiles before sending them to the SceneryPager. This resolves numerous
issues with missing tiles, including at startup.
2013-09-30 12:03:47 +01:00
James Turner
1862688d27 Pass terrasync dir through to osgDB options.
Half of fix for TerraSync Models not being found.
2013-08-29 22:12:34 +01:00
James Turner
7b663cd7f7 Split huge NasalSys header apart. 2013-02-09 15:33:05 +00:00
James Turner
487638be7f Restructure positional finalisation for sim-reset.
Make position finalisation happen in the same phase as scenery load, i.e as a task during the main loop, instead of during the init loop. This is compatible with the existing reset logic. Unfortunately more work is needed; the environment code doesn't update the local station quickly enough on reset. (Fixing that is next!)
2012-12-15 15:25:45 +00:00
ThorstenB
59448f11cc #952 terrasync not scheduling tiles before sim reset 2012-11-28 00:26:47 +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
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
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
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
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
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
ThorstenB
da2ee04eea Fix scenery reload issues.
Aircraft could fall through the ground on scenery reload.
2012-04-07 16:35:04 +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
ThorstenB
f14ca9c611 tilemanager: initialize member variables
Also drop some obsolete members.
2012-03-26 21:11:03 +02: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
ThorstenB
17590ba436 Fix another line lost in a merge conflict. 2012-02-07 21:12:51 +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
7b83b49260 Oops... 2012-01-29 10:44:28 +01:00
ThorstenB
3e08e5ecfe Minor clean-up. 2012-01-29 10:34:11 +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
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
Mathias Froehlich
42fb9b8e9f Consolidate the different ReaderWriterOptions classes. 2011-11-13 18:34:53 +01:00
ThorstenB
318e7ac773 Untangle subsystems by replacing direct TileCache call with callback. 2011-11-13 15:47:52 +01:00
ThorstenB
7aae4484d1 Fixed typo. 2011-11-10 22:10:51 +01:00
Mathias Froehlich
ec16f43f86 Use deferred models for scenery tile models.
Instead of PagedLOD nodes use ProxyNodes for models in
scenery tiles. This should lower the amount of PagedLOD nodes
in the active scene. Since the models are part of the to level
tiles they are then paged out once the tile is paged out.
2011-11-08 21:25:10 +01:00
James Turner
b1b4b7ecf4 Fix (nearly) all the std:: namespace violations in headers, in preparation for fixing SGsmplstat.hxx to *not* do a 'using namespace std'. 2011-10-17 17:41:59 +01:00
ThorstenB
741efe2efb Attempt to tidy up the search path mess (noticed by TorstenD)
When a model is not found in the custom scenery directories, load data
from base-package (instead of trying to access file "").
Also allow paged models to be loaded from custom scenery folders.
2011-09-04 11:09:21 +02:00
ThorstenB
cf2236351c Avoid some useless file accesses
Empty "markers" in between scenery search paths shouldn't be
considered when building search paths.
2011-08-20 23:13:27 +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
Durk Talsma
5228053f7f Merge branch 'next' into durk-atc 2011-07-24 08:44:22 +02:00
ThorstenB
80f9092460 Fix issue reported by heap debugger
Subsystems are erased by the subsystem manager - so better avoid
dependencies in their destructors.
2011-07-14 00:22:35 +02:00
Durk Talsma
f8a8805e2d Merge branch 'next' into durk-atc 2011-07-01 22:20:40 +02:00
ThorstenB
d767fe1696 Avoid compiler warning. 2011-06-12 13:45:10 +02:00
ThorstenB
ee40e8ae3f Introduce terrasync subsystem.
Fix tile reloading issue.
2011-06-12 00:44:07 +02:00
ThorstenB
fb52b013f0 Clear OSG object cache on scenery reload
Scenery reload (menu: Debug-> Reload Scenery) also needs to clear the OSG
object cache, otherwise scenery isn't really reloaded from disk.
2011-04-15 21:34:44 +02:00
Durk Talsma
ee9a5cf73d Merge branch 'next' into durk-atc 2011-04-17 10:21:09 +02:00
Durk Talsma
65e87bf2f8 Added some code to visualize the ground networks. 2011-04-17 10:19:58 +02:00
ThorstenB
7bc9749d91 Support scenery reloading (needs simgear update).
TileMgr subsystem reinit: remove all scenery tiles from scenegraph and
clear cache (simgear update required).
"normal" sim resets: no TileMgr reset is needed (avoid reloading scenery).
2011-02-13 19:26:55 +01:00
ThorstenB
4a351fdd8b Update tile loader options whenever its config properties change
New listener for tile-loader properties.
2011-02-13 19:26:44 +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
Tim Moore
dba471519f Thorsten Brem's patches for bug 122
Fixes teleporting problems and disappearing tiles.
2010-10-03 08:35:12 +02:00