1
0
Fork 0
Commit graph

484 commits

Author SHA1 Message Date
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
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
Tim Moore
9c98258ab0 Merge branch 'releases/2.2.0' into next
Conflicts:
	CMakeModules/FindSvnClient.cmake
	src/FDM/JSBSim/JSBSim.cxx
2011-02-15 13:26:24 +01:00
Tim Moore
c5366cceb6 accomodate changes to osgDB::DatabasePager interface
The change was introduced in OSG SVN revision 12080. Note: that
revision has a bug that causes fgfs to crash. The bug is fixed in
revision 12170.
2011-02-15 12:42:53 +01: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
James Turner
a91ec5f9f9 Initial work on CMake build files, with considerable help from Olaf Flebbe. 2010-12-19 15:06:04 +00:00
Tim Moore
4b2436a4e5 remove call to function removed in OSG 2010-11-30 12:01:52 +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
Christian Schmitt
0a5e86f4e6 remove old .cvsignore files 2010-11-11 01:16:29 +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
James Turner
0beab94cb5 Make the tile-manager a well-behaved SGSubsystem 2010-10-01 19:09:19 +01:00
James Turner
9604908a8d Remove all (2) uses of simgear/math/vector.h from FlightGear. 2010-07-23 13:26:07 +01:00
Tim Moore
3abe700dc8 Move the property expression code back to simgear. 2009-12-20 10:34:07 +01:00
ehofman
a3af4ed1d8 make it compile again 2009-10-12 12:53:22 +02:00
durk
b40321380d New feature: Allow the loading of shared models that are not located inside
the base package, but are maintained in the SVN repository of the custom
scenery project.
2009-10-06 07:27:39 +02:00
frohlich
2f6107982c Use the new vector conversion functions.
Modified Files:
	src/FDM/groundcache.cxx src/Main/renderer.cxx
	src/Main/viewer.cxx src/Scenery/scenery.cxx
2009-09-09 08:56:31 +02:00
frohlich
5c56757303 Move dynamic_casts to EffectGeode into the findMaterial method.
Modified Files:
	src/Scenery/scenery.cxx
2009-09-09 08:56:31 +02:00
frohlich
690231ff64 Fix a problem introduced with the past vector changes.
Fix a potential nan problem with the scenery_available method.

Modified Files:
	src/Scenery/scenery.cxx
2009-09-09 08:56:31 +02:00
frohlich
93d2f8a963 Correct logic to determine if we really have a hit.
Modified Files:
	src/Scenery/scenery.cxx
2009-09-09 08:56:31 +02:00
frohlich
aac4bec5c7 Add a possible node not to visit.
Modified Files:
	scenery.cxx scenery.hxx
2009-08-08 08:37:14 +02:00
fredb
94caa0b891 Fix case typo 2009-07-27 23:52:33 +02:00
fredb
9718338560 Compile under MSVC9 2009-07-27 23:52:33 +02:00
timoore
e2b21c1e0c Property predicate for techniques 2009-07-16 12:10:48 +02:00
timoore
d7a07bdd58 Find material from EffectGeode and Effect
The scenery now uses the Effect class.
2009-07-16 12:10:48 +02:00
frohlich
f291636ee4 Remove unused header.
Modified Files:
 	src/Scenery/scenery.cxx
2009-06-11 16:05:19 +02:00
Tim Moore
70be1629e6 Merge branch 'maint' into next 2009-05-18 12:23:33 +02:00
frohlich
047af7dec4 Make flightgear compile with todays osg trunk.
Modified Files:
	src/Scenery/SceneryPager.cxx src/Scenery/SceneryPager.hxx
	src/Scenery/tilemgr.cxx
2009-05-16 17:15:03 +02:00
frohlich
a99ea1c7b5 Port over remaining Point3D usage to the more type and unit safe SG* classes.
Remove leftover headers from plib/sg.

Modified Files:
 	src/AIModel/AIBase.cxx
 	src/AIModel/AIFlightPlanCreateCruise.cxx
 	src/ATCDCL/AIEntity.cxx src/ATCDCL/AIEntity.hxx
 	src/ATCDCL/AIGAVFRTraffic.cxx src/ATCDCL/AIGAVFRTraffic.hxx
 	src/ATCDCL/AILocalTraffic.cxx src/ATCDCL/AILocalTraffic.hxx
 	src/ATCDCL/AIMgr.cxx src/ATCDCL/ATC.hxx
 	src/ATCDCL/ATCDialog.cxx src/ATCDCL/ATCProjection.cxx
 	src/ATCDCL/ATCProjection.hxx src/ATCDCL/ATCutils.cxx
 	src/ATCDCL/ATCutils.hxx src/ATCDCL/approach.cxx
 	src/ATCDCL/commlist.cxx src/ATCDCL/ground.cxx
	src/ATCDCL/ground.hxx src/ATCDCL/tower.cxx
 	src/ATCDCL/tower.hxx src/Airports/calc_loc.cxx
 	src/Airports/dynamics.cxx src/Airports/groundnetwork.cxx
 	src/Airports/parking.cxx src/Airports/runwayprefs.cxx
 	src/Airports/simple.cxx src/Cockpit/cockpit.cxx
 	src/Cockpit/hud.hxx src/Cockpit/hud_card.cxx
 	src/Cockpit/hud_rwy.cxx src/Environment/environment.cxx
 	src/FDM/UFO.cxx src/FDM/SP/MagicCarpet.cxx src/GUI/dialog.hxx
 	src/Instrumentation/HUD/HUD.hxx
 	src/Instrumentation/HUD/HUD_runway.cxx
 	src/Instrumentation/KLN89/kln89.cxx src/Main/fg_init.cxx
 	src/Main/viewer.cxx src/Main/viewmgr.cxx
 	src/Model/panelnode.cxx src/MultiPlayer/mpmessages.hxx
 	src/Scenery/tilemgr.cxx src/Traffic/SchedFlight.cxx
 	src/Traffic/TrafficMgr.cxx
2009-03-18 08:00:08 +01:00
frohlich
7e73a87882 Improove FGTileMgr::scenery_available for small ranges.
Use SGGeod in FGTileMgr, FGScenery apis.

Modified Files:
	src/AIModel/AIBallistic.cxx src/Main/main.cxx
	src/Scenery/scenery.cxx src/Scenery/scenery.hxx
	src/Scenery/tilemgr.cxx src/Scenery/tilemgr.hxx
	src/Scripting/NasalSys.cxx
2009-03-18 08:00:07 +01:00
frohlich
b125315e50 Avoid SGLocation usage.
Again, the previous commit did not complete for some reason.

Modified Files:
        configure.ac src/AIModel/AIBase.cxx
        src/ATCDCL/AILocalTraffic.cxx src/FDM/Makefile.am
        src/FDM/flight.hxx src/FDM/LaRCsim/LaRCsim.cxx
        src/Main/Makefile.am src/Main/fg_init.cxx src/Main/main.cxx
        src/Main/viewer.cxx src/Main/viewer.hxx
        src/Scenery/tilemgr.cxx src/Scenery/tilemgr.hxx
2009-03-11 23:14:34 +01:00
frohlich
85be5659a7 Remove SGLocation based api.
Modified Files:
	src/Scenery/tilemgr.cxx src/Scenery/tilemgr.hxx
2009-03-11 23:14:34 +01:00
frohlich
1845a95fd3 Add scenery functions working on SGGeod in place of SGLocation. 2009-03-11 23:14:33 +01:00
frohlich
fc35624a4f Use that static material function instead of the member one.
Modified Files:
 	src/FDM/groundcache.cxx src/Scenery/scenery.cxx
2009-02-27 23:42:34 +01:00
Tim Moore
0603aba9ae Merge branch 'tbm/graphics-bug' into next 2009-01-04 00:03:26 +01:00
timoore
ada7f622d7 Change the order of the main cameras from NESTED_RENDER to POST_RENDER
This seems to be accepted OSG usage for slave cameras. It's possible
that this order is important for rendering instruments that use RTT
textures on systems without frame buffer object support. I'm thinking
that the resulting bugs may be implicated in the "black rectangle" problem.
2009-01-03 23:56:03 +01:00
jmt
0f4f044a94 Kill off many Point3D includes, and a couple of uses in the HUD code.
Requires a SimGear update to get some new SGGeodesy helpers.
2008-12-26 12:28:05 +00:00
timoore
77318b23a5 msg 2008-11-25 22:49:19 +00:00
timoore
4f4434787f Cleanup of camera code in preperation for shadows
Partition depth in CameraGroup:
Remove the ViewPartionNode scenegraph node. The split rendering of the
scene, done to avoid Z buffer precision problems, is now done by two
slave cameras of the viewer.

Rename FGManipulator to FGEventHandler.

Remove virtual member functions that aren't required for event handlers.

Begin using camera group properties to update cameras at runtime;
Initially only the viewport properties are used.

When no camera group is found in the property tree (the default),
create the properties for one. Expose the default window by name.

Add a test for Boost headers to configure.ac. Boost is now a
dependency.

Remove GLUT and SDL versions of the OSG graphics.
2008-11-18 22:45:57 +00:00
timoore
6f802959ce CameraGroup class for managing multiple cameras.
CameraGroup supports cameras opened in different windows or in the
same window, with flexible view and perspective specification.

Clean up mouse click handling via osgViewer. Don't let any camera
"have focus;" this forces events to be reported in window coordinates
and simplifies life. Don't use the osgViewer::View::requestWarpPointer
method; instead use our own code which only deals with window
coordinates.

Make glut and sdl versions work with CameraGroup too.
2008-08-01 15:57:29 +00:00
timoore
5d5b1f3ca4 One more try at the osg 2.5.1 pager fix 2008-06-03 07:32:03 +00:00
timoore
97d86e10f7 Fix typo in DatabasePager interface changes for OSG 2.4 2008-06-03 05:36:19 +00:00