Mathias Froehlich
b322864ef4
Fix detection of airports in the stg loader.
2014-03-16 16:08:31 +01:00
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
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
Mathias Froehlich
541606e00d
hla: Lower the log level of two alerts.
...
Trying to interpret the object template in a yet
unimplemented format is not worth an alert.
2012-12-22 10:12:45 +01:00
Mathias Froehlich
1e6ba0cdc4
hla: Add SGQuat data elements.
2012-12-02 17:30:08 +01:00
Mathias Froehlich
75db4c29b8
hla: Add integer valued vector types.
2012-12-02 17:30:08 +01:00
Mathias Froehlich
914d3e6a2b
math: Add integer valued vector types.
2012-12-02 17:30:08 +01:00
Mathias Froehlich
ff678a5ad7
hla: Remove obsolete typedefs.
2012-12-02 17:30:08 +01:00
Mathias Froehlich
be73c0fe43
hla: Use a different extrapolation method for HLALocation.
2012-12-01 08:02:30 +01:00
Mathias Froehlich
e5afc6f029
SharedPtr: Avoid double dereference when calling clear().
2012-12-01 08:02:29 +01:00
Mathias Froehlich
1a68d34663
hla: For setting data types recurse into array data elements.
2012-11-25 22:27:14 +01:00
Mathias Froehlich
72a0ff706d
hla: Use an implementation file for SGLocation.
2012-11-25 22:27:04 +01:00
Mathias Froehlich
420e43d47d
sphere: Implement sphere inside sphere.
2012-11-24 09:55:34 +01:00
Mathias Froehlich
3c749d4774
hla: Route failures in message processing into the HLA layer.
2012-11-24 09:55:26 +01:00
Mathias Froehlich
d4310a7f3b
hla: Make use of SGLocation.
2012-11-24 09:55:16 +01:00
Mathias Froehlich
f892d88c10
math: Implement SGLocation.
...
New simple class to encapsulate a cartesian position
and orientation pair with few handy methods.
2012-11-24 09:54:57 +01:00
Mathias Froehlich
9fd90e26f7
hla: Remove HLADataElement::Path based attribute handling.
2012-11-11 20:39:59 +01:00
Mathias Froehlich
201cb61f84
hla: Use HLADataElementIndices for HLAInteractionClass.
2012-11-11 17:09:31 +01:00
Mathias Froehlich
71141e830a
hla: Use HLADataElementIndices for HLALocation.
2012-11-11 14:27:35 +01:00
Mathias Froehlich
7dc8bf3aa4
hla: Fixes for the data element index implementation.
2012-11-11 14:27:34 +01:00
Mathias Froehlich
6d045a9403
hla: Introduce HLADataElementIndex.
2012-11-08 22:51:02 +01:00
Mathias Froehlich
8c57a77d7e
hla: catch exceptions in processMessages()
2012-11-08 22:50:52 +01:00
Mathias Froehlich
1f585d6719
hla: Use raw pointers for HLAFederate::_insert methods.
2012-11-08 22:50:39 +01:00
Mathias Froehlich
6c111f55aa
hla: Warn about creating an object class or interactions classes twice.
2012-11-08 22:50:26 +01:00
Mathias Froehlich
b01693f426
Remove osg header from non simgearscene file.
2012-11-08 22:50:10 +01:00
Mathias Froehlich
a7f64cf7aa
scenery: put stg loaded models under a common lod node.
2012-11-01 07:19:38 +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
7bcf02a0b4
Handle isnan at a more central place.
...
Do not distribute architecture specific
code across a lot of places.
2012-09-27 18:44:14 +02:00
Mathias Froehlich
fcd1733787
Fix line segment plane intersect.
2012-09-27 18:21:13 +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
Mathias Froehlich
052382af89
cmake: Make rti/hla compile again.
2012-09-16 21:13:56 +02:00
Mathias Froehlich
18f7102461
stg: Fix typo.
2012-09-16 18:43:05 +02:00
Mathias Froehlich
efddcb18a3
bvh: Fix headless build.
2012-08-27 18:00:01 +02:00
Mathias Froehlich
54ff2bec90
scene: Allow ground based elevations in stg files.
...
PLEASE do not use this feature for many objects over
fine tesselated ground. But for convenience make this work.
2012-08-26 15:08:55 +02:00
Mathias Froehlich
287ed83de7
btg: Lights are much better visible.
2012-08-26 15:08:48 +02:00
Mathias Froehlich
dd13924a67
bvh: add missing include.
2012-08-26 15:08:42 +02:00
Mathias Froehlich
a050a3b80f
scenery: OptionsReadFileCallback for use with reader writer options.
...
The new callback has a default implementation of the callback
methods that do call back into the registrys callback before
calling the registrys implementation directly.
This is meant to be used together with ReaderWriterOptions that
still want to call back into the normal callback chain of the
registry.
2012-08-26 15:08:33 +02:00
Mathias Froehlich
f1201eaebc
scene: Reorganize stg loading.
...
This is in preparation loading the non btg objects
in a seperate page node. Reorganize this code again.
2012-08-26 15:08:20 +02:00
Mathias Froehlich
68dd50ecbc
stg: Add flag to load only specific parts of the stg files.
...
The flags are meant to be used for fgelev and for an ai
module that will probably only need ground elevation queries
in those reagions where the aircraft simulated there will roll
that is on airports.
2012-08-25 08:47:09 +02:00
Mathias Froehlich
2129cf5aa6
bvh: Implement paging for osg derived bvh trees.
2012-08-24 21:25:26 +02:00
Mathias Froehlich
cf1bdcef46
bvh: Add an abstract pager implementation.
...
Implement a paging implementation for bounding
volume hierarchy nodes. We will need this for
hla clients that need ground queries.
2012-08-24 21:25:17 +02:00
Mathias Froehlich
7a879e2abf
bvh: Introduce BVHMaterial independent of SGMaterial.
...
The bounding volumes in core should not depend on scenery.
Therefore reference material properties relevant for the BVH
tree in BVHMaterial.
2012-08-24 21:25:11 +02:00
Mathias Froehlich
22878b6f89
bvh: Move the basic bounding volume tree functionality into core.
...
The basic boundignvolume implementation does only need math and
geometry. As such it is agnostic to the scenegraph being used.
Only the parts building this query structure from terrain
depend on the implementation of the terrain.
So, move this into the simgear core component.
2012-08-24 21:24:57 +02:00
Mathias Froehlich
b18c92f515
hla: Add virtual method for creating data elements.
2012-08-12 12:06:42 +02:00
Mathias Froehlich
3a0ae3df58
hla: Do not call time advance with non positive increment.
2012-08-04 14:38:10 +02:00
Mathias Froehlich
f71f129e3b
hla: Remove reference to deprecated VariantDataType.
2012-07-29 20:58:07 +02:00
Mathias Froehlich
ee688166ab
hla: Remove deprecated ObjectModelFactory interface.
2012-07-29 20:44:58 +02:00
Mathias Froehlich
ed66c37de2
hla: Remove deprecated AttributeCallback.
2012-07-29 17:33:19 +02:00
Mathias Froehlich
a5c6f8023b
spt: Disable particle systems under a PagedLOD.
2012-07-21 12:55:53 +02:00
Mathias Froehlich
c82da8c9c8
hla: Add HLABoolDataElement.
2012-07-21 12:55:53 +02:00
Mathias Froehlich
07d1358e08
hla: Make HLAFixedRecordDataElement work with delayed data type setting.
2012-07-21 12:55:53 +02:00
Mathias Froehlich
1212109c03
math: Remove obsolete commented out code.
2012-07-21 12:55:53 +02:00
Mathias Froehlich
d4db4fcac3
hla: Remove deprecated methods from HLAObjectClass
2012-07-21 12:55:53 +02:00
Mathias Froehlich
1f46c79396
hla: Remove deprecated tick method.
2012-07-21 12:55:53 +02:00
Mathias Froehlich
199419ae62
hla: Remove deprecated types and methods from HLADataElement.
2012-07-21 12:55:53 +02:00
Mathias Froehlich
39a4d55866
hla: Remove deprecated HLAVariant* in favour of HLAVariantRecord*
2012-07-21 12:55:53 +02:00
Mathias Froehlich
3796ce4d86
Runway signs: avoid adding empty group without signs.
2012-05-21 07:25:14 +02:00
Mathias Froehlich
23d4628d88
ReaderWriterSPT: Cull out tiles that we look at from downside.
...
Add a cull callback that culls away complete tile areas that
we look at from the far away downside.
2012-05-19 16:09:58 +02:00
Mathias Froehlich
29462005b7
Fix typo in SGGeodesy.
...
Pointed out by Carl Godkin.
Thanks!
2012-04-01 17:50:49 +02:00
Mathias Froehlich
a592488f3e
scenery: Remove redundant setting the property root.
...
The same value was extracted out of the same options value
in the code above. So, skip resetting to the same value.
2012-03-28 07:47:31 +02:00
Mathias Froehlich
191675cc79
scenery: Only run SGModelData in the topmost model.
...
It looks like that we loose the nasal script stored
in the property tree when this callback is issued
multiple times.
This should fix
http://code.google.com/p/flightgear-bugs/issues/detail?id=714
2012-03-28 07:44:41 +02:00
Mathias Froehlich
df2e5bf39f
Revert "scenery: Use correct property root in xml loading."
...
This helps for one symptom but it does not fix the
underlying problem. So ...
This reverts commit 986d2cc42a .
2012-03-28 07:34:36 +02:00
Mathias Froehlich
986d2cc42a
scenery: Use correct property root in xml loading.
...
Really query for the root node when loading xml files.
This should fix
http://code.google.com/p/flightgear-bugs/issues/detail?id=714
2012-03-22 08:38:16 +01:00
Mathias Froehlich
b11c13fb9f
scenery: Really, most people don't care for the noise.
2012-03-16 07:27:44 +01:00
Mathias Froehlich
a5435b7d8c
scenery: Make stg loader files members of the loader.
2012-03-16 07:22:16 +01:00
Mathias Froehlich
b5fb829468
scenery: TileEntry and TileCache have moved back to flightgear.
2012-03-15 20:43:31 +01:00
Mathias Froehlich
43fceaf3a4
scenery: Move the stg read code.
...
Move the code reading the stg files
into ReaderWriterSTG.cxx.
2012-03-15 20:33:12 +01:00
Mathias Froehlich
8cb8395a24
scenery: ModelLoadHelper is no longer needed.
2012-03-15 20:08:38 +01:00
Mathias Froehlich
2a2be51b8f
scenery: move static ReaderWriter proxies around.
...
Not yet sure where they end, but make sure they are currently pulled.
... now watching jenkins.
2012-03-15 19:45:51 +01:00
Mathias Froehlich
5a5d65134e
scenery: Accumulate stg files until we find an OBJECT_BASE.
...
This should recover most of the old scenery loading behavior
before the last change. The z-fighting due to model duplication
does not happen over solid ground. Sea tiles are still broken.
2012-03-15 08:02:35 +01:00
Mathias Froehlich
0a96f4e145
scenery: Allow switching off particle systems on scenery load.
2012-03-11 14:20:33 +01:00
Mathias Froehlich
ba21713329
scenery: Allow switching off bvh generation.
2012-03-11 14:20:07 +01:00
Mathias Froehlich
32ef925a79
hla: Add convenience function to set version by string.
2012-03-11 09:21:47 +01:00
Mathias Froehlich
c62c778c88
hla: Enalble creating object instances without object class.
...
This enables creating HLAObjectInstance instances without
valid initial object class pointer. This is useful for local
implemented object instances.
2012-03-10 14:26:19 +01:00
Mathias Froehlich
2f0a6fdb67
hla: Remove old comment.
2012-03-10 08:30:02 +01:00
Mathias Froehlich
3693e3600c
scenery: rework stg loading code.
...
This change reworks the code block loading the stg files.
It fixes a long standing problem where we end up loading
similar models from different entries of the scenery
path at the same geographic location. This usually results
in models that appear to have z figting, even if the isolated
model does not show z fighting at all.
As a result the lookup sequence for models and scenery has
changed a bit. This should be closer to what it supposed to
be and did not show any problems on the areas and sceneries
I tested.
2012-03-08 07:15:14 +01:00
Mathias Froehlich
fbb7c84409
scenery: Remove unused argument from runway signs.
2012-03-07 06:36:27 +01:00
Mathias Froehlich
cc8977b83d
hla: include config.h and compiler.h in implementation files.
2012-03-05 06:59:37 +01:00
Mathias Froehlich
50380bc6c5
hla: Provide access to the parent federate.
2012-03-04 21:35:16 +01:00
Mathias Froehlich
9700e46e47
spt: Make use of newly provided earth texture.
2012-03-04 20:10:22 +01:00
Mathias Froehlich
036c0034c3
hla: Fix the way derived classes accumulate attributes.
2012-03-04 19:56:43 +01:00
Mathias Froehlich
f5067b058c
scenery: Do not use a seperate set of options for loading the model.
...
This fixes a problem introduced in commit
4e24095d8b .
Also this should fix Bug #698 .
2012-03-04 17:09:24 +01:00
Mathias Froehlich
0d9b247da1
scenery: Only add trasnform matrices on successful loaded models.
2012-03-04 13:07:41 +01:00
Mathias Froehlich
c9165a565b
Use an implementation file for SGReaderWriterOptions.
2012-03-04 08:40:56 +01:00
Mathias Froehlich
49d8b96768
Centralize osgDB::Option handling in SGReaderWriterOptions.
2012-03-04 08:33:21 +01:00
Mathias Froehlich
5ad6eb937b
Make use of SGReaderWriterOptions::copyOrCreate in SGModelLib
2012-03-04 08:17:10 +01:00
Mathias Froehlich
f66e023ea8
Make use of SGReaderWriterOptions::copyOrCreate in SGMaterial.
2012-03-04 08:15:00 +01:00