Commit Graph
1154 Commits
Author SHA1 Message Date
Mathias Froehlich d90abdcb44 scenery: Make static scenery static. 2013-02-25 06:55:35 +01:00
Mathias Froehlich 4a31045fd9 spt: Make the range multiplier configurable. 2013-02-25 06:42:55 +01:00
Mathias Froehlich 249155987d spt: Normalize the bucket box meta filename lengths. 2013-02-25 06:42:55 +01:00
Mathias Froehlich 2ae7fc244b spt: Expose the paging levels to osg options.
The levels at which page nodes are built is exposed by an
osg database pager option SimGear::SPT_PAGE_LEVELS which could
contain a blank separated list of levels where paging occurs.
Also the database pagers paths are searched for static lower
level of detail tiles in case they are available.
2013-02-25 06:42:55 +01:00
Mathias Froehlich fafa70c6bc spt: Use vbos for geometry. 2013-02-25 06:42:40 +01:00
Mathias Froehlich 49162a7a64 stg: Defer loading models into a paged lod node.
This defers loading the models into a paged lod node
that is evaluated at a later point in time. That should
help for memory problems with higher visibilities.
2013-02-25 06:42:40 +01:00
James Turner ba020245f9 Fix jpeg-httpd compilation. 2013-02-11 12:51:20 +00:00
James Turner 79fefc1ff9 Support arbitrary parameters to bindings.
Use this to supply window X/Y to hover bindings.
2013-02-10 15:07:55 +00:00
James Turner d9b01ca5de Foundations of hover support in pick-callbacks. 2013-02-09 11:11:53 +00:00
James Turner 768a8c1062 Give terrasync a buffered log. 2013-02-08 19:37:47 +00:00
James Turner 34d3c63384 Fix bucketBoxTest linkage. 2013-02-07 17:53:34 +00:00
Christian Schmitt 02be490466 Missing headers 2013-02-07 18:20:57 +01:00
Stuart Buchanan fd8369142a Building performance improvements.
Use sensible LoD range of 10km and gradual fade-out to 20km rather
than fixed 20km+ LoD range.  Also make deeper quad-tree to make
culling easier.
2013-02-06 21:53:57 +00:00
James Turner 235c29913a Make the knob mouse-wheel direction configurable.
Add a global setting to control the mouse-wheel direction of the knob; a future commit will expose this in the FG GUI.
2013-02-03 17:21:50 +00:00
James Turner 0870407f65 Add 'release' bindings to knob animation.
Currently this fires on button release, but also after any mouse-wheel movement (since they are sent as buttons). This feels slightly wrong, but can't decide how a spring-loaded know would work, when interacting via the mouse-wheel. Comments welcome.
2013-02-03 17:11:05 +00:00
James Turner e8156c6bd9 Knob animation: shifted mode binding.
As part of this, pass the osgGA GUIEventAdapter down into the pick callbacks, which seems reasonable to me. If anyone can foresee issues with this, please let me know and I can adjust the API.
2013-02-03 16:33:30 +00:00
James Turner 53b9fd2110 Support preview mode in the model loader.
This makes fgviewer / fgfs --viewer mode useful with models containing Rembrandt light volumes.
2013-01-31 16:46:02 +00:00
James Turner 4d4e474464 Initial prototype of knob animation. 2013-01-31 00:15:09 +00:00
James Turner a58b41e7d2 Pick animation moved to its own file.
Preparatory work for adding more pick animations which will share some
internals with this code.
2013-01-30 21:51:41 +00:00
Mathias Froehlich 4db05e97c5 spt: The bucket size case is already handled above. 2013-01-29 07:01:58 +01:00
Mathias Froehlich 3a668232c8 spt: Introduce a third layer of paged nodes. 2013-01-29 07:01:50 +01:00
Mathias Froehlich 2d72bf4308 spt: Put the sea level textured tiles also under a transform node. 2013-01-20 15:33:25 +01:00
Mathias Froehlich f4e694afa7 spt: Consistently return references in the loader. 2013-01-20 15:33:25 +01:00
Mathias Froehlich 55610bae70 spt: Use SGBox to build up the bounding spheres for the tiles. 2013-01-20 15:33:25 +01:00
Mathias Froehlich 08351e0df2 bucket: Make no bucket cross the 0 and 180 deg longitude border.
Change the bucket tiling at the poles not to cross the
0deg longitude and not to cross the 180deg longitude line.
This lets some special cases disappear for the buckets as well
as for the hierarchical level of detail spt loader.
Also change the last degree tiles from spanning 360 degrees to
12 degrees. Before we had 8 nested rings which neither helps
scenery paging nor culling. With that change the chunks are
about the same order of size than any other tile. Also the
tile shapes are much more friendly for culling and paging.
Also in presence of the current scenery, this polar tiles contain
as of today just totally broken geometry which tells me that
also the scenery generation process did not like these rings
for the tile shapes.

The impact on the current scenery is low. With this change the
polar regions do no longer load the tiles that are available
in the current scenery builds. The last degree tiles are broken
in this scenery version anyway. The next degree that is changed
will really loose some tiles that were sensible as of today.
All these areas are replaced with sea tiles by the old paging
structure. So, you will have at least ground below you when you
fly there. A hopefully comming soon scenery rebuild will
use this new tiling structure and thus will be the first one
providing closed polar caps.
2013-01-20 15:33:25 +01:00
James Turner afc89cdd95 Tweak libSvn usage: fixes a crash on Mac.
Work-around a crash on certain Mac builds (I can't tell why other work fine) where the called parameters to apr_pool_create_ex are problematic. Explicitly pass the default values for the function.
2012-12-22 23:55:37 +00:00
Stuart Buchanan 66786651b0 Fix RNG so it is passed in from above rather than generating the same
seed continuously.
2012-12-05 22:10:45 +00:00
Thomas Geymayer 229837b14c Fix some compiler warnings. size_t/int/unsigned conversions and extra ';' 2012-11-29 20:20:40 +01:00
ThorstenB f513001798 #942 segfault with --log-level=debug when random buildings enabled 2012-11-22 21:55:11 +01:00
Christian Schmitt 31aa0ddabe Implement runway guard lights and tweak the hold short lights animation a bit 2012-11-22 16:42:56 +01:00
James Turner 80dc28bfb5 Modernise the mat lib header, remove 'using std' 2012-11-20 17:10:13 +00:00
Stuart Buchanan 279445d6bc For clouds, use a RNG seed that only changes every 10 minutes.
This allows multi-process deploymentes to keep their clouds in sync.
2012-11-09 20:25:53 +00:00
Thomas Geymayer 53dea9b069 Move parseColor to scene/util
parseColor is used to parse a CSS color string into an osg::Vec4
which is only available in SimGearScene. If someone needs the
function also in SimGear headless mode we have to think about
where to better place this function.
2012-11-05 17:58:24 +01:00
Mathias Froehlich a7f64cf7aa scenery: put stg loaded models under a common lod node. 2012-11-01 07:19:38 +01:00
Christian Schmitt 8ddb99f62f pt_lights: 9 seconds+ break for the ODALS flash sequence is a bit too much. Set it to 2 seconds. 2012-10-23 19:09:56 +02:00
Stuart Buchanan 81d5b651d2 Change default tree-max-density-angle-deg to 30 and tree-zero-density-angle-deg to 45, as redommended by Thorsten Renk to account for our scenery generally rendering slopes shallower than they are IRL. 2012-10-10 19:57:16 +01:00
Stuart Buchanan ea4ed7cdd1 Reduce tree and object cover on steep slopes, configurable through materials.xml 2012-10-05 21:59:13 +01:00
Mathias Froehlich 2fb8999ac2 scenery: remove default zero reader writer options argument. 2012-10-03 22:04:47 +02:00
Mathias Froehlich 9c9bfc1a98 scenery: Make sure makeEffects has reader writer options. 2012-10-03 21:59:09 +02:00
Mathias Froehlich c04ec5953f bvh: Build bigger leaf nodes for paged bvh nodes.
Flatten the leaf nodes in the paged bounding volume tree
as good as possible. The implementation still assumes a
whole world database which actually holds for our usual
scenery.
2012-09-27 18:21:13 +02:00
Mathias Froehlich 63aa16b97c scene: Factor out a common primitive functor.
This kind of work is done two times for different
flavours of bounding volume generation. Factor
out and use this in BVHPageNodeOSG.cxx and
BoundingVolumeBuildVisitor.hxx.
2012-09-27 18:21:13 +02:00
Mathias Froehlich cafbf860be bvh: Make BVHPageNode::_Request fields private. 2012-09-27 18:21:13 +02:00
Frederic Bouvier 700b0bc776 Provide a definition for GL_SAMPLE_ALPHA_TO_COVERAGE_ARB 2012-09-26 08:38:04 +02:00
Stuart Buchanan 25130e3c82 Add alpha-to-coverage GL parameter to effects code. 2012-09-25 22:51:37 +01:00
Christian Schmitt 81ef922f02 mat.cxx: fix an error reported by Valgrind 2012-09-19 10:10:14 +02:00
Mathias Froehlich 18f7102461 stg: Fix typo. 2012-09-16 18:43:05 +02:00
James Turner e8c2483432 De-virtualise SGSky to avoid a clang warning.
Clang was complaining that SGSky has virtual methods, but no virtual destructor. It turns out we're never subclassing SGSky - it's used directly. Hence, remove all the 'virtual' attributes from its methods.
2012-09-16 16:34:10 +01:00
James Turner 47d88bcfa7 Standardise SimGear libraries, for static vs shared.
Always create only two SimGear libraries: SimGearCore and SimGearStatic, regardless of whether we're building static or shared. This requires an updated to FindSimGear.cmake module, for the static configuration.
2012-09-16 16:04:08 +01:00
Christian Schmitt e4dacaf0d2 pt_lights: softly fade in and out the blinking lights 2012-09-14 17:07:07 +02:00
Christian Schmitt 2906a2d007 pt_lights: add some randomness to the blinking interval of the hold short lights 2012-09-14 10:14:31 +02:00