Edward d'Auvergne
0b2152a8ad
TestSuite: Removal of some ancient, unused test files.
...
These include Scenery/{maptest.cxx, test.cxx} and Time/{test_event.c, ttest.c,
win32test.c}. These files, essentially untouched since added in 1999, are not
useful for conversion for the test suite.
2018-07-26 15:52:07 +02:00
Szymon Acedański
93e68c001a
Fixed building FG with GDAL
2017-03-11 13:34:19 +01:00
Peter Sadrozinski
ec4b9f8542
Alternative terrain engine based on pagedLOD
...
- remove TileMgr from sub systems - add to btg terrain engine
2017-02-26 10:17:15 -05:00
Stuart Buchanan
dab9a9fc73
Remove /sim/rendering/building-mesh.
...
Made redundant by /sim/rendering/scenery-path-suffix
2017-01-21 22:22:43 +00:00
James Turner
e64a2db5a0
Remove the scenery path mangling.
...
Requires a matching SG commit for correct operation.
2016-11-20 22:42:48 +00:00
Stuart Buchanan
55f64820df
Fix display of OBJECT_BUILDING_MESH_DETAILED
2016-11-08 19:43:32 +00:00
Rebecca N. Palmer
3b1f01c49d
stop using /sim/terrasync/scenery-dir, fix scenery path order
...
Having non-Nasal-readable scenery paths breaks things
(The property continues to exist, but is now from-C++-to-Nasal only)
2016-10-18 22:10:09 +01:00
Stuart Buchanan
14f20e4165
Add support for building meshes.
2016-09-22 20:40:26 +01:00
James Turner
16814800ce
Use Paths instead of strings.
2016-06-22 17:36:05 +01:00
Edward d'Auvergne
977ec5063f
Shift of management of the precipitation OSG scene graph to the scenery manager.
...
The precipitation branch of the OSG scene graph is now centrally managed by the
scenery manager rather the precipitation manager itself. The scene graph
initialisation from the constructor has also been shifted into the new
FGPrecipitationMgr::sceneGraphSetup() function.
2016-05-03 18:44:46 +02:00
Edward d'Auvergne
b12a56b526
Prevention of the creation of multiple OSG scene graph roots.
...
As the scenery manager's init() function is called twice on start up, two OSG
scene graph roots would be created. A number of scene graph branches would be
initalised on the first root, but then be lost as the second is created. This
fixes the precipitation branch, for example.
2016-05-03 18:42:43 +02:00
Stuart Buchanan
56374621c5
Make LOD of buildings/trees/objects/STG configurable.
...
Now using /sim/rendering/static-lod/rough.
2016-04-08 22:38:17 +01:00
James Turner
ca6424f76a
Fix a reset crash with pager threading.
...
Ensure pager thread is stopped before we touch
the sgUserData reference to the main props tree.
2016-03-28 23:50:47 +01:00
Edward d'Auvergne
97f8cdaaea
Fix for the particle system.
...
The problem was that the change to make FGScenery a standard subsystem caused
the particle OSG group to no longer be inserted into the scene graph. The
solution was to convert the particle group to be set up as a standard branch of
the scene graph, alongside the terrain, models, aircraft, and interior branches.
The particle system is now set up as part of the init() subsystem function call,
so it is compatible with the new subsystem design.
2016-02-16 17:33:40 +01:00
Erik Hofman
de023dd7bd
Fix the tile-manager subsystem name
2015-12-24 11:52:09 +01:00
James Turner
8877b442f8
ATC/Traffic doesn’t crash reset.
...
- remove some global headers from AI headers, to avoid pollution
- change how ATC owns the ‘player’ FGAIAircraft so reset works
- ensure AIAircraft controllers are cleared on unbind for reset
2015-12-11 12:11:59 -06:00
James Turner
43fcbd2246
Progress towards testing
...
- remove route-manager from global variables
2015-12-10 16:40:22 -06:00
James Turner
bbff8dcbb6
Remove / reduce level on some debug output
2015-06-08 10:37:26 +01:00
James Turner
585235ce01
One more log item for the tile-cache.
2015-03-08 09:41:27 +00:00
James Turner
89115ccb1d
Adding some debugs for Thorsten Renk’s issue.
...
Will revert this patch in the future.
2014-11-19 22:35:44 +00:00
James Turner
c6c63e65f7
Adding log message for an edge case.
2014-11-19 22:35:44 +00:00
James Turner
71da5b7a76
Tweak scenery-loaded logic
...
Make first-start (not a reset / re-init) behaviour more explicit.
2014-11-15 16:29:39 +00:00
James Turner
779a97b925
Move all tile-manager init to reinit path.
...
- improves changing scenery paths at runtime.
2014-11-11 22:25:55 +00:00
Stuart Buchanan
b654477794
New materials.xml format
2014-08-09 20:43:34 +01:00
James Turner
fd248e9391
Respect tile expiry time when cache is disabled.
...
Tiles added via the visible mechanism always have an
expiry time of 0.0, so this only affects tiles added by elevation queries, from the AI or FDM.
2014-05-24 14:23:59 +01:00
James Turner
431a3eaa1b
Tune osgDB::MaxPagedLODs parameter
2014-05-17 09:05:34 +01:00
James Turner
f19da413bb
Initial mode to disable caching of tiles.
2014-05-16 14:52:24 +01:00
James Turner
487546c848
Fix some leaks on reset
...
- tilecache 'clear_cache' is poorly named, ensure the destructor
really deletes all outstanding entries.
2014-03-13 18:19:13 +00:00
James Turner
2beb0f29af
Fix starting on carrier.
...
- scenery intersection needs to check the whole scene since carriers
are outside it. (could possibly be optimised further)
2014-03-06 09:21:04 +00:00
James Turner
41567d8fc8
Toggle cloud drawing on/off
2014-03-05 14:22:27 +00:00
James Turner
a6219dab76
use an osg::Switch to control scenery rendering
...
- restores functionality of 'draw-otw' property
- adds new /sim/rendering/draw-mask branch to allow control
over rendering each branch inside FGScenery
2014-02-24 19:43:21 +00:00
James Turner
130f581b18
Tile-manager can request VBOs.
...
Monitor /sim/rendering/use-vbos and pass the value into
our SGReaderWriterOptions.
2014-02-21 08:52:07 -08:00
James Turner
0473607731
Tweak tile-manager SGBucket API
...
* FG builds with 'NO_DEPRECATED_API' in SGBucket
2014-02-19 14:02:09 -08:00
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
c6541e9c8f
Remove some debug log calls.
...
All places which continuously log messages (either every frame or at
least every second) tending to swamp other log output.
2014-01-23 13:49:58 +00: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
af40bcb60e
Reset: explicit close-window function.
...
Allow orderly shutdown of OSG before cxa_finalize
2013-11-12 22:57:13 +00:00
James Turner
06db85f42b
Reset: given FGScenery a shutdown method.
...
Forces OSG branch references to be dropped.
2013-10-29 23:01:48 +00:00
James Turner
38193d7843
Support explicit aircraft interior models.
...
- allow multiple model files in the -set.xml specification
- allow each model to be tagged with a usage string
- put models tagged 'interior' into a LOD group.
This is experimental, the LOD ranges will be made configurable soon.
2013-10-20 20:46:33 +01: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
312be5410a
Object names for more scene-graph nodes.
2013-06-22 14:34:03 +01:00
Thomas Geymayer
bb7189eb18
Fix #1125 . Correct overloads...
2013-05-20 18:37:23 +02:00
James Turner
f2c267f5d7
MouseInput changes to support hover.
...
This adds the framework for platform cursor implementations; Windows and X11 to be done.
It also extend the mouse-input code to generate hover events suitable for driving tooltips.
Note there should be no visible functionality change from this commit, since everything
is inactive until fgdata changes are made.
2013-03-04 23:35:30 +00:00
James Turner
7b663cd7f7
Split huge NasalSys header apart.
2013-02-09 15:33:05 +00:00
James Turner
1a5b968d7e
Update for tweaked SGPickCallback API.
...
(Requires corresponding SimGear commit)
2013-02-03 16:34:36 +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
ThorstenB
e5b81a8bb6
Minor pointer safety and compiler warning issues.
2012-09-25 22:10:06 +02: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
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
Mathias Froehlich
e3ad3d3a07
bvh: Adapt to upstream bvh changes in simgear.
2012-08-24 21:24:12 +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
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
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
75fc136931
Remove redundant inclusion of math/SGMath.hxx
2012-05-05 11:20:04 +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
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
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
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
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
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
70b4f38ebc
Goodbye automake.
2011-11-01 11:15:53 +00: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
Mathias Froehlich
fc38d69823
Fixes #397 : YASim aircraft start at >32000ft instead of runway
...
The usual 'modify code before checkin but past testing' Problem.
Return the elevation of the intersection result instead of the
elevation of the querys start point.
2011-08-08 19:12:14 +02:00
Mathias Froehlich
2c24b1da17
Use the bv tree leafs for altitude queries.
...
Make use ot the bounding volume tree nodes already
present in the scenegraph for the ground cache for
scenery intersection and elevation queries.
2011-08-07 11:12:45 +02:00
Durk Talsma
5228053f7f
Merge branch 'next' into durk-atc
2011-07-24 08:44:22 +02:00
James Turner
1c8d8e7908
More CMake headers support
2011-07-19 07:58:03 +01: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