Automatic Release Builder
e7598df4d3
new version: 2016.2.0
2016-02-17 21:16:33 +01:00
Automatic Release Builder
63e7a1fbb4
new version: 2016.1.1
2016-02-17 21:16:32 +01:00
Torsten Dreyer
951859d8a7
correct user-agent string for terrasync
2016-02-15 16:53:31 +01:00
James Turner
41f40a9a10
Fix misnamed macro.
...
- should fix TerraSync user-agent.
2016-02-08 09:37:35 +00:00
Rebecca N. Palmer
a6290e367a
math: 'void getMaxSubdiv' does not make any sense
...
Fixes build failure with GCC 6: https://bugs.debian.org/812014
(getMaxSubdiv is currently unused)
2016-02-06 21:16:27 +00:00
James Turner
af0a51930e
CMake: don’t export build to build tree
...
- only export targets to the install tree, since this is
hopefully compatible with CMake 2.8
2016-02-02 18:33:20 +00:00
James Turner
ccb5d05eb4
Fix headless build for CMake export
2016-01-30 14:29:12 +00:00
James Turner
9d7402242a
Work on CMake export of targets.
2016-01-29 23:15:07 +00:00
James Turner
819833a560
VS2013 compile fixes.
...
- mostly about return type conversions.
2016-01-27 14:02:27 +00:00
Gijs de Rooy
576ff21488
TerraSync log typo
2016-01-20 12:16:14 +01:00
James Turner
b60f8b4989
New log class for terrasync
2016-01-16 15:49:58 -06:00
James Turner
096d625445
Allow use of noreturn attribute with Clang
...
- other compilers could also be enabled in the future.
2016-01-12 12:48:34 -06:00
James Turner
dad77b3983
Fix a Simgear compile failure.
2016-01-09 09:45:43 -06:00
James Turner
598b64fa95
Linux test_HTTP fixes.
...
libCurl HTTP unit-test fixes.
2016-01-08 12:17:02 -06:00
James Turner
b5d6aa3fe4
Linux test_HTTP fixes.
2016-01-06 12:57:04 -06:00
James Turner
f32063e6dd
Jenkins build fixes.
2016-01-06 00:07:30 -06:00
James Turner
3d9d44cf73
Fix negative loop counts when dt is small.
2016-01-05 23:18:41 -06:00
James Turner
ac84115ac3
Remove obsolete member
2016-01-05 23:17:20 -06:00
James Turner
d58607242e
Merge branch 'next' of ssh://git.code.sf.net/p/flightgear/simgear into next
2016-01-05 20:43:25 -06:00
Torsten Dreyer
7afd2be652
Version 2016.1.0
2016-01-05 20:45:11 +01:00
James Turner
f256d45b65
Quiet a debug message.
2016-01-04 13:36:32 -06:00
James Turner
edf15e9f55
Quite some debug output from the materials caches.
2016-01-03 21:51:58 -06:00
James Turner
2bb24f43fb
New accessors for variant support.
2016-01-03 20:57:19 -06:00
James Turner
be0447d4c0
Fixes for stalling scenery downloads.
...
- handle closed connections equivalent to IDLE, for timeout purposes
- if the server closes the socket in WAITING_FOR_RESPONSE state, fail
the first sent request when restoring.
Note this does not explain why the server sometimes closes the socket
in this way, but at least it now causes a detectable failure.
2016-01-03 11:58:22 -06:00
James Turner
ef7a0dc5a3
Trying to debug HTTP timeouts
2016-01-01 17:17:55 -06:00
Erik Hofman
5d754c0419
Fix a very rare nan where r_earth/position_radius > 1.0
2015-12-29 15:49:12 +01:00
Erik Hofman
1f23fb89c0
Remove the dependency on boost for STANDALONE mode
2015-12-24 14:18:53 +01:00
Erik Hofman
584ee1364f
use the proper namespace
2015-12-23 10:36:03 +01:00
Erik Hofman
1e32c24a17
Fix two comparison between signed and unsigned integer warnings
2015-12-11 11:09:39 +01:00
James Turner
20ea55bdbc
Set macos-min-version for C files too
...
Should fix another 10.7 issues (Nasal code is .c)
2015-12-10 14:53:17 -06:00
James Turner
c62b4467b4
Templated helper to retrieve a subsystem
...
- example of naming a subsystem
2015-12-10 14:52:04 -06:00
Erik Hofman
31095c39cc
Make it possible to tie the absolute position to a property
2015-12-10 11:50:20 +01:00
James Turner
05d9d7cae8
On Mac, force setting macon-min-version
...
- the CMake option seems to be erratic, it works locally but not
on the Jenkins machine for inexplicable reasons.
2015-12-08 20:42:43 +00:00
James Turner
78a548b861
Expose catalog name directly.
2015-11-29 12:43:20 +00:00
Torsten Dreyer
6be4ad27ee
Add fg_root and cwd to the search path for loaded models
...
ref: http://sourceforge.net/p/flightgear/mailman/message/34650992/
2015-11-27 11:11:42 +01:00
Torsten Dreyer
589c5ba35a
SGMaterialAnimation: Better handling of missing texture
...
Don't retry loading a missing texture on every frame.
Emit a warning message instead and retry on the next
change of the textures name.
2015-11-27 11:09:16 +01:00
James Turner
81d668784a
Fix spelling of Find(CURL)
2015-11-24 00:09:19 +00:00
James Turner
75ad5a7e5c
Whitespace fixes.
2015-11-23 17:57:46 +00:00
James Turner
3f20a3d2c6
Fix for catalog adding/removing bugs
2015-11-23 17:57:36 +00:00
James Turner
a57e969639
Optional use libCurl as the HTTP client.
...
Will permit HTTPS for packages in the future, disabled by default
for the moment.
2015-11-22 23:53:46 +00:00
James Turner
23b8c86e78
More whitespace fixes.
2015-11-22 23:53:46 +00:00
James Turner
5c9ca9cbe2
EOL cleanups.
2015-11-22 22:36:54 +00:00
James Turner
5676f96fbf
Require Cmake 2.8.11
...
- drop OldGNUInstallDirs work-around as a result
2015-11-22 22:34:31 +00:00
Rebecca N. Palmer
4104f7d18f
SGPath(): make realpath() suitable for fgValidatePath
...
Handle non-existent files, drop obsolete workaround
2015-11-21 21:35:15 +00:00
Thomas Geymayer
10e6bbc2c5
SubsystemMgr: prevent double delete and use shared pointers.
2015-11-20 12:34:46 +01:00
Stuart Buchanan
21e6dd34b2
QuadTree fix for large buildings.
...
QuadTree relies on a bounding box to set up correctly.
ProxyNodes don't have a BB until the model is loaded,
causing the QuadTree to collapse if the DB loader can't
keep up with the STG loader.
Fix this by creating a default BB before the model
is loaded.
2015-11-06 21:38:53 +00:00
Erik Hofman
319922f044
Add the option to set the reference name afterwards (but before calling play()
2015-11-05 15:33:06 +01:00
Torsten Dreyer
ff3efaee93
Fix wrong log-class for debug message
2015-11-02 10:56:17 +01:00
Stuart Buchanan
08fb433923
Use quadtree to improve culling of STG objects
2015-10-29 20:07:12 +00:00
Stuart Buchanan
1a752d28a4
Remove max density 10000m for surface lights.
2015-10-22 20:28:37 +01:00
Thomas Geymayer
00a20409f7
Canvas: use weak pointer to protect parent element access.
...
Using a weak pointer is the best way to ensure no invalid
pointer is used. This also fixes a possible crash in
simgear::canvas::Element::getParentStyle on destructing
canvas elements.
2015-09-30 11:54:19 +02:00
James Turner
3bfd0c872a
Avoid duplicate refresh of Catalogs
...
- also fix duplicate reporting of successful refresh
2015-09-27 23:14:50 -05:00
James Turner
945cf5d963
Improve package extraction cleanup
2015-09-27 20:39:58 -05:00
James Turner
4e40913aef
Package support progress
...
- check the catalog version explicitly when refreshing
- handle packages with distinct dir name / primary ID correctly
(requires an updated catalog XML format)
2015-09-27 19:42:08 -05:00
Erik Hofman
3bc53474ed
Revert previous change, OpenAL-Soft is not ready yet.
2015-09-22 12:36:40 +02:00
Rebecca N. Palmer
28dff1d5ca
Use our stdint.hxx, not C++11 cstdint
2015-09-21 22:09:47 +01:00
James Turner
81bfec336c
Fix missing include for uint8_t on Linux
2015-09-21 14:55:52 -05:00
James Turner
60a0c51e2b
Package support hacking
...
- rename failure code to status code, and add more to handle
cancellation.
- change caching of active Installs from Catalog to Root, to clarify
ownership
- expose download status on Install
- adjust Delegate signatures to pass more information
2015-09-20 19:34:51 -05:00
James Turner
70c5d60564
Drop explicit SDK setting on Mac
2015-09-20 19:30:04 -05:00
James Turner
1b2247103a
Fix error case on HTTPClient
2015-09-20 19:28:23 -05:00
www2
a49c3a49d3
chance the WMM epic form 1 jan 2005 to 1 jan 2015
2015-09-02 10:37:01 +02:00
www2
105438fc58
Add Update the World Magnetic Model to 2015.0
2015-09-02 10:37:01 +02:00
Erik Hofman
2910c6a77b
Thorsten Renk:
...
Add a 4th layer to the sun (next to disc, inner halo and outer halo). While the inner/outer halos change with atmosphere conditions, the new layer is supposed to represent the effect of blinding brilliance - ideally it adds a suitable ray structure to the sun. The effect is most prominent in space (where I'm most keen on seeing it admittedly) because there all atmospheric halo effects are absent and we end with a really unrealistic white disc.
Some screenshots and discussion there
http://forum.flightgear.org/viewtopic.php?f=47&t=27216
2015-08-26 12:16:56 +02:00
Erik Hofman
6dd859c75e
It looks like the current version of OpenAL-Soft has better Doppler support
2015-08-26 11:29:43 +02:00
Torsten Dreyer
b7c7f66bf3
Fix #1783 : repeated error message on console
...
This downgrades the "file not found" message to a warning.
2015-08-05 09:26:46 +02:00
Torsten Dreyer
c7a60d4dc4
Bump version to 3.7.0
2015-07-27 21:42:17 +02:00
Torsten Dreyer
a841fcc89e
bump version -> 3.6.0
2015-07-14 11:35:35 +02:00
James Turner
b91d1a3f6a
Avoid a warning on startup
...
- duplicate inits are benign, so don’t warn
2015-06-07 17:49:04 +02:00
James Turner
1378511c13
Remove some debug output.
2015-06-07 17:48:33 +02:00
James Turner
9a9cd62957
Set RPATH on Mac
2015-06-07 15:57:01 +02:00
James Turner
a9742fba7c
Fix SVN server fallback when query fails
2015-06-07 15:53:44 +02:00
Thomas Geymayer
9ea772f938
canvas::Map: remove rotation matrix on removing HDG node.
...
Return to previous rotation if autorotation to HDG is
disabled/removed.
2015-06-02 18:24:31 +02:00
Torsten Dreyer
e64902ae8c
Amend previous patch also for PropertyObject<string>
2015-05-28 12:03:48 +02:00
Torsten Dreyer
0b1399479a
PropertyObject: enable creation of property
...
add a create-flag to the node() method of a PropertyObject,
defaulting to false to maintain existing behaviour.
This could be used to add a listener to a non-existing property
without having to write a dummy-value beforehand.
Usage:
myPropertyObject->node() returns the corresponding node or NULL if
does not exist or has not been accessed before.
myPropertyObject->node(true) returns the corresponding node, never NULL.
If the property does not exist, it will gets created.
2015-05-27 20:18:22 +02:00
onox
0369d1f506
Fix position calculation of sound samples
...
Signed-off-by: Erik Hofman <erik@ehofman.com >
2015-05-18 11:46:16 +02:00
James Turner
f19cf6d56a
Packages: more unit-test coverage
2015-04-23 22:05:50 +01:00
James Turner
d12d1b2c3a
Packages: increased test coverage.
2015-04-22 23:50:08 +01:00
James Turner
b7fbb79565
Package work on version support.
...
- start adding test coverage for packages
2015-04-22 23:50:08 +01:00
Torsten Dreyer
541239ceac
StateMachine: fix transition source location
...
source should be child of transition
2015-04-21 13:45:16 +02:00
Torsten Dreyer
fd74095939
StateMachine: fix messed up entry/exit/update bindings
2015-04-21 10:02:22 +02:00
Tim Moore
b24d190e55
Merge branch 'moore/osg-current' into next
2015-04-21 00:08:00 +02:00
Tim Moore
8b351520bd
Off-by-one error in the OSG_VERSION_LESS_THAN macro
...
I was confused about when the version number gets bumped in OSG sources...
2015-04-21 00:06:22 +02:00
James Turner
5bbdcfd240
Windows versionhelpers.h support.
2015-04-20 10:58:11 +01:00
Tim Moore
51ff30f386
changes for OSG 3.3.4 and later
...
The public interfaces to osgText and osg::GLExtensions changed.
2015-04-19 22:45:59 +02:00
James Turner
6683092bb2
Select default TerraSync server automatically.
2015-04-11 23:50:33 +01:00
James Turner
2c6f9de020
Fix a clang warning
2015-04-11 21:58:23 +01:00
James Turner
686f095f1e
Explicit Mac SDK for the moment.
2015-04-11 21:58:15 +01:00
James Turner
089fc5ea0a
WindowsXP workaround for SHGetKnowwFolder
...
Fix from xDraconian after a bug report from Aleesandro.
2015-04-09 15:33:56 +01:00
James Turner
72ae14227e
Unit Test: Fixed failure of test_HTTP
...
From Scott (xDraconian)
2015-03-24 11:10:16 -05:00
James Turner
0e9948f9d4
Portability: Implemented Known Folders for Windows
...
Patch from Scott (xDraconian)
2015-03-24 11:08:36 -05:00
James Turner
0b6738b616
Portability: Fix compile errors on MSVC
...
From Scott (xDraconian)
2015-03-24 11:05:57 -05:00
James Turner
3c204e84f4
Fix missing include for Cmake 3.2.1
2015-03-17 23:32:57 +00:00
James Turner
7774b76ad2
Only detect threading library where needed
...
- avoids failure with newest CMake on Mac
2015-03-17 23:28:52 +00:00
James Turner
acd655b37b
Make flag Mac-specific.
2015-03-17 23:26:20 +00:00
James Turner
1a09683351
Fix for Cmake 3.2.1 on Mac SDK handling
2015-03-17 22:31:05 +00:00
James Turner
181afb7fd0
Catalogs: version-redirect support.
2015-03-15 21:55:54 +01:00
James Turner
9d1354f6bd
More logging for directory deletion failures.
2015-03-15 21:55:54 +01:00
James Turner
596591bb64
Catalog install feedback.
...
- also support removing (uninstalling) a catalog and
all installs relating to it.
2015-03-15 21:55:54 +01:00
Rebecca N. Palmer
a67a984d29
Make nasal/iolib.h available to flightgear (for io.open)
2015-03-13 18:19:58 +00:00
Rebecca N. Palmer
37a963da92
Move Nasal io.open to flightgear
2015-03-13 18:19:48 +00:00
James Turner
384a700e05
FreeBSD / clang fix from Gerald Laplanche
2015-03-11 09:46:03 +00:00
James Turner
7d2ecef14a
Whitespace clean-up
2015-03-11 09:43:40 +00:00
James Turner
bc72c34d0f
Terrasync logging tweaks
2015-03-11 09:43:24 +00:00
Thomas Geymayer
ca7acb1f2c
canvas::Map: Property to keep children aligned to given hdg.
...
Setting the 'hdg' property on child elements will rotate
them with respect to the heading set on the map projection.
2015-02-26 22:34:21 +01:00
James Turner
1365a02aea
Fix where we set OS-X deployment option.
2015-02-24 12:36:28 +00:00
James Turner
611785c04b
Kill off allCatalogs list.
...
No longer needed, and fixes crash on shutdown.
2015-02-20 11:31:15 +00:00
Stuart Buchanan
e5995208a9
Support for tree shadows from Thorsten RENK.
2015-02-19 21:14:07 +00:00
Stuart Buchanan
6f15bb415f
materials.xml defined vegetation Effect.
2015-02-17 21:47:51 +00:00
James Turner
ce7f78e0ca
Remove use of ‘register’ keyword in this file.
...
Clang is now warning about this, and it’s certainly useless.
2015-02-12 16:21:15 +00:00
James Turner
6323477a35
Tweak warning flags, for newer Clang.
...
No functionality changing, just less spam in the compile logs.
2015-02-12 16:21:15 +00:00
Rebecca N. Palmer
8c38f799ad
DrawElementsFacade: use ref_ptr instead of mismatched new/free
...
Found by AddressSanitizer; not seen to crash, but probably best fixed
2015-02-12 15:48:36 +00:00
James Turner
1bf0b7222d
Explicitly force libc++ on clang
2015-02-11 15:46:01 +00:00
Stuart Buchanan
0cc5374fe7
Fix VASI/PAPI so they are generated.
2015-02-10 21:19:51 +00:00
James Turner
b2ac9982d4
Better CMake policy detection
...
- thanks to Rebecca Palmer for suggesting this!
2015-02-10 17:11:31 +00:00
James Turner
84cbfb2e98
Cmake policies conditional on Cmake version.
2015-02-09 16:42:40 +00:00
James Turner
7479cadbba
Switch 10.7 on Mac and revert to using libc++
...
(Deployment on libstdc++ with the 10.9 SDK is just too painful)
2015-02-09 15:12:21 +00:00
James Turner
f711306085
Force SDK version / C++ library on Mac.
2015-02-08 13:46:09 +00:00
Peter Sadrozinski
148640be34
memory reduced tile loading.
...
- do not save the TileGeometryBin and matcach in the randomObjectCallback
- recreate matcache, and get TileGeometry from scenegraph
- split obj.cxx into three distinct files - loadBTG, load surface geometry, and load tile details
- includes fix for sceneries that have missing materials
2015-01-19 21:06:27 +01:00
Rebecca N. Palmer
27a91062bd
Fix endianness tests, allowing arm64 support
...
https://buildd.debian.org/status/logs.php?pkg=simgear&ver=3.2.0~git20140719%2B4a9125-1&suite=experimental
https://launchpadlibrarian.net/183053167/buildlog_ubuntu-utopic-arm64.simgear_3.0.0-4_FAILEDTOBUILD.txt.gz
2015-01-18 21:53:22 +00:00
Rebecca N. Palmer
dc1816bb08
Fix UpdateOnceCallback crash (bug 1554/1556/1568)
2015-01-18 21:29:19 +00:00
Torsten Dreyer
e836e85697
Bump version to 3.5.0
2015-01-17 19:33:25 +01:00
FlightGear Flight Simulator
2d00653f6e
Bump version number to 3.4.0
2015-01-17 19:26:46 +01:00
Stuart Buchanan
4647ce2da5
Protect against divide-by-zero error.
...
Patch from Emilian Huminiuc.
2015-01-15 21:47:22 +00:00
Stuart Buchanan
51d43f809e
Fix directional lighting
2015-01-05 20:50:34 +00:00
Peter Sadrozinski
370a115ab9
- remove the test of the test..
2014-12-27 13:19:29 -05:00
Peter Sadrozinski
32b60f9b80
- fix binobj unit test. Simgear now rejects zero area triangles in .btg files, and the unit test could generate them.
2014-12-27 13:08:53 -05:00
Peter Sadrozinski
beeaef3868
- fix for index overrun when building TexturedTriangleArray
...
- fix for ws2.0 zero area triangles - drop them when loading
2014-12-26 13:07:33 -05:00
James Turner
ddd9691439
Explicitly track not-found responses from SVN.
...
When SVN reports a path is not found (ocean tile), track
this data explicitly and cache the result. Reduces backend
hits for missing tiles.
2014-12-01 17:49:03 +00:00
Stuart Buchanan
9da0031039
Fix PagedLOD for random objects.
...
- Only generate the object set and flights from the data once.
- Only expire the PagedLOD node after a suitable period of time.
2014-11-28 21:57:37 +00:00
Thomas Geymayer
9537876bba
Nasal: add an naRef to ghosts to allow for proper gc of dependent objects/ghosts.
...
This allows for binding the lifetime of any nasal object to
the lifetime of a ghost. Otherwise circular references from
objects saved within the ghost would prevent the ghost from
being garbage collected.
2014-11-23 23:45:22 +01:00
Stuart Buchanan
958ae9bdf0
Fix two bugs in random object placement
2014-11-21 22:14:03 +00:00
Torsten Dreyer
023b5a09f7
Make expiry time for paged models settable from props
...
Our paged models used the default minimumExpiryTime of zero seconds
which caused frequent stutter with AI traffic loaded.
This patch sets the minimumExpiryTime to 180 seconds, more than enough
to hold the models in memory during a full standard rate turn.
The property to set the expiry time is
/sim/rendering/plod-minimum-expiry-time-secs
2014-11-19 17:23:29 +01:00
Clément de l'Hamaide
46fe57fb8d
UniformFactory: fix Rembrandt light
2014-11-16 20:22:29 +01:00
Stuart Buchanan
07e09bb88c
Support alpha for cloud definitions Thorsten RENK
2014-11-13 20:38:28 +00:00
James Turner
1b7f310ea6
Merge FreeBSD patches.
...
Taken from:
http://svnweb.freebsd.org/ports/head/devel/simgear/files/
2014-11-11 22:29:24 +00:00
Stuart Buchanan
365ddb84a7
Limit number of random objects per triangle
2014-11-07 22:22:55 +00:00
Stuart Buchanan
5fef44b11c
Change parameter name to avoid clash with cull-face
2014-10-27 22:40:27 +00:00
Stuart Buchanan
1480aa9bb8
Pass whether light is directional to shader.
...
Patch from Thorsten RENK.
2014-10-21 20:27:46 +01:00
Torsten Dreyer
75271c44a8
Precipitation updates from ThorstenR
...
Since the consensus seems to be that the precipitation clipping issue is with the panel code, attached is my proposed update for the precipitation system in SG and FG
* without corresponding control structures in FGData it falls back to default, except I have fixed an inconsistency in freezing behavior - previously rain changed suddenly to snow when the temperature dropped below zero, but the reverse transition was dragged out and gave odd visible motion with the wind as snow gradually changed back to rain with the particle speed not well defined. Now both transitions are sudden. And I see no more particles flow against the wind
* with
<!-- definitions for the detailed precipitation manager -->
<precipitation-control>
<rain-droplet-size type="float" userarchive="n">0.015</rain-droplet-size>
<snow-flake-size type="float" userarchive="n">0.03</snow-flake-size>
<detailed-precipitation type="bool" userarchive="n">false</detailed-precipitation>
<illumination type="float" userarchive="n">1.0</illumination>
<clip-distance type="float" userarchive="n">5.0</clip-distance>
</precipitation-control>
added to Environment/environment.xml, the new system allows to switch more detailed management on. This provides
* explicit setting of rain droplet size and snow flake size by the weather system
* automatic sqrt(r) scaling of the vertical speed of raindrops
* automatic transition to snow when freezing for small droplets but hail for large droplet sizes (looks like snow, but has different particle dynamics)
* an illumination scaling factor to dim the precipitating based on the light we have in the scene (I still need to devise a property rule to set this automatically)
The clip distance is also exposed now and considered at startup of the system - might be useful for e.g. airships when the gas bag provides rain cover (?) or to be simply off for open airplanes
2014-10-21 10:46:48 +02:00
Torsten Dreyer
543f1b7902
Set sun color below horizon
...
Thorsten Renk:
The following patch sets the sun color to alpha=0 when
the sun is below the local horizon, removing the oddity
that the sun is seen 'through' the terrain when the terrain
at large distance is rendered by the skydome.
2014-10-08 12:45:01 +02:00
Stuart Buchanan
93a63a0678
Further work to clean up UniformCache for Effects
2014-09-27 22:05:30 +01:00
Torsten Dreyer
2bf79a2fa1
Merge branch 'UniformFactory' into next
...
Merging in Stuart's fix for the Effect system
2014-09-27 21:50:44 +02:00
Torsten Dreyer
ab956f15c3
A better fix for crash in the Effect System
...
Stuart has improved the UniformCache approach, here are his
changes:
- We have a UniformCache so that each unique Uniform is only created once
- As part of the UniformFactory we also have a queue of listeners that are still to be added
- When the main thread sends an Update node visitor across the Effects,
all queued listeners are de-queued and added.
2014-09-27 21:48:36 +02:00
Thomas Geymayer
deceee8997
Fix compiler warnings.
2014-09-22 18:24:13 +02:00
Thomas Geymayer
b3c7d63809
Let ENABLE_TESTS enable/disable also the new Boost.Tests.
2014-09-22 18:21:52 +02:00
Clément de l'Hamaide
2026c665b2
Improve the <usage> tag feature
...
Do not load the <model> if <usage> tag is found as child.
Instead the load is triggered later by FlightGear
2014-09-21 22:05:45 +02:00
Thomas Geymayer
36fd005bb9
cppbind: check if ghost is of wrong type.
...
- Throw an exception if converting an object
from Nasal fails due to a wrong type (nil
does not throw).
- Update cppbind test cases accordingly (and
refactor another test suite to use Boost.
Test).
2014-09-15 23:42:12 +02:00
Torsten Dreyer
46bed67cce
first stab at UniformFactory
2014-09-05 11:28:58 +02:00
Torsten Dreyer
5b9af0c0aa
Revert "Partial fix for crash in SGPropertyNode::fireValueChanged"
...
This reverts commit f33ad357e9 .
2014-09-05 11:28:28 +02:00
Thomas Geymayer
85090180d0
canvas::Text: fix global StateSet and line start cursor pos with empty line.
2014-08-31 19:24:58 +02:00
Torsten Dreyer
f33ad357e9
Partial fix for crash in SGPropertyNode::fireValueChanged
...
The effect system used Listeners on property nodes to get the values
for shader uniforms. These listeners get deleted by an osg thread
causing access to freed memory when this happens while the main thread
calls fireValueChanged.
This patch changes the update method to polling for scalar properties.
This isn't 100% threadsafe, too. But at least it does not crash anymore.
2014-08-29 15:30:25 +02:00
Clément de l'Hamaide
c30ce67e16
Remove Textures.high logic
2014-08-27 22:08:20 +02:00
Torsten Dreyer
3ca7369fb2
Canvas: add stroke-linejoin handling for path elements
2014-08-26 00:08:35 +02:00
Thomas Geymayer
088ce31f7c
canvas::KeyboardEvent: C0/C1 control characters are not printable.
2014-08-25 21:49:44 +02:00
Thomas Geymayer
4f94c22241
Canvas: add method clearFocusElement.
2014-08-25 21:49:21 +02:00
Thomas Geymayer
e1791b3006
canvas::Text: clean up and expose character/cursor positions.
2014-08-23 15:54:07 +02:00
Stuart Buchanan
e608ed5a01
Use surface-lights effect for random tile lights.
2014-08-10 20:20:42 +01:00
Thomas Geymayer
35ebb16215
Canvas: prepare for keypress events.
2014-08-10 19:39:18 +02:00
Thomas Geymayer
68d0891665
Canvas: fix element mouse hit detection with OSG 3.3.2.
2014-08-10 15:37:43 +02:00
Stuart Buchanan
b11ff19a0f
Fix VS2010 lack of fminf
2014-08-10 12:54:58 +01:00
Stuart Buchanan
e7e616e07c
New materials.xml format
2014-08-09 20:34:08 +01:00
bcoconni
14f2f9e917
Added some OSG headers for the correct evaluation of the OSG_VERSION_LESS_THAN macro.
2014-08-09 19:53:19 +02:00
Thomas Geymayer
791273c61d
Update for OpenSceneGraph 3.3.2 API changes.
2014-08-09 18:13:45 +02:00
Thomas Geymayer
519326f751
Add simple keyboard event demo application.
2014-08-08 00:59:06 +02:00
Thomas Geymayer
d1f5d92a7b
Move canvas::AlignmentFlag to separate file.
...
Mapping in a separate file allows easier exposing of
values and string representation to Nasal.
2014-08-03 16:39:26 +02:00
Christian Schmitt
f448898531
Fix lights appearing three times.
...
The 3 lights showing up are fixed by my patch. It's the old way of
calculating a normal (PLIB-style) that makes them show up.
2014-08-03 13:13:59 +02:00
Thomas Geymayer
d9b66fc0ef
canvas::Layout: support for alignment.
...
Set alignment inside layouts, taking care of where
excess space is distributed.
2014-08-03 12:02:39 +02:00
Thomas Geymayer
3bcd0bafd5
Lots of (mostly) doxygen fixes/cleanup.
2014-08-01 00:13:25 +02:00
Thomas Geymayer
942181c8ae
Canvas: Support for preventDefault() on Events.
2014-07-30 17:16:26 +02:00
Thomas Geymayer
7df39b9fc8
Fallback for old Boost (also with UTF8-CPP library).
2014-07-30 12:44:21 +02:00
Thomas Geymayer
f41b18f064
Improve (mostly Canvas event related) documentation.
2014-07-29 23:57:59 +02:00
Thomas Geymayer
c5d649aa0b
Canvas: basic Keyboard event support (with input focus).
2014-07-29 22:22:20 +02:00
Thomas Geymayer
64ac22f50c
Canvas: warn for missing tff and png plugins.
2014-07-27 12:11:09 +02:00
Thomas Geymayer
719ee36f5c
Canvas: backdrop/stroke option for text (based on Gijs patch).
2014-07-27 11:05:49 +02:00
Thomas Geymayer
92851135d4
Doxygen: disable (not working) latex output and update version.
2014-07-22 12:51:01 +02:00
Thomas Geymayer
76fc47b24b
canvas::Layout: support for contents margins.
2014-07-22 12:00:24 +02:00
Thomas Geymayer
f25abad9d7
Move overflow protected add helpers to math.
2014-07-22 11:45:28 +02:00
Thomas Geymayer
23413b4781
canvas::Layout: clear parent/canvas after calling onRemove.
2014-07-21 23:56:41 +02:00
Thomas Geymayer
e036dfc5bf
Hopefully final fix for old gcc...
2014-07-21 13:26:09 +02:00
Thomas Geymayer
9260bea850
One more fix for old gcc.
2014-07-21 12:22:33 +02:00
Thomas Geymayer
c1f09034e0
Trying to make old gcc on Jenkins happy.
2014-07-21 10:54:31 +02:00
Thomas Geymayer
557e4f75b5
canvas::Layout: support for hiding items.
2014-07-21 00:25:59 +02:00
Thomas Geymayer
e71d6b24d7
cppbind: helper to call Nasal methods on NasalWidget.
2014-07-21 00:22:15 +02:00
Thomas Geymayer
726a4c6d10
canvas::NasalWidget: check for empty setGeometry callback.
2014-07-20 23:31:32 +02:00
Thomas Geymayer
6af8d32078
cppbind: fix Ghost casting/storage in polymorphic class hierarchies.
2014-07-20 23:17:33 +02:00
Thomas Geymayer
f6b16e2ba8
canvas::Element: floating point scissor coordinates.
...
GL_SCISSOR itself only supports integer coordinates, but
with reference frames different from GLOBAL transforms
influence the position of the clipping frame, possibly
resulting in wrong positions due to too low precision.
2014-07-19 20:52:17 +02:00
Thomas Geymayer
e415b08da4
canvas::BoxLayout: fix parent ref on add/remove.
2014-07-17 15:10:35 +02:00
Torsten Dreyer
1d93e8d61e
New Version: 3.3.0
2014-07-17 14:54:35 +02:00
Torsten Dreyer
4bd34991e9
New Version: 3.2.0
2014-07-16 14:56:49 +02:00
Thomas Geymayer
9709cfe20d
canvas::BoxLayout: set stretch factor by item.
2014-07-16 19:24:41 +02:00
Thomas Geymayer
a5e99ea996
Nasal: require 0o as prefix for octal numbers.
...
Using just 0 as prefix for octal number can lead to confusion
where numbers could be interpreted the wrong way (oct instead of
dec).
Lets follow the same convention as Python 3 and Ecma 262 level 6
and use '0o' as prefix which can not be confused inadvertently.
2014-07-14 18:51:11 +02:00
Thomas Geymayer
d9df10fe10
canvas::Layout: keep user provided size hints.
...
Don't let size hints layouted or calculated by Nasal widgets
override user provided hints.
2014-07-12 17:30:33 +02:00
Thomas Geymayer
f1677f5546
SGTrackToAnimation: supress wrong warnings.
2014-07-12 11:55:38 +02:00
Thomas Geymayer
cb796e374a
SGPropertyNode: add InterpolationMgr getter.
2014-07-12 01:07:28 +02:00
Thomas Geymayer
7c3491c679
Don't restore old canvasses on reset.
...
No need for this anymore as PRESERVE now works as expected.
Otherwise old canvasses are restored and do not work anymore
as the placements of the new canvasses do not apply.
2014-07-11 19:07:53 +02:00
Thomas Geymayer
6200b160ec
canvas::Element: fix cleanup (and hopefully crash)
2014-07-01 12:09:55 +02:00
Thomas Geymayer
9868fb03a2
pkg::Package: callback for installation start.
...
Allow eg. Aircraft Center to add listeners to packages to
be called if installation starts.
2014-06-30 18:36:15 +02:00
Thomas Geymayer
a69130ff10
pkg: Remove Install from list after uninstall.
2014-06-30 18:34:41 +02:00
Thomas Geymayer
0b60643053
HTTPRequest/pkg::Install: do not replace callbacks.
...
Keep a list of callbacks to allow registering multiple callbacks
to the same event. This is consistent with eg. jQuery.Deferred
and is needed for example to open multiple dialogs showing the
progress of installing a package at the same time.
2014-06-30 18:22:24 +02:00
Thomas Geymayer
dc4644bf3a
canvas::Widget: pass ghost to onRemove handler
2014-06-29 11:57:12 +02:00
Thomas Geymayer
38b766f845
canvas::BoxLayout: fix hfw layouting (fix updating size hint cache).
2014-06-28 13:08:06 +02:00
Thomas Geymayer
10d0be013e
fix g++ 4.4: "warning: suggest parentheses around ‘&&’ within ‘||’"
...
Warning does not make sense, but the old g++ complains...
2014-06-27 01:48:08 +02:00
Thomas Geymayer
5126ae5891
SGPath: fix creating paths with permission checker.
...
Check permission of the whole path and not to individual
directories, as none of the intermediate directories need
to be writeable by IORules.
2014-06-26 16:07:33 +02:00
Thomas Geymayer
49bcf49db1
Nasal: fix parsing octal/hex numbers in strings as well as during lexing.
...
Parse the same number formats (octal, dec, hex) in literals and tokens. Was
previously quite a mess, and is still not the best solution, as lexing and
string parsing uses different implementations, although they are meant to
do exactly the same conversions.
2014-06-26 14:21:18 +02:00
Thomas Geymayer
3bbb272ad5
nasal::Ghost: improve intrusive pointer storage and weak references.
...
- Just increment/decrement reference count for intrusive
smart pointers. No need to create an additional object
on the heap.
- Keep strong reference for weak pointer based ghosts
to prevent destroying objects while beeing used.
2014-06-23 13:14:07 +02:00
Thomas Geymayer
645cae184b
SGConditionRef typedef. No functional changes.
2014-06-22 15:35:31 +02:00
Thomas Geymayer
bd9fa7017f
ShivaVG: fix call to shCopyPixels.
...
It is not used anyhow, but just in case...
2014-06-21 13:09:29 +02:00
Thomas Geymayer
fc9f3abfbb
ShivaVG: check for zero before dividing.
2014-06-21 12:26:58 +02:00
Thomas Geymayer
f2f1b36df9
Nasal: better error message for non-numeric string.
2014-06-21 00:21:36 +02:00
Thomas Geymayer
03d2a166b7
canvas::CustomEvent: init bubbles member.
2014-06-19 13:04:21 +02:00
Thomas Geymayer
f0a76aa918
Use Boost.Test for strutils_test and add some md5/hex tests.
2014-06-18 18:22:31 +02:00
Thomas Geymayer
c144c3562c
Keep md5 inside simgear and use single encodeHex implementation.
2014-06-18 18:07:42 +02:00
Thomas Geymayer
e06f9462ab
Expose md5.h to flightgear for. Will need a better interface...
2014-06-17 22:32:40 +02:00
Thomas Geymayer
9aa5c3b2ae
Nasal: support for standard bitwise operators.
...
This makes bitwise operations a lot easier^^
2014-06-17 16:59:04 +02:00
Thomas Geymayer
2c41c25fcd
canvas::Text: get maximum width (if displayed on a single line).
2014-06-17 16:12:29 +02:00
Thomas Geymayer
9ffc0ae8bc
canvas::NasalWidget: ensure nasal part is destroyed
2014-06-16 23:45:52 +02:00
James Turner
bb5e07d958
Package: support for variants
...
- Catalog keeps a map from variant IDs to packages
- Package caches its ID
- Refreshing a catalog updates existing Package instances
Dropping a package from a Catalog will now warn, need to decide
a real policy for this scenario.
2014-06-15 19:55:50 +02:00
Thomas Geymayer
5024b62c0a
cppbind: queue Ghosts for deletion and delete outside gc.
2014-06-15 16:34:47 +02:00
Thomas Geymayer
82d5c605e5
canvas::Element: check if element is valid.
2014-06-15 16:30:57 +02:00
Thomas Geymayer
737b1948bf
canvas::Layout: proper cleanup/update on removing items.
2014-06-15 16:30:25 +02:00
Thomas Geymayer
1225e53162
pkg: allow 'installed' as filter criterion.
2014-06-15 13:58:12 +02:00
Thomas Geymayer
b58bf443ff
canvas::Layout: add clear method to remove all items.
2014-06-14 13:19:00 +02:00
Thomas Geymayer
9bef80fbef
Simple Markdown parser.
...
Parse just a tiny subset of Markdown, to basically collapse
multiple whitespace and do paragraphs only after two newlines.
Also one-level, unordered lists are supported. The output can
be eg. directly forwarded to canvas::Text.
2014-06-13 19:12:56 +02:00
Thomas Geymayer
36cb7a752b
canvas::Text: add heightForWidth method.
2014-06-13 00:08:57 +02:00
Thomas Geymayer
d3b211e787
canvas::Layout: support height-for-width layouting.
2014-06-13 00:03:40 +02:00
Thomas Geymayer
e3f0fad272
Package: fix property type (description)
2014-06-12 23:26:01 +02:00
Thomas Geymayer
e8f10dd2e8
pkg: Fix recursion in Install destructor.
...
Prevent creating a shared pointer from this in
destructor, which would lead to recursively
calling the descructor.
2014-06-12 23:21:56 +02:00
James Turner
edbfbd769e
Package: expose file size property.
2014-06-12 18:43:27 +01:00
James Turner
dc60cf0e67
Pkg: record live installs in Catalog.
...
Ensures active Installs can be found immediately after creation.
2014-06-12 18:43:27 +01:00
James Turner
083b364afd
Pkg: qualified ID accessor.
2014-06-12 08:50:09 +01:00
Thomas Geymayer
dd2bf418b9
canvas::Layout: remove/get child items.
2014-06-12 00:35:17 +02:00
Thomas Geymayer
97cc250047
Package: fix detection of unknown filter term.
2014-06-11 18:18:18 +02:00
Thomas Geymayer
49fc75926e
Use Boost.Test to test utf8tolatin1 - others to be converted too...
2014-06-11 00:29:17 +02:00
Thomas Geymayer
9880ba39a7
pkg: Support for install callbacks and fix memory corruption.
2014-06-11 00:19:11 +02:00
James Turner
a8c8148068
Package::existingInstall helper.
2014-06-10 21:21:30 +01:00
Rebecca Palmer
adebbe006b
utf8ToLatin1: add test
2014-06-10 20:45:05 +01:00
Rebecca Palmer
c3bc73ab2f
utf8ToLatin1: return original instead of crashing on non-UTF-8 input
...
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=750859
(In the long run we should probably fix the underlying
inconsistent-text-encodings problem, but probably not in time for 3.2)
2014-06-10 19:30:09 +01:00
Thomas Geymayer
c716cfbb07
cppbind: expose SGRect as [x, y, w, h]
2014-06-10 18:42:12 +02:00
Thomas Geymayer
ade4627f1a
Package: use correct tag for download url.
2014-06-10 00:45:03 +02:00
Thomas Geymayer
e508ff724c
canvas::BoxLayout: add custom additional whitespace (spacer/stretch)
2014-06-08 23:30:11 +02:00
Thomas Geymayer
c54e3f8101
canvas::Image: allow aspect ratio preserving display.
2014-06-08 02:16:07 +02:00
Rebecca Palmer
6925c2a2be
Downgrade "Please decompress this texture for increased portability"
...
to a warning (logged but not displayed by default),
to avoid needlessly annoying end users
2014-06-07 08:26:30 +01:00
Rebecca Palmer
398bf740d7
Fix over-read error in the test suite
...
https://buildd.debian.org/status/fetch.php?pkg=simgear&arch=mips&ver=3.0.0~git20140123%2Bf16c99-1&stamp=1391666349
2014-06-07 08:25:13 +01:00
Thomas Geymayer
e302ad092e
canvas::Image: abort http requests if image is destroyed.
2014-06-05 17:25:12 +02:00
Thomas Geymayer
7a65d42a4c
Canvas: fix transformation of clip rect.
2014-06-05 16:07:09 +02:00
Thomas Geymayer
d3a14bfd61
canvas: BoxLayout shared pointer typedef.
2014-06-04 17:48:46 +02:00
Thomas Geymayer
03cafe4547
Catalog: add method to get all packages in a catalog.
2014-06-04 17:47:29 +02:00
Thomas Geymayer
e5acc3f048
cppbind::Ghost: improve compiler error message for wrong usage.
2014-06-04 17:46:35 +02:00
Thomas Geymayer
4931ce0364
This has to work on windows now^^
2014-06-04 13:41:48 +02:00
Thomas Geymayer
e3d53e854a
Hopefully fixing windows build.
2014-06-04 12:17:00 +02:00
Thomas Geymayer
bdf6b25338
Now the real fix for old compilers...
2014-06-04 03:16:02 +02:00
Thomas Geymayer
5dddba26ac
Fix headless build and reduce include dependencies.
2014-06-04 02:46:57 +02:00
Thomas Geymayer
746fa419ed
Trying to fix problems retrieving static member address with old compilers.
2014-06-04 02:45:52 +02:00
Thomas Geymayer
7080f919e9
Fix for old versions of Boost.
...
No support for BOOST_STATIC_ASSERT_MSG before Boost 1.46.
2014-06-03 20:34:21 +02:00
Thomas Geymayer
c4e0014d74
cppbind::Ghost: safely use strong and weak references.
...
Allow using strong and weak references within the same
class hierarchy and seemlessly convert between them -
from and to Nasal.
2014-06-03 18:40:01 +02:00
Thomas Geymayer
7d9797e091
SGSharedPtr: add constructor to convert from SGWeakPtr.
2014-06-03 01:58:57 +02:00
James Turner
67a8d8049f
Package::match case-insensitive string comparison
2014-06-01 11:35:26 +01:00
James Turner
c3670b211f
Substring search of package name/description.
...
Note this only searches the current locale, should potentially also
search the default locale too.
2014-06-01 11:28:10 +01:00
Thomas Geymayer
32274027ef
Missing return statement
2014-06-01 12:14:31 +02:00
Thomas Geymayer
d09943cbb8
Fix wrong include guard (identified by clang)
2014-06-01 12:12:28 +02:00
Thomas Geymayer
150039f9ba
Canvas/Layout: tweak the way elements are exposed to Nasal.
2014-06-01 12:12:28 +02:00
Thomas Geymayer
820a315cbe
Canvas: fix possible crash with destroyed canvasses
2014-06-01 12:12:28 +02:00
Thomas Geymayer
8abe4622b9
Canvas: trigger immediate update from property tree/Nasal.
2014-06-01 12:12:28 +02:00
James Turner
da6ab1eabc
Add installedPackages() to Catalog.
2014-05-31 18:00:38 +01:00
James Turner
e3ddcbe2dd
Update package classes ownership model.
...
Use SGReferences as the base for package classes, so they can be
exposed directly to Nasal by cppbind.
2014-05-31 16:47:12 +01:00
Thomas Geymayer
b36cdebe8b
Canvas: basic layouting system.
...
Support for vertical and horizontal layouts. More layouts and
widgets can be created using Nasal.
2014-05-31 02:40:59 +02:00
Thomas Geymayer
3c0544c9a6
Sky dome: remove unused variables/code.
2014-05-31 00:09:56 +02:00
Thomas Geymayer
be358f8d24
cppbind: use Hash iterators to extract simgear::Map
2014-05-30 23:59:36 +02:00
Thomas Geymayer
e1abab393b
Fix for clang/template dependent name lookup.
...
Thanks to James & Nicholas...
2014-05-30 23:57:55 +02:00
Thomas Geymayer
0b21181f1a
Canvas: allow dispatching events to Canavs itself
2014-05-29 16:34:33 +02:00
Thomas Geymayer
dfdd1c6d5e
cppbind: some new methods and safer type check.
2014-05-29 16:30:41 +02:00
Thomas Geymayer
a8e96997cb
nasal::Hash: add iterators.
2014-05-29 14:14:52 +02:00
Thomas Geymayer
6db07373ee
PropertyBasedElement: extend HTML5 (Canvas) data props interface
...
Allow check if property exists and removing properties.
2014-05-29 01:22:35 +02:00
Thomas Geymayer
36ae8cdce3
Update doxgen config and some comments.
2014-05-29 00:27:50 +02:00
Thomas Geymayer
d77ba7d2db
canvas::Element: setter/getter for HTML5 style data-* properties.
2014-05-28 18:11:32 +02:00
Thomas Geymayer
6e58fdac85
canvas: exclude data-* properties from triggering an update.
...
Allows using data-* properties on canvas and elements,
similar to HTML5, without triggering a new rendering of
the canvas.
2014-05-27 17:56:46 +02:00
Thomas Geymayer
3f6933940e
ShivaVG: get rid of glu dependency.
...
We do not use the image rendering part anyhow, so
just disable it for now. If we want to use it we
will need a modified implementation anyhow to
integrate with OpenSceneGraph threaded OpenGL
resource management.
2014-05-27 17:56:46 +02:00
James Turner
4bd8fe5855
Fix bad Nasal parse of ‘foo[]’.
...
When a vector subscript is empty, don’t parse it as ‘[foo]’, instead
print a parse error.
Fix by Nicholas Scheel & Thomas Geymayer.
2014-05-27 10:05:17 +01:00
Thomas Geymayer
9c421d55a9
Canvas: support for custom events and event dispatching.
2014-05-19 00:17:23 +02:00
Thomas Geymayer
1af6cbc1aa
cppbind.Ghost: more member overloads.
2014-05-18 23:55:43 +02:00
Thomas Geymayer
a9e7af6e6e
Enable dynamic linking on Mac for Boost.Test
2014-05-18 17:47:03 +02:00
Thomas Geymayer
c967fbc0a6
cppbind.Ghost: clean up a bit
2014-05-18 17:43:30 +02:00
Thomas Geymayer
6929ba75c0
cppbind: convert maps from nasal.
2014-05-18 13:34:06 +02:00
Thomas Geymayer
289777bd99
cppbind.Ghost: register _get called on retrieving unset member.
...
Allow registering a callback on ghosts called upon retrieving
an unset member.
2014-05-18 13:34:06 +02:00
Thomas Geymayer
7535dfd2d0
cppbind: from_nasal/to_nasal for SGWeakReferenced based objects
2014-05-10 10:49:11 +02:00
Thomas Geymayer
23279b4d0a
Canvas: move window from flightgear.
2014-05-09 16:17:40 +02:00
Thomas Geymayer
d34d3ecfb1
SGWeakReferenced: fix for clang.
2014-05-09 11:52:42 +02:00
Thomas Geymayer
55f18574aa
Fix for CMake 2.6
...
No named arguments for add_test in CMake 2.6.
2014-05-08 11:17:28 +02:00
Thomas Geymayer
02ac1a43c1
Add smart pointer tests (finally using Boost.Test)
2014-05-08 02:17:24 +02:00
Thomas Geymayer
b2c3a90adf
Fix use count for deleted, reference counted objects.
...
Remove inconsitency of returning 0 or ~0. If the object
has been deleted there are no more references, so always
return 0.
2014-05-08 01:43:41 +02:00
Thomas Geymayer
9975c751a7
Add support for using SGWeakPtr with virtual base classes.
...
- Add SGVirtualWeakReferenced to be used as base class
for reference counted objects supporting weak references
and virtual base classes.
- Modify SGWeakPtr to copy with SGVirtualWeakReferenced
objects.
2014-05-08 00:27:00 +02:00
Thomas Geymayer
efbec8b367
Canvas: base Elements/Canvas on SGWeakReferenced.
2014-05-06 18:10:42 +02:00
Thomas Geymayer
9642f6d946
cppbind: add naContext/naRef overload to Ghost::_set
2014-05-06 18:10:35 +02:00
Thomas Geymayer
247aa49849
SGSharedPtr/SGWeakPtr: add some methods/operators
...
- allow placing SGWeakPtr in sorted STL containers (eg. requiring
operator<)
- add reset() like for boost::shared_ptr/boost::weak_ptr
- add helper to extract pointer from SGWeakPtr
2014-05-06 18:10:14 +02:00
Thomas Geymayer
edaae885ee
cppbind: small logging/warning updates.
2014-05-05 15:06:15 +02:00
Thomas Geymayer
b101f64cd8
cppbind.Ghost: register _set called on setting new properties.
2014-05-05 15:06:09 +02:00
Thomas Geymayer
f75d1cbcb1
cppbind: disable special handling of 'parents' for ghost.
2014-05-05 14:48:29 +02:00
Thomas Geymayer
ac2e80dc07
Nasal: allow ghost as 'me' for 'call'
2014-05-05 14:47:10 +02:00
Peter Sadrozinski
85b17ae8d4
fix for sgGetBuckets. Northern most buckets in the bounding box were left out
2014-04-16 10:18:13 -04:00
Thomas Geymayer
77955e5c3c
math/nasal: Add more SGRect members and nasal helper.
2014-04-15 10:07:01 +02:00
Peter Sadrozinski
19481983e5
fix windows build
2014-04-06 12:14:44 -04:00
Peter Sadrozinski
5b2b420c48
- secondary tc and vertex attribs in .btg file
...
- decrease debug when writing btg files
- deprecate some set_xxx apis
2014-04-05 21:48:38 +02:00
James Turner
15d3c12139
Fixed for FreeBSD
...
(From Gerald Laplanche)
2014-04-03 13:42:11 +01:00
Thomas Geymayer
338a748823
Canvas::Path: also restore glBlendFunc.
2014-04-01 12:35:43 +02:00
Thomas Geymayer
8c45796dc8
Canvas::Path: reduce number of OpenGL state changes.
...
- Do not enable any multisampling as for FBOs it is not
supported anyhow.
- Just restore GL_BLEND and GL_STENCIL_TEST manually
=> Getting rid of the huge load of glPushAttrib/glPopAttrib
gets us a huge performance boost, especially for drivers
with slow state stack implementations.
2014-04-01 12:03:53 +02:00
Thomas Geymayer
a160e176da
cppbind: fix testing for naRef identity.
2014-03-31 14:21:21 +02:00
Thomas Geymayer
d332da0605
Canvas: do not write bounding box to property tree.
...
- Prevent writing to property tree in wrong thread.
- Add Element::getBoundingBox and
Element::getTightBoundingBox as uniform way to
retrieve bounding boxes of all canvas elements.
- Update path bounding boxe in update traversal.
2014-03-31 13:28:03 +02:00
Thomas Geymayer
6ea55c6851
nasal::Ghost: remove bogus warning.
2014-03-27 12:09:05 +01:00
Thomas Geymayer
10ee7a901f
ShivaVG: disable paint textures ( Fixes #1414 )
...
Currently there is no need for paint textures so just
disable them to prevent releasing OpenGL resources
from the wrong context/thread.
2014-03-27 11:20:38 +01:00
Thomas Geymayer
db8b60ec49
Revert "CanvasGroup: return empty bounding box without children."
...
Returning somehow valid data in case it is used unchecked was
probably not a good idea. Better fix the code using it^^
This fixes #1421 .
This reverts commit 3525fff8d0 .
2014-03-23 17:27:30 +01:00
Thomas Geymayer
09d47e7f55
cppbind: fix problem with function call without arguments.
2014-03-22 13:23:21 +01:00
Thomas Geymayer
13a3ea3503
cppbind: allow calling methods with 'me' object from C++.
2014-03-22 12:41:47 +01:00
Thomas Geymayer
ff53792e4f
CanvasImage: rename 'file' to 'src'.
2014-03-20 11:42:02 +01:00
Thomas Geymayer
fd51518d92
CanvasImage: improve fetching from http and add mime detection.
2014-03-20 01:44:31 +01:00
Thomas Geymayer
01a43b49a5
Canvas: Respect clipping while event handling.
2014-03-19 18:21:25 +01:00
Thomas Geymayer
3525fff8d0
CanvasGroup: return empty bounding box without children.
...
Return an invalid bounding box can lead to problems
if used unchecked. Just returning an empty bounding
box (size 0x0 and position at the origin of the
element) is much safer.
2014-03-19 16:31:17 +01:00
Thomas Geymayer
6c75e2fe3c
CanvasImage: support for http protocol.
...
- Download and display images.
2014-03-18 18:33:44 +01:00
Mathias Froehlich
b322864ef4
Fix detection of airports in the stg loader.
2014-03-16 16:08:31 +01:00
Thomas Geymayer
f28e3fc9bb
Canvas: fix position for drag events and multiclick handling.
...
- Calculate local/client position for every drag event
instead of just reporting the position of the initial
mousedown event.
- Only pressing the same button multiple times increases
the mouse clickcount.
2014-03-15 14:53:08 +01:00
Thomas Geymayer
80e77b8372
Canvas: set button for drag events.
2014-03-15 00:40:48 +01:00
James Turner
c925b7b601
Don't leak cube-map textures
...
- use observer_ptr so cube-map textures are released without the
builder holing a ref.
2014-03-13 22:16:58 +00:00
James Turner
966789de90
Fix leak of object-mask textures
2014-03-13 22:16:00 +00:00
Torsten Dreyer
d44a3117d9
Partial fix of #1408 , add missing throw
2014-03-12 21:10:14 +01:00
Thomas Geymayer
c851c449da
cppbind: Do not derive from SGReferenced if there is no need
2014-03-12 17:40:21 +01:00
Thomas Geymayer
b2d9385f46
cppbind: fix possible usage of expired object from Nasal
2014-03-11 15:40:26 +01:00
James Turner
f40efe66fa
Simplify copyProperties
...
- with initial-state save/restore gone, all uses of
copyProperties are now simple. For selective copying, use
copyPropertiesWithAttribute.
2014-03-11 08:32:33 +00:00
Thomas Geymayer
5560479665
SGPropertyNode: do not keep list of deleted children.
...
Get rid of the possibilty to keep delted children. This was not
used actively, required unnecessary memory for each property node
and lead to subtile bugs, as creating a node after a node with
the same path has been deleted resulted in getting the old node
back instead of a cleanly initialized one.
2014-03-06 00:39:23 +01:00
James Turner
4ea8e4774e
Remove unused cube-map from 2D clouds.
2014-03-05 14:42:29 +00:00
James Turner
18ff03acdf
VBO switch also controls random-buildings.
2014-03-05 10:20:48 +00:00
Thomas Geymayer
aa27a09801
MouseEvent: comply with DOM Level 3 and add some getter.
2014-03-04 17:58:37 +01:00
James Turner
a8d7645004
Code cleanups.
...
(no functionality change)
2014-03-04 16:05:36 +00:00
James Turner
081aafb914
Allow clouds to be toggled on/off
...
- Change the cloud-root Group to a Switch
2014-02-28 11:06:47 +00:00
Stuart Buchanan
5a5ba08c23
Fix longstanding rent in skydome under ALS.
2014-02-27 21:57:27 +00:00
Thomas Geymayer
91b92c5613
animation: fix for 'textrapezoid' animation outside 'texmultiple'.
2014-02-26 17:48:11 +01:00
James Turner
bd5bc9cda0
TerraSync: expose method as public
...
- needed for command-line terrasync util.
2014-02-25 09:13:16 +00:00
James Turner
db684eb33e
HTTP: improve handling of connection errors
...
- handle 'whole connection' errors consistently, e.g. EUNREACH
which can occur with intermittent connections.
2014-02-24 19:41:14 +00:00
James Turner
a07cfdb683
Remove obsolete TerraSync methods.
...
- all scheduling is now done via paths/buckets, not lat+lon.
2014-02-24 18:45:57 +00:00
James Turner
b956a2c834
Sky: expose OSG branches as Groups.
...
- avoids creating additional groups in Renderer
2014-02-24 18:45:57 +00:00
James Turner
ba38688a83
Fix failing BucketBox test
...
- improve behaviour of floorWithEpsilon helper in bucket code, and
use in more places so that near-integral values are rounded correctly.
2014-02-24 18:03:17 +00:00
Stuart Buchanan
3429e00721
Add osgUtil::Simplifier to allow terrain simplification.
2014-02-23 21:09:09 +00:00
James Turner
32a6bd78d8
Make return type from loadPagedModel explicit.
...
- explicitly return osg::PagedLOD instead of Node, so callers
don't need to rely on documentation + cast to get the LOD
settings on the result.
2014-02-22 16:24:47 -08:00
Thomas Geymayer
b2cedc5332
Canvas: Fix crash on hide/show after detaching element from scenegraph.
2014-02-22 01:51:54 +01:00
Christian Schmitt
94bbed80d0
Use the new SGBucket api
2014-02-21 17:38:26 +01:00
Christian Schmitt
b4ecb6f2db
Fix new SGBucket API
2014-02-21 11:13:32 +01:00
James Turner
3b5665fe92
Only disable display lists if using VBOs.
...
(Otherwise we fall back to very slow submission)
2014-02-19 15:10:48 -08:00
James Turner
b4f4ef9c5b
Optionally deprecate parts of SGBucket
...
When NO_DEPRECATED_API is set, remove portions of the
SGBucket API.
2014-02-19 14:06:48 -08:00
James Turner
3c4c05fb3e
Fix GCC 4.6 / Ubuntu compile failure.
2014-02-19 14:05:26 -08:00
James Turner
b0cad59508
Raise required OSG version to 3.2.0
2014-02-19 10:58:39 -08:00
James Turner
d4030e72e4
Runtime VBO option in BTG loading.
2014-02-18 19:58:19 -08:00
James Turner
481f7e3bfa
Technique selection: fix shader-language
...
(Also add a glsl-supported test to simplify Effect logic)
2014-02-18 19:56:24 -08:00
Stuart Buchanan
c35243e215
OSG 3.2.0 compatibility and surface light effects.
2014-02-18 21:30:15 +00:00
James Turner
00d8849a28
Revise SGBucket::get_width_m
...
- remove the 0.5 degree offset away from the equator, which was
causing wrap-around at the poles
- add a new helper to get the highest latitude of a tile (which may
be +/- 90 for the polar cap tiles), and use this to compute radius
- special case the polar-caps and return a fixed, small width so
the tile-manager loads all tiles.
2014-02-13 18:49:38 +00:00
Thomas Geymayer
6b9ce935cd
Write back additional attributes to PropertyList
2014-02-13 18:27:34 +01:00
James Turner
e440aba0d2
Some Linux platforms need <cstdio> for snprintf.
2014-02-13 15:31:58 +00:00
James Turner
574d459f4e
Fix MSVC build.
2014-02-13 13:23:43 +00:00
James Turner
5fa0931a89
Revised set_bucket implementation.
...
- sink some inline methods into the .cxx file
- add isValid test to SGBucket
- sgGetBuckets won't return invalid buckets near the poles
- additional unit tests
2014-02-13 12:36:06 +00:00
James Turner
748b13850a
SGBucket unit-testing
...
- test polar wrapping near the 180-meridian
- test corner points for polar tiles
- expand test-macro helpers slightly
2014-02-12 16:21:16 +00:00
James Turner
9a09a6a447
Add new sibling() helper to SGBucket
...
- will replace sgBucketOffset eventually
- expand test coverage for both sibling() and offset function
(one test case is disabled since it fails)
2014-02-12 15:31:40 +00:00
James Turner
79c56c924f
Add unit-testing for SGBucket
...
- as part of looking at polar behaviour, start testing the
bucket code since the code has subtleties which it would be unwise
to change.
- remove a legacy setter on SGBucket (taking two doubles as a C-array)
2014-02-11 21:49:45 +00:00
James Turner
eef73953cb
Race-condition fix in get_effect.
...
Adapted from a fix by Jeff Biggs. (Shows up easier when using osgEarth,
and multiple osgDB pager threads)
2014-02-10 17:59:02 +00:00
Thomas Geymayer
781682f4ee
Minor formatting...
2014-02-08 19:15:46 +01:00
Thomas Geymayer
4a10806352
SubsystemMgr: helper to remove all subsystems.
2014-02-08 19:15:14 +01:00
Thomas Geymayer
13ae2f08ee
Put unused attributes in the property tree while parsing.
...
Store unhandled xml attributes in a subnode named _attr_ for each
node on parsing propertylist files. This allows retrieving them at
a later stage where there is no access to the source xml file any
more.
2014-02-08 19:12:17 +01:00
Thomas Geymayer
3e8aeccc87
New textrapezoid TexTransformAnimation.
...
Allows trapezoid texture transformations, as needed for example to
correct for the tilt angle of HUD combiners.
2014-02-08 12:39:43 +01:00
Thomas Geymayer
de39e0093a
Canvas: Fix bounding box calculation for paths with subpaths.
2014-02-08 00:22:36 +01:00
Thomas Geymayer
943f52aedf
Canvas::Element: expose combined transformation matrix
2014-02-06 17:55:51 +01:00
James Turner
46eb2f439d
MSVC lacks stdint.h / inttypes.h
...
- we can't use simgear/misc/stdint.hxx here, since it's a C++
header and md5.c is compiled as plain C (no bool type available).
2014-02-06 12:10:34 +00:00
James Turner
4f5c519636
Replace md5 from RSA with OpenBSD version
...
- no more BSD-with-advertising-license
- files from http://sources.debian.net/src/dpkg/1.17.6/lib/compat
(with SG_ prefixes to avoid collision issues)
2014-02-06 10:42:41 +00:00
James Turner
8f6677974e
Mac: fix static linkage
...
- Link against Cocoa, not CoreServices (for NSFileManager)
2014-01-28 12:39:28 +00:00
James Turner
0f5cbc35a2
Apple directory helpers
...
- drop use of deprecated FSFindFolder (use NSFileManager)
- support Downloads and Pictures directories
2014-01-28 11:16:19 +00:00
Thomas Geymayer
c54b1e037a
SGPath: typo...
2014-01-28 00:42:20 +01:00
Thomas Geymayer
0d19be2196
SGPath: generalize retrieving standard locations (and add more)
2014-01-28 00:32:08 +01:00
James Turner
c1b579ec5d
Remove jpeg-factory.
...
(FlightGear can now do the same, without the helper class)
2014-01-27 09:19:11 +00:00
James Turner
0a8246c676
Add desktop() accessor to SGPath
...
(Windows-only for the moment)
2014-01-26 16:03:31 +00:00
Torsten Dreyer
ea02453f63
fix typo
...
Thanks to Alex Romosan
2014-01-24 11:10:34 +01:00
James Turner
d1942da317
Remove some debug log messages
...
- two uninformative ones in TextureBuilder
- very noisy one in tied-property-list
2014-01-23 13:51:18 +00:00
James Turner
ed9764f923
Fix spurious event-mgr warnings
...
- don't warn on removeTask if the event-manager was already shutdown,
as happens during normal FG shutdown or reset.
2014-01-23 12:49:39 +00:00
James Turner
3b5ed81216
Crash-fix: make mat-lib reference counted.
...
Make SGReaderWriterOptions own the material lib it's passing to
loader code, so it cannot be freed unexpectedly.
2014-01-19 16:45:01 +00:00
Torsten Dreyer
12d0d4140e
Version 3.1.0
2014-01-17 21:59:58 +01:00
Torsten Dreyer
d6c8008978
No double-zero for the version number :-/
2014-01-17 21:49:13 +01:00
James Turner
488ca0fcc5
Remove a noisy log message from the Terrasync code.
2014-01-17 17:46:46 +00:00
James Turner
dfd15cadab
Bug-fix - short-circuit path validation.
...
When an SGPath is empty, don't bother stat()-ing. This avoids
an uninitialized-memory read inside the C-runtime on Windows.
2014-01-17 17:26:29 +00:00
James Turner
1613257bdc
Ensure type tag of contextId binding is set.
...
(Otherwise defaults to DOUBLE).
2014-01-17 16:27:54 +00:00
Torsten Dreyer
1061580118
Version 3.0.0
2014-01-16 21:47:13 +01:00
James Turner
7184828a58
Support a 'clear' operation on SGBinding.
...
Needed to bug-fix a problem with the menubar on Mac - post-3.0 I will
change the behaviour of SGBinding's destructor to avoid the property
copies in other use-cases.
2014-01-15 21:56:26 +00:00
Thomas Geymayer
0428adff03
CanvasMap: Expose property screen-range.
...
Only allowing a hardcoded screen range of 200 units
is not very flexible...
2014-01-09 19:36:38 +01:00
James Turner
04246f0a63
HTTP: tweak response parsing.
...
Signal a parse failure via an exception, instead of via a status
code, since this is hard to disambiguate from a valid server-side
status code.
2014-01-07 16:22:10 +00:00
James Turner
61df58d651
Terrasync: update fixes.
...
- Fix a nasty issue when updating existing repositories, which could
cause repository corruption and hence repeated re-syncs.
2014-01-07 14:24:01 +00:00
James Turner
1bd9a440e8
HTTP: tweak for malformed header handling.
2014-01-07 14:24:01 +00:00
Thomas Geymayer
d82c8eb945
Socket: do not crash on writing to broken pipe.
...
Writing to a closed socket on all Unix/Linux systems raises
a SIGPIPE signal which immediately closes the program. Disabling
raising of SIGPIPE allows proper error handling by checking the
return values of send/sendto and getting the EPIPE in errno.
2014-01-06 12:17:59 +01:00
James Turner
becbad7ea4
Crash fix: use cache to find materials.
...
Add a thread-safe cache of the currently valid materials, to avoid
the osgDB thread making repeated SGCondition evaluations in conflict
with the main thread.
(Requires an accompanying FG change)
2014-01-06 08:26:48 +00:00
Thomas Geymayer
2335796a28
Fix track-to animation basic tracking without slave object
2014-01-05 19:38:03 +01:00
James Turner
c6330b64f6
Bugs 1207, 1301
...
Only apply the fix for time-zone offsetting on Windows, since Unix
is handling mktime differently. (Arguably we should also apply a
conversion for Unix systems, but the previous logic worked)
2014-01-03 19:51:58 +00:00
James Turner
df57a23512
#1207 : Add helper to get Unix time in GMT
...
On Windows, time() is returning a value which if offset by the
selected time-zone. Provide a variant which is always in GMT.
2014-01-01 21:03:24 +00:00
Thomas Geymayer
aea71cf0af
HTTPFileRequest: only save file if status == 200
2013-12-30 01:31:47 +01:00
James Turner
fb54386f8d
Bugfix: remove SGSky minimum distance check.
...
Without this, various sky rendering modes exhibit artefacts in low-
visibility conditions. The cost of always rendering the dome is
negligible. (And Rembrandt already had to work this way)
2013-12-19 17:20:06 +00:00
Rebecca Palmer
4d931b6109
Fix test failure on char-unsigned-by-default architectures (eg. ARM)
...
(from http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=722115 )
2013-12-19 15:02:07 +00:00
Rebecca Palmer
407c7a10f5
Fix buffer overflow CVE-2012-2091 (thanks to Saikrishna Arcot)
...
https://bugs.launchpad.net/ubuntu/+source/simgear/+bug/1077624
(discussed in comments 65-78)
(This is already fixed in 2.12 but appears to have been forgotten in 2.99;
the other vulnerabilities described there are already fixed.)
2013-12-19 15:02:07 +00:00
James Turner
16fa4d1d17
Security: fix 0777 directory permissions to 0755.
2013-12-19 14:56:23 +00:00
James Turner
1ecccd43d4
Fix a typo breaking Mac build.
2013-12-15 20:55:02 +00:00
James Turner
2edbb1cf8b
Reset: clear some property references.
2013-12-15 20:48:30 +00:00
Thomas Geymayer
8dccbe8029
SGPath: some tweaks/fixes/typo on permission checker.
2013-12-12 21:27:27 +01:00
Thomas Geymayer
031c833e4d
SGPath: add support for custom PermissionChecker
...
Allow to add permission checks (read/write-access) for
eg. limiting access based on IORules.
2013-12-12 21:04:26 +01:00
James Turner
890cc46825
Reset: alternate property copying strategy.
...
Search the tree for leaves / sub-trees with a particular attribute set.
This permits both sparse selection as well as selection by sub-tree.
(This is needed for PRESERVE attribute, and once new reset is switched
on, will enable 'normal' copyProperties to revert to ignoring
attributes completely)
2013-12-10 17:37:37 +00:00
James Turner
6b0f7e8512
Quiet a message.
2013-12-09 23:28:52 +00:00
Thomas Geymayer
7a220921f0
Canvas: one global SystemAdapter is enough.
...
This also fixes elements requiring a SystemAdapter without
being assigned to a Canvas (eg. because they are desktop
elements).
2013-12-09 23:07:17 +01:00
Thomas Geymayer
7ef9acda5d
Add ListDiff helper (for fast array differences).
2013-12-08 18:48:57 +01:00
Thomas Geymayer
2a6d62e6f7
Fix some unused/uninitialized variables.
2013-12-07 13:43:17 +01:00
Thomas Geymayer
42b50bd7f7
SGPropertyNode: add removeAllChildren() method
2013-12-07 13:42:15 +01:00
Thomas Geymayer
2c3f44ae11
Canvas: ensure all canvasses are destroyed
...
- For shutdown/reset make sure all properties describing a canvas
are removed and also not restored after the reset.
2013-12-07 13:40:22 +01:00
Stuart Buchanan
b7662f16e5
Work around apparent OSG 3.2.0 normal binding bug.
2013-12-06 22:12:52 +00:00
Stuart Buchanan
5bc535a8d2
PagedLOD for random trees, buildings and objects.
2013-12-06 20:20:46 +00:00
James Turner
3ec9c7ae6e
Canvas: clear elements in shutdown()
...
- without this change, elements aren't un-ref-ed and hence destroyed
until the actual dtor runs, which is too late (other systems may be
destroyed already)
2013-12-06 18:14:48 +00:00
James Turner
e326d0c756
Work around a clang/libc++ issue.
2013-12-06 18:03:35 +00:00
Thomas Geymayer
7c5434a99f
cppbind: don't leak nasal references for Ghost methods.
2013-12-04 11:15:11 +01:00
James Turner
26d9256ee9
Reset: hook to clear the effects cache.
2013-12-04 09:12:51 +00:00
James Turner
053e761d8f
Reset: don't leak EffectPropertyListener.
...
Track and free listeners from effect expressions.
2013-12-03 21:36:18 +00:00
Clément de l'Hamaide
5861b52cff
Implement UTF-8 to Latin1 converter
2013-12-01 18:48:05 +01:00
Thomas Geymayer
66193d7283
cppbind: Fix detecting derived Ghosts
2013-12-01 12:35:02 +01:00
Thomas Geymayer
dfb07f359e
cppbind: make ghost_type static to keep same pointer on reset.
...
Using a static naGhostType ensures that always the same
address is used for the same ghost and prevents ghost_types
from getting invalid (eg. on reset).
2013-12-01 01:18:13 +01:00
Thomas Geymayer
6fe1433497
Canvas: allow removing placement factories.
2013-11-24 15:39:03 +01:00
bcoconni
01ace109ba
Fixed a crash: the singleton needs to be instantiated the first time SGCommandMgr::instance() is called
2013-11-24 14:50:11 +01:00
bcoconni
8e01acaa12
Added more explicit error messages to the property lists parser.
...
More specifically, each time an error or a warning is issued the location of the corresponding XML tag (file name an line number) is reported.
2013-11-24 12:20:26 +01:00
James Turner
7bbec8dbcb
Reset: allow re-init of Nasal Ghosts.
...
After discussion with Thomas, reset needs the scenario this assert
was designed to guard against, so removing it for now.
2013-11-23 20:06:47 +00:00
James Turner
10375086ed
Allow Command-manager singleton to be deleted.
...
(Shutdown can delete commands in an orderly way)
2013-11-23 20:00:23 +00:00
James Turner
dd367daac9
Fix another SVN crash on failure.
2013-11-19 21:33:50 +00:00
Martin Spott
27063d0c32
Repository name preferred
2013-11-16 10:44:17 -08:00
James Turner
80ff0282c3
Give terrasync a custom HTTP UA.
2013-11-16 09:45:40 +00:00
James Turner
e973e406a3
Fix some SVN errors/crashes.
2013-11-15 11:47:36 +00:00
bcoconni
c64776029e
Removed the 'using::std' instructions from the headers as per James Turner request.
...
Also took this opportunity to add a check in XMLVisitor::savePosition() against a null pointer.
2013-11-14 22:07:29 +00:00
bcoconni
5d7d0a922d
Added the ability to access the file name and position (line, column) from which the XML visitor is getting its data
2013-11-14 22:07:29 +00:00
Christian Schmitt
c2c96c4219
apt_signs: lower the log level for apt.dat syntax errors. Nobody seems to care...
2013-11-14 18:41:20 +01:00
James Turner
3e9ed08c53
Reset: use ref-counting to own subsystems.
...
Change the subsystem-group and manager code to use shared-ptr references
to subsystems, instead of holding a raw pointer. Hence the manager becomes
the owning ref to most subsystems.
2013-11-12 23:12:45 +00:00
James Turner
b7df9026c0
Reset: Terrasync root can change, can be shutdown.
2013-11-12 23:04:13 +00:00
James Turner
6527c6357b
Reset: clean event-manager shutdown
2013-11-12 22:23:19 +00:00
James Turner
fad333256c
Reset: DeletionManager can be uninstalled
2013-11-12 22:23:14 +00:00
James Turner
8753811fe1
Remove exceptions on missing texture names
2013-11-12 22:23:09 +00:00
James Turner
237752ff62
String case conversion, UTF-8 conversion.
2013-11-12 22:17:12 +00:00
Thomas Geymayer
743244a69c
CanvasElement: ensure parent pointer can not become invalid.
2013-11-10 17:12:50 +01:00
Thomas Geymayer
9f89737986
track-to animation: fix "short" and "long" tracking.
2013-11-10 11:14:50 +01:00
Thomas Geymayer
508a5c5f66
track-to animation: 2dof rotation for slave object.
...
Slave objects can now rotate around two axis to always track the
target - even when it is outside the plane perpendicular to the
lock-axis of the root object. This allows for example animating
levers with non-parallel axis of rotation connected with a rod.
2013-11-08 00:51:18 +01:00
James Turner
d84394efa0
Tweak HTTP code to always sleep.
...
Check explicitly for the 'no channels' case and
sleep instead, to avoid busy-waiting. (This is a work-
around, the underlying issue still be be traced)
2013-11-06 15:11:46 -08:00
James Turner
dd613d48bc
Reset: pin ctor and dtor of event manager.
2013-11-05 05:21:57 +00:00
James Turner
2e8e500d4f
Reset: commands can be removed
2013-11-05 05:21:52 +00:00
James Turner
48f866dcc6
TerraSync: avoid assert on missing file
2013-11-05 05:17:57 +00:00
Thomas Geymayer
ec4d3e4f9b
Make new gcc happy (include cmath)
2013-11-04 10:48:26 +01:00
Thomas Geymayer
38ddfab1e0
Canvas: improved clipping and new property clip-frame.
...
- Update clipping rect if canvas view or texture size
changes.
- Add new property "clip-frame" to specify coordinate
frame for "clip" coordinates. Coordinates can be
global, relative to the parent or relative to the
element itself.
2013-11-03 20:12:45 +01:00
Thomas Geymayer
353b7e4438
SGPropertyNode: extract enum value with getValue
2013-11-03 20:11:06 +01:00
Thomas Geymayer
7076c9a0ff
HTTP: finish core request before calling any callback.
2013-10-28 20:34:11 +01:00
James Turner
2f42a8714c
Terrasync: don't busy wait when no requests are running.
2013-10-28 14:51:52 +00:00
Thomas Geymayer
fdf6fc32ff
HTTPFileRequest: create directory if it does not exist
2013-10-28 12:38:39 +01:00
Thomas Geymayer
f2188b33c6
HTTP: Rename urlretrieve/urlload to save/load.
2013-10-27 23:38:46 +01:00
Thomas Geymayer
f93fead8f2
io: refactor and improve HTTP modules.
...
- refactor code used multiple times spread over sg/fg into
one single location.
- allow aborting requests.
- Provide two common request types:
* FileRequest: Save response into file
* MemoryRequest: Keep resonse in memory (std::string)
- extend HTTP::Client interface:
* urlretrieve: Save url to file (shortcut for making a
FileRequest)
* urlload: Get respons into memory (shortcut for making
a MemoryRequest)
2013-10-27 19:05:49 +01:00
Thomas Geymayer
050f3791cc
New class simgear::Map extending std::map interface.
2013-10-27 19:05:49 +01:00
James Turner
94326fd964
Windows logging changes
...
- can log to the debugger (MSVC output window) via OutputDebugStr
- logging to the console is optional, triggered by new
requestConsole hook()
2013-10-26 21:04:16 +01:00
James Turner
f26f3b606d
Fix handling of SGPath::rename
...
Windows handling of ::rename differs from POSIX when the new name
exists. Check for this case on Windows and remove the file manually.
(This allows a work-around in SVNDirectory to be removed)
2013-10-26 21:03:00 +01:00
Thomas Geymayer
7cbfa76be4
cppbind: automatic conversion of SGReferenced derived pointers.
2013-10-26 01:04:16 +02:00
James Turner
d896e71ae9
Add total bytes downloaded tracking.
2013-10-24 23:35:44 +01:00
Thomas Geymayer
ca79d99ec4
canvas::Element: add getter for parent element.
2013-10-23 17:11:03 +02:00
James Turner
95f77ef81d
Ooops, fix INSTALL rule.
...
We need the rule, just not the export, for now.
2013-10-23 14:18:39 +01:00
James Turner
c4e7d26b70
Comment out Cmake export experiments for now.
...
This is breaking CMake 2.6, so commenting out for the moment, until
I understand how to support this portably.
2013-10-22 13:42:59 +01:00
James Turner
ea49a1a07b
Fix GPS activation on Windows.
...
Bug 1190, fix route-manager -> GPS activation on Windows
(and probably a couple of unrelated issues).
SGPropertyChangeCallback was missing a suitable copy-constructor,
leading to incorrect behaviour on compilers where the operation
is not elided. Such as MSVC.
2013-10-22 00:42:31 +01:00
James Turner
784223c67f
Fix Dir warnings on Windows.
...
Test result of GetLastError so we don't log a warning in the
'nothing matched' case. Makes early startup logging much
more pleasant, especially when scanning aircraft dirs.
2013-10-21 23:51:19 +01:00
James Turner
77aa2c9a9d
Smoother download rate from HTTP
...
Crude filtering (low pass) of the download rate, over a 400msec
time window.
2013-10-21 23:08:55 +01:00
James Turner
48145fb234
Fail HTTP request with missing/illegal protocols.
...
Instead of throwing, run the failure handler for requests with
either a missing spec or something other than http:// (eg, https
or ftp)
2013-10-20 23:20:49 +01:00
James Turner
49730cadee
Placement can contain multiple nodes.
...
- Allow placement to have multiple children added.
- Remove legacy position setting APIs, enforce use of SGGeod
2013-10-20 20:44:42 +01:00
Thomas Geymayer
0b197501e1
Add SGPropertyNode::setValueReadOnly.
...
Helper to set value of relative node and mark
read only. Use eg. for exposing configuration
and build values to the property tree.
2013-10-20 12:03:41 +02:00
James Turner
8b0c246a7b
Avoid a divide-by-zero on malformed BTG files.
...
Encountered while testing v850 airports; some airports
generate materials with no tris, and hence no indices.
This causes a divide-by-zero when computing the index stride.
Detect this, and convert the BTG reader to throw exceptions
in error conditions, and to catch this and report the
appropriate result code.
2013-10-17 20:13:50 +01:00
James Turner
9c4face1ae
Fix float-int conversion bug caught by Clang
2013-10-17 20:13:49 +01:00
James Turner
952e2e6631
Fix unused-var warnings from Clang.
2013-10-17 20:13:49 +01:00
James Turner
4766910413
Terraysnc: don't block requests when inactive.
...
Add the same check for data files so we don't block when terrasync is
disabled.
2013-10-17 17:29:06 +01:00
James Turner
3c2f97a8d2
Re-order install(EXPORT ) lines.
...
Certain cmake builds/versions complain when a dependent target is
exported but dependencies are not. Export SimGearCore before
SimGearScene.
2013-10-17 17:12:02 +01:00
James Turner
f75730f165
Initial work on syncing non-scenery data.
...
This is some initial pieces to synchronise other pieces of base
data than scenery via the sync mechanism. An additional sync slot is
added to avoid scenery or other data blocking each other.
2013-10-17 16:39:29 +01:00
James Turner
b596e62a61
Remove some iostream debugging.
...
Accidentally committed this debug stuff, remove it.
2013-10-17 16:35:36 +01:00
James Turner
1349d48339
Export SimGear config to cmake.
...
Experimenting with this, should make FindSimGear module unecessary,
and avoid mis-matched SG/FG cmake settings in the future.
2013-10-17 16:10:18 +01:00
James Turner
d69ea5fda6
Kill off EMBEDDED_SIMGEAR
2013-10-17 16:09:39 +01:00
Thomas Geymayer
9b68062ba7
Add helper to get osg::Node path as string.
2013-10-17 13:28:54 +02:00
Thomas Geymayer
b217019723
Nasal: do not print invalid elements for error backtraces.
2013-10-16 23:33:06 +02:00
Thomas Geymayer
a37a254a68
Canvas: simplify code by using new nasal function conversion.
2013-10-15 17:46:42 +02:00
Thomas Geymayer
5258699f20
cppbind: convert Nasal functions to C++ boost::function.
2013-10-15 17:46:31 +02:00
Thomas Geymayer
483bebb003
cppbind: fix bad class hierarchy for bad_nasal_cast.
2013-10-15 16:38:38 +02:00
Thomas Geymayer
8ca8052a8d
Nasal: use correct function pointer in naCall (with user data)
2013-10-15 14:21:45 +02:00
Thomas Geymayer
d68b1144b8
Nasal: recursive method calling.
...
New functions naCallMethodCtx and naCallMethod to replace
NasalSystem::callMethod from FlightGear. This has just added an
unneeded level of indirection and fits better directly into Nasal.
naSetErrorHandler can be used to register an error handler/logging
function.
2013-10-15 12:08:42 +02:00
Thomas Geymayer
42c39b6be3
Canvas: use new naGCSave/naGCRelease functions.
2013-10-15 00:49:13 +02:00
Thomas Geymayer
bb82b9d168
Nasal: add naGCSave/naGCRelease for preventing objects being garbage collected.
...
These new functions are meant to replace the gcSave/gcRelease
methods of the NasalSystem class in FlightGear, as passing an
adapter to SimGear from FlightGear is quite a lot of useless work
just for being able to save objects.
2013-10-15 00:19:32 +02:00
Thomas Geymayer
b1f865d461
cppbind: add to_nasal_helper for enums.
2013-10-14 23:03:36 +02:00
Thomas Geymayer
8e75c6be50
HTTP: check url for scheme and report instead of failing with assert.
2013-10-13 12:06:17 +02:00
Thomas Geymayer
06a5f9188d
Don't let exceptions escape from commands.
2013-10-13 12:00:52 +02:00
Thomas Geymayer
370a991208
cppbind: Catch exceptions before reaching C code.
2013-10-13 11:40:27 +02:00
Thomas Geymayer
6deb77dd4d
Canvas: allow also C++ callable entities as event callbacks.
2013-10-12 00:29:37 +02:00
James Turner
9e3172cb04
Another attempt to make MSVC happy!
...
C89 requires variable declarations upfront.
2013-10-09 12:26:29 +02:00
James Turner
426c6b9a72
Linux needs <cstring>
2013-10-09 11:58:51 +02:00
James Turner
d148bdedcd
Fix MSVC build, no C99 so no round().
...
(Doesn't use SGMisc<T>::round, since Nasal is pure C)
2013-10-09 11:52:54 +02:00
James Turner
23140e3bf7
Avoid a data copy decoding base64 data.
...
Use an out parameter to avoid a buffer alloc/copy/free cycle
when returning base64-decoded data.
2013-10-09 10:03:30 +02:00
James Turner
2f023803e7
Refactor HTTP content-encoding support.
...
Move content-encoding handler into its own file, which
simplifies the main code. As part of this, fix a bug where we
didn't flush the ZLIB buffers on response completion.
2013-10-09 10:03:28 +02:00
James Turner
d658b5fc38
Use std::string.append, avoid string copying.
...
Removes a hot-spot on the SVN update path.
2013-10-09 10:03:27 +02:00
James Turner
68cd84c330
Make base64 decode significantly faster.
...
Use a reverse lookup table instead of a call to string.find for
each input byte, much speedier.
2013-10-09 10:03:27 +02:00
James Turner
0bd82a43d3
Check for DAV status parse failures.
2013-10-09 10:03:26 +02:00
James Turner
7fdf42b699
Reset: Nasal additions to force GC, clear saved refs.
2013-10-09 09:59:50 +02:00
James Turner
aeb0e9aac3
Reset: event manager can be unbound.
2013-10-09 09:59:40 +02:00
James Turner
1099a3bdf0
Reset: model placement can drop OSG nodes.
2013-10-09 09:59:33 +02:00
James Turner
aa3458f69c
Reset: model lib can drop static root.
2013-10-09 09:59:21 +02:00
Stanislaw Halik
0186cbb7b7
cmake: prevent Boost barfing out too many warns
2013-10-03 21:49:38 +01:00
Stanislaw Halik
fa36e94c4b
fix static build with recent GNU binutils
...
Signed-off-by: Stanislaw Halik <sthalik@misaki.pl >
2013-10-03 21:49:38 +01:00
James Turner
ad83e70cf5
Extend built-in Nasal math.
...
- rename mod() to fmod() to prevent collisions with the
version in math.nas (which has different handling of negatives)
- implement pow, tan, acos and asin natively
- add round(x, [p]), which rounds away from 0.0, and takes an
option precision. I.e you can round(479, 50) and get '500'; useful
in many digital cockpit displays.
2013-10-03 17:40:17 +01:00
James Turner
4a0377c0a1
Rename WaitingSyncItem -> SyncItem.
...
More accurate name (we have these for items which are not waiting),
and also shorter.
2013-09-30 21:59:18 +01:00
James Turner
83a3241830
Fix a signed/unsigned compare warning
2013-09-30 16:44:04 +01:00
James Turner
f299b351e3
Expose active tiles via API, sync by SGBucket.
...
Provide an API to query which tiles are currently being synced. This
allows the higher levels (TileManager in FlightGear) to safely wait on
TerraSync before loading tiles.
Doing this exposed some bugs in scheduling tiles to sync by integer
lat/lon, related to round-towards-zero with -ve values (western /
souther hemispheres). To resolve these, and also reduce spurious
syncs, switch to an explicit API for requesting tiles by SGBucket.
This keeps TerraSync fully aligned with the TileManager queue, which
has many benefits for both high and low visibility situations.
2013-09-30 16:35:45 +01:00
James Turner
3880e4ef47
Say which ocean tile we generated.
2013-09-30 12:08:10 +01:00
James Turner
f205e918d9
sprintf -> snprintf in bucket code.
2013-09-30 12:07:57 +01:00
James Turner
42b0b9306b
Make code quieter at log-level=DEBUG.
2013-09-28 14:45:30 +01:00
James Turner
483659c319
HTTP: adjust request-connection assignment.
...
Prefer existing, idle connections to creating new connections,
even when below the max-connection limit. Gives much better re-use
and pipeline-ing, and hence reduced setup time/trips.
2013-09-28 14:03:39 +01:00
James Turner
add14dd27c
Reposition hook for terrasync.
...
When re-init-ing the sim, tell TerraSync what's going on (we don't want
to actually reset it, since that would disturb in-flight downloads).
Add an explicit method so it can reset its last lon/lat, and hence do
the initial sync at the new location correctly.
2013-09-27 20:28:43 +01:00
James Turner
61516a5e97
Terrasync: Expose transfer rate as a property.
2013-09-27 18:23:51 +01:00
James Turner
17418039e1
HTTP bugfix + enhancement.
...
Track 'waiting for response' state explicitly, so we don't
falsely report IDLE when waiting for a response.
Expose bytes-per-second download rate as metric.
2013-09-27 18:20:03 +01:00
James Turner
25cae61211
Allow TerraSync to be inited early.
...
Add explicit subsystem state tracking so we can safely init()
terrasync very early during startup, and hence overlap lengthy operations
(Shared Models sync and initial NavCache build)
2013-09-26 12:11:48 +01:00
James Turner
db98c7440e
Parallel sync of items.
...
When using built-in sync code, separate items into distinct slots.
Slots process items sequentially, but each slot works in parallel (using
a single shared HTTP engine). This allows tiles to be synced in parallel
with airports/shared models data, greatly increasing responsiveness
to get tiles synced on initial launch.
2013-09-25 16:31:10 +01:00
James Turner
3783ae2234
Rename WaitingTile to WaitingSyncItem.
...
We already synchronise other things besides tiles, and will soon want different
behaviour based on the type of item we're syncing (so we can synchronize some items in parallel). Rename the struct to be clearer, and add an enum encoding the type of item for future use.
2013-09-23 18:20:16 +01:00
James Turner
3e8732b230
Libsvn / APR dependency is removed.
...
Remove any use of libsubversion / API in Simgear, and always
compile the built-in SVN client code.
2013-09-23 18:05:37 +01:00
James Turner
b39bca9458
Fix no-svn build (Win64 only at present)
2013-09-20 09:18:43 +01:00
James Turner
d263334030
Attempting to fix import/export linkage on Windows.
...
Hopefully this tells the Expat headers not to do any clever
declspec(import) or export stuff, which we don't want since we only
use the symbols within SimGearCore, and don't export them.
2013-09-19 22:07:41 +01:00
James Turner
b2cea62189
Even more forcing of include file names.
...
(It's a good thing Windows doesn't ship Expat, since apparently
every other platform does)
2013-09-19 21:58:23 +01:00
James Turner
d6b886c69b
Change got lost in the move/rename, not good.
2013-09-19 21:47:40 +01:00
James Turner
38fb9ea41e
Intermediate static libs have issues.
...
Switch back to including the bundled expat sources directly in the
targets, since transitive linking of static libs is very awkward.
Makes static build happy again (let's see what else breaks)
2013-09-19 21:42:28 +01:00
James Turner
a922aaa68e
Move bundled Expat to new home.
...
Renamed bundled Expat headers to avoid any
possibility of accidental including system headers when
using bundled Expat, or vice-versa. Should help with SVN
crashes reported by Thomas.
2013-09-19 20:12:32 +01:00
James Turner
4f2e36ca46
rand(), not random(), for Windows.
2013-09-19 08:57:34 +01:00
James Turner
f367627cac
Fix HTTP unit test.
...
Also fix a signed/unsigned warning I caused.
2013-09-18 22:55:11 +01:00
James Turner
7a7fcf10ad
Fix missing include for non-Mac
2013-09-18 22:13:04 +01:00
James Turner
b9bd2734eb
Persistent SVN update cache.
...
Make the already present cache of updated URLs persistent, with a
definable lifetime, currently 24 hours. This ensures terrasync-ed
resources are checked less often (max once per day) instead of each
FGFS launch, which should greatly cut down requests to the backend.
2013-09-18 21:40:35 +01:00
James Turner
9c7bd4f5d5
HTTP Client improvements
...
- max connections limit, and parallel connections to a single host where possible.
(Will permit updating terrain and Models / Airports / data in parallel)
- add LGPL headers
- give HTTP::Client a private impl class, to keep header simple.
2013-09-18 12:17:38 +01:00
James Turner
362d47f91f
Kill legacy PPM support in screen-dump
2013-09-18 12:17:29 +01:00
James Turner
a18792c397
Printf format sanitising.
...
Refactored version for next, use a new helper in
simgear::strutils.
2013-09-15 13:30:12 +01:00
James Turner
0e2ddb2f16
Bah, tested on the wrong compiler, so missed a file.
2013-09-14 18:05:53 +01:00
James Turner
bcfadd6657
Prefix GCC version constant.
...
From: Markus Wanner <markus@bluegap.ch >
2013-09-14 17:29:59 +01:00
Thomas Geymayer
021cf1a2b4
Remove temporary file and add to .gitignore
2013-09-07 14:28:46 +02:00
James Turner
acf86be516
Rename MD5 code.
...
Linux crashes with this code seem to relate
to multiple instances of these symbols. Prefix
the SimGear versions to prove/disprove this.
2013-09-04 08:45:06 +01:00
James Turner
dd93eb88f2
Ensure sglog() singleton is threadsafe.
...
Slightly simplistic, but definitiely correct, method
for ensuring singleton creation is threadsafe. Can
be optimised if lock contention is ever an issue.
2013-09-04 08:45:06 +01:00
James Turner
e06f9e35b3
Tweak for 64-bit Linux linkage.
2013-09-04 08:45:06 +01:00
James Turner
c0424aba7e
SG part of fix for TerraSync models.
...
Ensure we search the TerraSync models tree before the FG_ROOT one,
since the TerraSync one contains newer files and updates to the base
one.
2013-08-29 22:13:43 +01:00
Thomas Geymayer
b468254d73
Fix #1163
2013-08-17 17:47:23 +02:00
Tom Paoletti
15e3e92ec2
Performance optimization: empty() instead of size()>0
...
empty() is guaranteed to be constant complexity for both vectors and lists, while size() has linear complexity for lists.
2013-08-16 16:48:35 +01:00
James Turner
ee403fd83a
No need to deal with OSG versions pre 3.0
2013-07-29 22:53:31 +01:00
James Turner
05f266ac10
HTTP SVN fixes, cap max update-report depth.
2013-07-28 21:07:40 +01:00
James Turner
f52c0026dd
Better reporting when an HTTP request fails.
2013-07-28 21:06:17 +01:00
Thomas Geymayer
a284107249
Canvas: ensure render order equals order in property tree.
...
Prevents also changing the render order if changing eg. the size
of a Canvas.
2013-07-26 23:31:46 +02:00
James Turner
a2e25e7940
Fix for #587 , crash on break/continue.
...
Look for use of break/continue outside of a loop context,
and report a parser error instead of crashed. Thanks to
Philosopher for the patch.
2013-07-23 21:58:38 +01:00
James Turner
d45a0161cf
Initialise token precedence rule.
...
Thanks to Philosopher for the catch.
2013-07-23 21:51:47 +01:00
James Turner
c7a5d15e7a
Bug 585, assignment to multiple l-values.
...
Disambiguate multiple-values from function invocation. Will merge
to release branch after testing.
2013-07-23 09:45:22 +01:00
James Turner
3cb2241b1d
Bug 737, crash parsing default args.
...
Reject function evaluation explicitly when building
default arguments.
2013-07-23 09:45:22 +01:00
Thomas Geymayer
b236821661
Canvas: Ensure all element types are initialized before first usage.
...
If setting properties on a group a check is performed if
this property exists on any possible child element, and
only if this is the case the property is stored in the
groups style.
Previously elements have been only initialized during
their first usage, leading to ignored styles if they
have been set on a parent element before instantiating
an instance of the actual element type.
2013-07-20 15:45:02 +02:00
Thomas Geymayer
fc75b0bd21
Canvas::Text: add line-height property.
2013-07-19 23:38:08 +02:00
Thomas Geymayer
a9fc84d568
Canvas: clip region rounding and catch negative size.
2013-07-19 23:37:04 +02:00
Thomas Geymayer
b15c6d887d
Canvas: don't crash with invalid clip rect
2013-07-18 15:35:44 +02:00
Thomas Geymayer
c2f89978ff
canvas::Element: Fix bounding box calculation of groups
2013-07-18 14:16:13 +02:00
James Turner
a004153223
Bump version on development trunk.
2013-07-17 20:29:22 +01:00
Thomas Geymayer
dde2bbcbe7
nasal::String: add ends_with method
2013-07-15 22:26:11 +02:00
Thomas Geymayer
7bd572f3ec
Fix inverted checks...
2013-07-13 14:06:11 +02:00
Thomas Geymayer
486011dceb
Fix for OSG without OSG_INIT_SINGLETON_PROXY
2013-07-13 11:37:24 +02:00
Thomas Geymayer
01c45633b7
Canvas::Group: Print warning message if using expired Group instead of crashing
2013-07-12 18:00:53 +02:00
Thomas Geymayer
5320d0ecaa
Fix render order of canvas elements
2013-07-12 16:13:06 +02:00
Thomas Geymayer
757ba03918
CSSBorder fix: width/height swapped
2013-07-06 12:05:19 +02:00
Thomas Geymayer
948db69cc9
interpolate without values is used to abort interpolating -> no warning
2013-07-04 19:46:27 +02:00
Thomas Geymayer
92f363926e
Replace auto_ptr to prevent possible undefined behavior
2013-07-04 16:09:04 +02:00
Thomas Geymayer
d0ff144753
Canvas: Fix removing text elements.
...
Removing text elements failed due to prefering removing the
style property with the same name. Add a flag to each style
indicating whether it can be inherited. The text property
is only applicable to text elements and can not be inherited.
Now groups can not have a text property, avoiding the name
clash with the text element.
2013-07-04 14:11:54 +02:00
Thomas Geymayer
943efbb3ed
Canvas Event System: add missing currentTarget field.
2013-07-04 00:53:49 +02:00
Thomas Geymayer
6962de4b1f
Canvas: fix property inheritance.
...
- Do not override style of children if they have own values set.
- Retrieve style of parent if own style value has been removed.
2013-07-03 00:05:20 +02:00
Thomas Geymayer
6f7c0c23d1
Canvas: prevent bubbling of mouseenter and mouseleave.
2013-06-30 21:27:03 +02:00
Thomas Geymayer
14eccc70da
Restore compatibility with stable OSG (3.0.1)
2013-06-30 21:25:21 +02:00
Thomas Geymayer
d4b48cec5d
Canvas: clear mousedown/click if mouse leaves canvas.
2013-06-29 14:29:38 +02:00
Thomas Geymayer
2d23c5351f
Canvas: Improve checks to mark events as handled.
2013-06-29 14:16:39 +02:00
Thomas Geymayer
b5dfaf170a
Canvas: Ensure events are dispatched to canvas with no element hit.
2013-06-29 14:14:12 +02:00
Thomas Geymayer
c372591f36
Canvas: Ignore hidden element on event traversal.
2013-06-29 14:12:59 +02:00
Thomas Geymayer
36d1308aa6
Canvas: fix distance check for click events.
2013-06-29 14:11:19 +02:00
Thomas Geymayer
b0d6ed3844
Canvas: trigger missing events on mouseup.
...
On mouseup send mouseout/mouseleave to old element and
mouseenter/mouseover to new element. This fixes hover
actions after dragging.
2013-06-29 11:33:44 +02:00
Torsten Dreyer
5818366d92
Bump version number to 2.12.0
2013-06-28 12:09:30 +02:00
James Turner
e5bca74b9d
std::string namespace fixes.
2013-06-27 10:14:08 +01:00
Thomas Geymayer
82dd1e4be9
Set binding after color array (required by OSG 3.1.8)
2013-06-27 00:38:44 +02:00
Alex Romosan
d0b77639c2
Ensure compatibility with OSG 3.1.8.
2013-06-26 23:54:09 +02:00
James Turner
6edb0f66d5
Fix crash when telnet or other protocols close.
...
http://code.google.com/p/flightgear-bugs/issues/detail?id=1144
2013-06-26 21:50:27 +01:00
James Turner
c458c13af7
XCode warning fixes.
2013-06-22 16:15:41 +01:00
James Turner
bb7875edd4
Fix a warning spotted by Emilian.
2013-06-22 16:15:30 +01:00
James Turner
6f54fb90eb
Object names for STG groups / nodes.
2013-06-22 14:27:53 +01:00
James Turner
4d1e7c536f
Fix preview exclusion of sliders.
2013-06-22 14:27:18 +01:00
James Turner
59cc200f92
Fix pick callbacks on scenery.
...
Ensure pick callbacks work over the whole pick group, otherwise
the visible render group is hit first, and resolves to the ground
pick callback instead.
This fixes the hangar doors at KSFO and Moffett.
2013-06-22 11:59:42 +01:00
Thomas Geymayer
c6093430ae
Canvas: Fix creating/forwarding of mouseenter/mouseleave events.
2013-06-20 23:13:47 +02:00
James Turner
23172bcdd0
Windows SGPath::desktop() impl
...
Basic SHGetSpecialFolderPath wrapper, with dynamic
finding of the function since linking to shell32.dll
is painful. Obviously could be generalised to other
CSIDLs in the future.
2013-06-19 23:58:57 +01:00
James Turner
aea2dab0d7
Fix preprocessor boolean ops for MSVC
2013-06-19 09:04:15 +01:00
James Turner
4d26e144ab
SVN client - prefix error constants.
...
Avoid Windows clashes on common names (NO_ERROR, etc)
2013-06-19 08:42:47 +01:00
Thomas Geymayer
c391fcd345
Canvas: fix updating placements after non matching placements
2013-06-18 23:07:20 +02:00
Thomas Geymayer
ece743342a
canvas::Text: Make font resolution user configurable
2013-06-16 10:49:46 +02:00
Thomas Geymayer
02babbe340
canvas::Text: set font resolution to actual texel size.
2013-06-14 23:33:26 +02:00
Thomas Geymayer
e27b6d050c
CanvasGroup: Do not try to remove already removed children.
2013-06-14 19:47:09 +02:00
Thomas Geymayer
86e2de8d10
Fix #1139
...
Always set TEST_LIBS as applications/tools also need to link
them, even if tests are disabled. Also allow disabling building
of sg_pkgutil.
2013-06-12 23:56:04 +02:00
James Turner
b4526f926d
Use CoreServices, not Cocoa, for FSFindFolder
2013-06-12 22:11:43 +02:00
Thomas Geymayer
14f04878d1
CanvasGroup: allow derived classes to provide more/other child factories
2013-06-11 22:09:57 +02:00
Thomas Geymayer
830fb3b752
Use TEST_LIBS to include all libraries needed (on Mac)
2013-06-11 20:26:07 +02:00
Thomas Geymayer
9a336da359
Use global TEST_LIBS...
2013-06-11 19:41:29 +02:00
Thomas Geymayer
6cec49ce7e
Missing library for Apple
2013-06-11 18:04:06 +02:00
Thomas Geymayer
6c28edea55
SGPath: new helpers and static members for home and desktop path
2013-06-10 21:37:00 +02:00
Thomas Geymayer
d7870d672e
strutils: move unescape and simplify starts_with/ends_with
2013-06-10 21:36:13 +02:00
James Turner
5bd9228b4a
Fix HTTP tests build.
2013-06-09 23:45:43 +01:00
James Turner
6392cf5a2f
Fix Linux build of SVN code.
2013-06-09 23:14:25 +01:00
James Turner
6a2e2b704e
Optionally, use internal code for SVN syncs.
2013-06-09 22:55:15 +01:00
James Turner
ecec803388
SVN read-only client code using our HTTP engine.
2013-06-09 19:19:03 +01:00
James Turner
848965e7f0
EasyXML: expose attributes easier.
2013-06-09 19:19:03 +01:00
James Turner
478af5f01e
Base64 and hex helpers for strings
2013-06-09 19:19:03 +01:00
James Turner
14decb7387
simgear::Dir helpers
...
- remove all children of the dir
- check is the dir has children / is empty
2013-06-09 19:19:02 +01:00
James Turner
323d0d5ba0
HTTP engine tweaks for SVN support.
2013-06-09 19:19:02 +01:00
Thomas Geymayer
9bfa6ac1a1
Restructure Canvas/PropertyBasedElement
...
Nodes inside the osg scenegraph now hold a strong reference to
the according canvas element. Canvas elements in turn now only
hold a weak reference to the according node. This simplifies
for example the canvas::Group as it does not need to keep a
list of children on its own anymore. This is now stored inside
the scenegraph (as it was already before).
The restructuring will also allow to use a canvas::Group for
the canvas gui inside FlightGear and share for example the
handling of stacking based on z-index.
2013-06-08 11:28:49 +02:00
Thomas Geymayer
c8af817eeb
CSSBorder: Do not return unitialized data.
2013-06-07 18:54:41 +02:00
Thomas Geymayer
d24d3ce487
Canvas: More helper functions and cleanup.
2013-06-07 16:45:34 +02:00
Thomas Geymayer
60a81dfbd8
CanvasGroup: Fix handling z-index while moving child to front.
2013-06-07 16:23:44 +02:00
Thomas Geymayer
8896a59dff
Helper functions for SGRect and canvas::Element
2013-06-06 22:28:00 +02:00
Thomas Geymayer
7fe16d99be
Canvas: clear event listeners on destroy
...
Removing all event listeneres on destroying a canvas
prevents circular references due to Nasal event listeners
keeping a reference to the canvas in their closure.
Also fix event handling with direct children of the root
group and add some more helpers to the Canvas.
2013-06-03 23:39:27 +02:00
Thomas Geymayer
c3af88dfc1
Canvas: set blend function for elements and prevent autoresize
2013-06-02 23:32:53 +02:00
Thomas Geymayer
5c8f0cc966
Make nasal::Ghost usable with weak_ptr
2013-06-02 21:20:47 +02:00
Thomas Geymayer
2a6c50c893
More helper methods for Canvas and PropertyBasedElement.
2013-06-02 21:19:37 +02:00
Thomas Geymayer
7a8d796ac1
Move BlendFunc parsing to separate file for easier reuse.
2013-06-02 20:41:03 +02:00
Thomas Geymayer
8b3b71bce3
Support for parsing basic CSS color keywords.
2013-05-31 19:18:36 +02:00
Thomas Geymayer
83da4e9248
Canvas Image: fix updating while showing nested canvas.
2013-05-31 19:17:30 +02:00
Thomas Geymayer
2c879095d9
Canvas: add chainable helpers to Path for adding segments.
2013-05-31 19:16:42 +02:00
Thomas Geymayer
13344fbb62
Canvas: separate CSSBorder parsing from image.
2013-05-31 19:14:39 +02:00
Thomas Geymayer
2fe9ad595f
Canvas: bug fixing and add some helpers.
2013-05-31 19:07:55 +02:00
Stuart Buchanan
0f798289f0
Use square textures for trees, with shrunk UV coordinates.
2013-05-19 21:29:58 +01:00
Thomas Geymayer
01104cc1d3
Canvas: Add local_pos to mouse event and fix transformation of event positions with multi-level nested canvases.
2013-05-13 00:34:09 +02:00
Thomas Geymayer
d61b5827fd
Canvas: proper forwarding of dirty and visible flags within nested canvases.
2013-05-13 00:26:13 +02:00
Stuart Buchanan
d18cc81531
Avoid UV bleeding issues on trees by using a strip of textures.
2013-05-10 20:03:48 +01:00
Thomas Geymayer
c96d7ae226
Use simulation time for spin and timed animations
2013-05-10 01:11:46 +02:00
Thomas Geymayer
9535aef59b
Extend SGPickCallback to allow passing more information to callbacks
2013-05-09 21:31:27 +02:00
Thomas Geymayer
82f6fca06f
Add (optional) uv coordinates to SGPickCallback
2013-05-09 12:40:59 +02:00
Thomas Geymayer
627b36a53b
Prevent timer endless loops
2013-05-06 23:26:45 +02:00
Thomas Geymayer
2af78a3874
Allow adding a contition to locked-track animation
2013-05-02 00:47:51 +02:00
Stuart Buchanan
7c7109edf4
Reduce the height of tree UV coordinates to work around mipmap issues.
2013-05-01 22:01:45 +01:00
Thomas Geymayer
0fa23b83e6
Extend locked-track animation to support a slave element.
...
This allows tracking elements while at the same time changing the
rotation of both animated elements to fill the available distance
to the target element. This allows for example animating gear
scissors or other connected objects like gear doors and their
actuators/arms (possibly connected to the gear strut).
2013-04-28 23:46:25 +02:00
Thomas Geymayer
e53c71543a
Move and rework pow to math/SGMisc
2013-04-28 15:43:02 +02:00
Thomas Geymayer
fa64f7b6aa
Work around MSVC linker bug with classes derived from i/ofstream
2013-04-27 23:44:32 +02:00
Thomas Geymayer
eaac3a64f8
Fix linker error for test
2013-04-26 23:48:25 +02:00
Thomas Geymayer
4eabc45dfc
Fix animation tests for low precision floating point
2013-04-26 00:19:00 +02:00
Thomas Geymayer
5c5e2a0f2f
Remove debug output (and shorten test names)
2013-04-26 00:13:35 +02:00
Thomas Geymayer
559a5d146a
Add trackTo (locked-track) animation
2013-04-25 23:23:16 +02:00
Stuart Buchanan
df46c58cb8
Reduce the texture coords for trees.
...
Support winter, summer and snow textures on single texture sheet.
2013-04-20 21:05:55 +01:00
Thomas Geymayer
1f43132363
Canvas: rework style setter system.
...
Style setters are now only setup once for each element type and
not for each element instance as before. A static map holds the
setters for each element type. Also an animation type is stored
which will later allow to animate properties of Canvas elements
without specifying and animation type.
2013-04-20 00:22:37 +02:00
Thomas Geymayer
17369a20de
CanvaImage: Enable texture repeat for images
2013-04-15 21:09:41 +02:00
Thomas Geymayer
c83dae4c70
Comparison operators for SGSharedPtr
2013-04-13 16:21:04 +02:00
James Turner
c2f44a51c4
Restructure to avoid ordering issues.
...
Create a pick group for each object, instead of a single one. This
can be optimised in the future but this structure is backwards-
compatible with existing usage, which is more important.
2013-04-13 14:40:55 +01:00
Thomas Geymayer
3da44d1215
Nasal: add naVec_removelast. (Thanks to Philosopher)
2013-04-12 12:32:03 +02:00
James Turner
f6709e357f
Support for proxy pick objects.
...
Pick, knob and slider animations support additional object-names,
which are always invisible and untransformed (in the case of knobs/
sliders). These objects act to extend the hover/pick area, making small
switches and knobs more usable. (Especially for users with smaller
screens / windows).
2013-04-05 17:12:58 +01:00
James Turner
45d5511fd7
Remove stray debug.
2013-04-02 18:10:09 +01:00
Thomas Geymayer
198c5d23fd
nasal::Ghost tweaking to allow using with osg::oberser_ptr.
2013-04-01 13:35:41 +02:00
Thomas Geymayer
c41caeaf64
Ensure every scenery model has own SGModelData.
...
This makes Nasal unload hooks of scenery objects working again.
Previously the same SGModelData instance was used for all objects
which never got destroyed and therefore was not able to call any
unload callback.
2013-04-01 13:22:28 +02:00
Thomas Geymayer
b6c542b0e7
nasal::Ghost tweaking and to_nasal_helper for SGGeod.
2013-03-23 12:47:06 +01:00
Thomas Geymayer
2d62275a08
Fix uninitialized member.
...
Thanks to Chris for the catch.
2013-03-20 23:44:26 +01:00
Thomas Geymayer
971ea81861
cppbind: add from_nasal_helper to convert Nasal ghosts to C++ shared pointer
2013-03-19 18:36:55 +01:00
Thomas Geymayer
9e9cc7859c
Interpolation system tweaking and add helpers to SGPropertyNode to interpolate its value
2013-03-17 23:48:01 +01:00
Thomas Geymayer
8898f5fe52
Tweak interpolator and allow passing list of interpolation steps
2013-03-16 16:36:20 +01:00
Thomas Geymayer
40be69ae8e
Remove unecessary dependency from libSimGearCore on libSimGearScene.
2013-03-16 12:19:23 +01:00
Thomas Geymayer
17eec81071
Fix headless build
2013-03-16 10:35:30 +01:00
Thomas Geymayer
c9bbbd18ec
New interpolation/animation system.
...
Inspired by jQuery.animate() properties can be interpolated using
different easing functions and specifying an animation duration.
Additionally animations can be chained to get table-based
animations like with the current SGInterpolator, or also create
looped animations or other more complicated curves.
Currently this system is not used yet, but it is intended to
replace SGInterpolator and allow more advanced animations of
eg. also colors, for example, for the canvas.
2013-03-15 23:37:17 +01:00
Thomas Geymayer
e08eda18d5
CMake: Create list of libs for testing only once
2013-03-15 23:21:38 +01:00
James Turner
d2c03a6651
Fix pick-callbacks with no action.
...
Ensure pick animations work only to show a tooltip. Thanks to Emilian
for noticing I broke this
2013-03-12 21:14:31 +00:00
Thomas Geymayer
0a1e920659
Ensure canvas is updated before displaying image containing a canvas
2013-03-11 21:22:43 +01:00
James Turner
cd58df820e
Standardise location (in XML) of hovered elements.
...
Hovered bindings are always direction children of the pick animation, since having different hovered behaviours per-action makes no sense.
2013-03-11 18:07:27 +00:00
James Turner
1a5467aec8
Collect properties from expression/condition trees.
...
Initial ground-work to support efficient updating of condition/expression results; allow collecting all the dependent property values from the hierarchy, so they can be observed. Also add a very small test-case for this.
2013-03-11 16:53:52 +00:00
Thomas Geymayer
0dcb64dca3
slider - fix shifted check while dragging
2013-03-10 23:10:26 +01:00
James Turner
b703102d9b
Part of fixing bug 1055.
...
Add machinery to convert hateful legacy Windows encodings to UTF-8.
2013-03-10 13:38:29 +00:00
James Turner
3c2ef75b50
Tweaks for pick callback cursors.
2013-03-10 12:03:09 +00:00
James Turner
4fa530354d
Knob/slider - clean up internals.
...
Add support for a global sensitivity parameter to scale drag response.
2013-03-08 16:31:02 +00:00
James Turner
eeeb30dc3f
Work on knob/slider animations.
...
Rename some values, and support mouse-dragging.
2013-03-07 18:40:37 +00:00
PlutoniumHeart
870fc2e53e
Replacing strdup with _strdup in MSVC
2013-03-06 23:58:38 -07:00
Thomas Geymayer
79ae0da927
Fix some warnings
2013-03-07 00:17:45 +01:00
Thomas Geymayer
e179bda57a
add static_pointer_cast for SGSharedPtr
2013-03-06 23:17:02 +01:00
Thomas Geymayer
8e0c15e32e
cppbind: allow adding free functions accepting nasal::CallContext and do some cleanup
2013-03-06 17:00:38 +01:00
Thomas Geymayer
ff844f6760
May MSVC likes this more...
2013-03-05 18:12:17 +01:00
Thomas Geymayer
bc96ac85f4
cppbind: Add some methods to nasal::CallContext
2013-03-05 17:27:49 +01:00
James Turner
33b328e3d5
Fix priority of pick animations.
2013-03-05 08:39:44 +00:00
James Turner
dcda8d1c7a
Add a pick priority lower than the default.
2013-03-04 23:33:21 +00:00
James Turner
5fd2bd225f
Support motion-tracking in pick callbacks.
2013-03-04 23:11:40 +00:00
Thomas Geymayer
2db8859076
cppbind: Tweak from_nasal error reporting
2013-03-04 23:15:13 +01:00
Thomas Geymayer
6eff167a28
Silence MSVC
2013-03-04 18:42:32 +01:00
Thomas Geymayer
9fecb69b84
cppbind: tweaking from_nasal/to_nasal.
2013-03-04 16:26:28 +01:00
Thomas Geymayer
0539aa38e5
cppbind: faster from_nasal for bool and fix VS warning.
2013-03-04 00:30:30 +01:00
James Turner
fe9caad391
Max catalog age configurable per-catalog.
...
Allows for short-validity catalogs for development use.
2013-03-03 23:03:09 +00:00
Thomas Geymayer
ceae2928aa
cppbind: refactor to_nasal for better name lookup.
...
Using template parameter dependent name lookup it is
now possible to create to_nasal_helper overloads
for custom types and having them used for automatic
type conversion with binding methods/member on
nasal::Ghost objects.
2013-03-03 23:42:40 +01:00
Christian Schmitt
0e6934abe5
Add a missing define for minizip, needed on some installations of zlib
2013-03-03 23:35:43 +01:00
Thomas Geymayer
a2e7c92f99
cppbind: Allow getter without from_nasal defined and setter without to_nasal.
2013-03-03 20:55:57 +01:00
Thomas Geymayer
643a8717b4
Make old gcc happy
2013-03-03 20:16:21 +01:00
Thomas Geymayer
f21127fd4a
cppbind: rework to allow binding nearly everything.
...
It is now possible to register all types of member function
and free functions as methods for nasal::Ghost objects.
The return value and arguments are converte automatically
to the required types.
Also usage is simplified by removing replacing the old
method and method_func with a single method function
which only needs a name for the method and something
callable.
2013-03-03 19:28:39 +01:00
Peter Sadrozinski
0bc8005100
Add new api to retreive a list of SGBuckets within a bounding rectangle
2013-03-03 19:21:05 +01:00
James Turner
67efc1f68f
Look for MSVC 3rdparty deps differently.
...
Check for the 3rdparty dir in the parent of build dir, not the parent of the source dir. For the recommended build layout, this is the same location, but for super-builds using fgmeta it's not (and the source tree should not be touched).
If this causes anyone issues, please let me know, since it's possible more flexibility is needed to set the path explicitly.
2013-03-03 16:06:51 +00:00
James Turner
dfebf60e68
Simplify CMakeLists now package code is enabled.
2013-03-03 16:01:06 +00:00
James Turner
26e7d134ce
Package management tweaks.
2013-03-03 15:03:25 +00:00
Thomas Geymayer
c414242f13
sg_netChat: let getTerminator return const char* for compatiblity with FlightGear
2013-03-03 01:19:35 +01:00
Thomas Geymayer
33e60725b1
sg_netChat: Use std::string to prevent crash with old strdup.
...
Thanks to Godspeed for noticing this code crashing with MSVC.
Using std::string should fix this.
2013-03-03 01:12:01 +01:00
James Turner
f21b0985cc
pkgutil can show detailed info about a package.
2013-03-02 17:02:08 +00:00
James Turner
71e9548c20
Lots more work on package support.
...
Delegate is hooked up in the demo util, and Install forwards control to the delegate too.
2013-03-02 16:30:39 +00:00
James Turner
fc64abea5c
LGPL license on package files.
2013-03-02 15:15:52 +00:00
James Turner
413e89c955
Package dependencies.
2013-03-02 15:14:09 +00:00
James Turner
439041c2f4
Enable package code by default.
2013-03-02 14:43:19 +00:00
Thomas Geymayer
530de4d809
cppbind: Prepare for improved bindings.
...
- Improved Nasal/C++ bindings will follow. For now just test if
all compilers are happy with intended approach.
- Add to_nasal overload for std::map<std::string, T>.
2013-03-02 00:13:48 +01:00
Thomas Geymayer
5e45bdeeda
Add optional user_data to Nasal C functions.
...
A user_data pointer and another pointer to an optional
deleter function is stored in unused parts of the naPtr
union. The previous behavior of extension functions does
not change. Only one additional boolean comparison is
required upon each function call to check whether user
data is available.
2013-03-01 12:22:51 +01:00
Thomas Geymayer
081eba903f
Visual Studio fix
2013-03-01 00:33:47 +01:00
Thomas Geymayer
0def045611
cppbind: Fix SGPath from_nasal_helper
2013-02-28 23:46:55 +01:00
Thomas Geymayer
e20cc6a90f
Nasal cppbind: support more member function types
2013-02-28 23:43:42 +01:00
Thomas Geymayer
7dd83dd2d1
Fix boolean conversion
2013-02-28 22:23:30 +01:00
Thomas Geymayer
1240807b9f
ODGauge/Canvas: add option "additive-blend" to use additive alpha blending
2013-02-28 22:04:16 +01:00
James Turner
ad7d6624de
Fix some signed/unsigned comparisoms.
2013-02-28 19:45:19 +00:00
James Turner
06b089ba13
Updated package-management code.
...
Use mini-unzip code to extract, since we don't need all the features of libArchive, and the deployment issues become simpler.
2013-02-28 18:31:28 +00:00
Thomas Geymayer
e1302bcf17
CanvasImage: Fix border abs/rel calculations; add slice-width property
2013-02-28 01:09:27 +01:00
Thomas Geymayer
cfdc7db79a
sgstream_test needs linking with zlib
2013-02-26 12:53:56 +01:00
Thomas Geymayer
50de873453
Canvas: ensure z-index is updated on adding new child.
2013-02-26 12:49:04 +01:00
Christian Schmitt
a4ae7b2059
sgstream: detect two directly following CR/LF EOL correctly in skipeol,
...
supply a testcase for this.
2013-02-26 11:56:14 +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
Thomas Geymayer
328e6b3e28
Update bounding box if calling update() on canvas elements
2013-02-24 20:44:02 +01:00
Thomas Geymayer
5441db9b18
Support image slice/scale-9 for CanvasImage.
2013-02-24 17:57:19 +01:00
Thomas Geymayer
06bfa4f1a1
Fix package management compiling with linux
2013-02-21 14:03:08 +01:00
James Turner
a530712491
Initial work on package management.
...
Basic library infrastructure, catalog download/refresh, and package install,
uninstall and update. Disabled at cmake time by default, and not yet hooked
into FlightGear.
2013-02-20 16:17:22 +00:00
James Turner
3c8cfe9b76
Fix MSVC compilation, thanks to Fred.
2013-02-18 13:56:41 +00:00
Eric van den Berg
57b4ce96e4
added physical constant cp
2013-02-18 08:58:52 +00:00
Hooray
63c7d64143
fix mingw
2013-02-18 08:58:52 +00:00
Thomas Geymayer
1784327c47
CanvasImage: Use image/canvas size rather than texture size
2013-02-15 12:32:31 +01:00
Thomas Geymayer
a63ec83d5f
CanvasImage: Use normalized coordinates by default.
...
Using absolute sizes by default lead to problems,
as while creating the image the size of the later
texture is not available.
2013-02-14 17:32:19 +01:00
Thomas Geymayer
d661516b02
Expose whether CanvasElement is visible
2013-02-13 12:09:15 +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
eac169b6da
Grrrr.
2013-02-09 15:45:36 +00:00
James Turner
a60d293759
Tweak APi for GCC happiness.
2013-02-09 14:11:48 +00:00
James Turner
b0063f8db6
Command-manager supports functors.
...
Will be used to support native Nasal commands, which was tricky with pure function pointers before. Can also be used to avoid some trampoline functions in the code, but this can happen gradually.
2013-02-09 12:40:44 +00:00
Thomas Geymayer
632abdd87b
Fix CanvasText horizontal alignment.
...
Don't reduce width of bounding box below character width
even if outline of rendered character is smaller. This
prevents trailing spaces from being ignored and also
fixes continuously chaging alignment (especially with
monospace fonts).
2013-02-09 12:17:45 +01:00
James Turner
d9b01ca5de
Foundations of hover support in pick-callbacks.
2013-02-09 11:11:53 +00:00
James Turner
adb7db9229
Ensure individual log-level setting works.
2013-02-08 20:17:27 +00:00
James Turner
e4f7aec965
Linux needs explicit <algorithm> include.
2013-02-08 20:07:11 +00:00
James Turner
768a8c1062
Give terrasync a buffered log.
2013-02-08 19:37:47 +00:00
James Turner
318c5000ce
Logging tweaks.
...
More pieces to support logging to buffers in the GUI.
2013-02-08 19:37:29 +00:00
James Turner
70f334e1a3
Fix GCC warnings about signed/unsigned compare.
2013-02-08 12:58:02 +00:00
James Turner
279b53a705
Move BufferedLogCallback to its own class.
...
Reduces includes in logstream.hxx, which is included by everyone and hence needs to be lightweight.
2013-02-08 12:58:02 +00:00
James Turner
a72a3ce5f3
Fix stderr log filtering.
...
Thanks to Stuart for pointing this out!
2013-02-08 12:58:02 +00:00
Thomas Geymayer
979aea5212
Add SGMisc::seek helper
2013-02-08 12:12:15 +01:00
James Turner
34d3c63384
Fix bucketBoxTest linkage.
2013-02-07 17:53:34 +00:00
James Turner
cf4af2692b
Fix property tests static linkage.
2013-02-07 17:51:42 +00:00
James Turner
d335ca5a8d
A couple more tests fixes.
2013-02-07 17:48:58 +00:00
James Turner
9cac2c1457
Fix math test linkage.
2013-02-07 17:42:00 +00:00
James Turner
523b992b4c
Windows logging tweaks.
...
Restore the freopen calls, though I am unsure exactly what they achieve.
2013-02-07 17:23:31 +00:00
Christian Schmitt
02be490466
Missing headers
2013-02-07 18:20:57 +01:00
James Turner
45ae3978f6
Fix handling of ZSTREAM_END result from zlib.
...
Avoid getting stuck when ZSTREAM_END occurs with no more bytes written out.
2013-02-07 13:01:56 +01:00
James Turner
f983194d7e
Buffered log-callback.
...
Allow a particular set of log messages to be retained indefinitely, for (presumably) later display somehow, such as in the GUI.
2013-02-07 13:01:56 +01:00
James Turner
ab8373b989
Rewrite logging code.
...
Support multiple backends, and make it thread-safe. Use an internal thread to push log entries to backends, to avoid blocking the submitting thread for any time.
2013-02-07 13:01:56 +01:00
Thomas Geymayer
4bef2c48eb
Remove debug output
2013-02-07 10:10:38 +01:00
Thomas Geymayer
21e2a769eb
Fix PropertyObject bug and interface improvements.
...
- Fix overwriting of parent node if PropertyObject::node() is
called for a non-existing node.
- Prevent implicit conversion from const char* and
SGPropertyNode*
2013-02-07 01:25:55 +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
Thomas Geymayer
5dea221ad5
Expose reloading Canvas placements
2013-02-06 01:19:24 +01: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
Thomas Geymayer
e7f9486aa1
Nasal String wrapper and allow adding methods to string objects.
...
- Add nasal::String for wrapping Nasal string data and accessing
string methods (which eg. could be exposed to Nasal)
- Allow adding functions from C/C++ which are callable on
Nasal strings.
2013-01-31 19:07:33 +01: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
Eric van den Berg
d2622a5d86
added some physical constants to constants.h
...
goes with fgfs merge request #38
2013-01-28 16:56:07 +00:00
James Turner
d11db8a67a
Prepare for optionally embedded SimGear.
2013-01-26 15:31:17 +01:00
James Turner
98b6102e56
State-machine correctness tweaks.
2013-01-25 12:05:16 +01:00
James Turner
0db8613a21
StateMachine tweaks.
2013-01-25 09:29:31 +01:00
James Turner
94a6cb2cff
Tolerate lack of C99 in MSVC.
2013-01-23 16:01:46 +01:00
James Turner
5b92575ed3
Fix state-machine test linkage with static libs.
...
Thanks to Thomas for the catch.
2013-01-22 20:56:57 +01:00
Thomas Geymayer
47b02c0480
Missing include
2013-01-22 19:20:41 +01:00
James Turner
691be54ca2
Keep Linux happy.
2013-01-22 18:53:51 +01:00
James Turner
22ea8ebe25
State-machine structure, initial work.
2013-01-22 18:08:44 +01:00
James Turner
bd71635c49
Add left/right Nasal library functions.
2013-01-22 18:06:50 +01:00
James Turner
830bc3eac3
More native math functions in Nasal.
2013-01-22 18:06: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
Torsten Dreyer
7489771ad2
Bump version to 2.11.0
2013-01-17 19:22:07 +01:00
Thomas Geymayer
ea8023e51f
Canvas: Provide sane default bounding box (For Image & Text)
2013-01-09 12:11:19 +01:00
Thomas Geymayer
8a9693a28e
Fix canvas mouse intersection test
...
Bounding box of drawables use other coordinate frame
then bounding sphere of MatrixTransform...
2013-01-05 00:44:19 +01:00
Thomas Geymayer
724fba4af9
canvas::Element: parse full 3x3 matrix
...
This doesn't change any existing behaviour but allows specifying
full 3x3 matrix to eg. perform a perspective transform needed
for some HUDs.
2013-01-01 14:18:39 +01:00
Thomas Geymayer
beca1cbf96
Allow nasal::Ghost to only wrap classes by their shared pointers
...
This removes support for exposing and managing classes by just
raw pointers as this made lifetime management of instances
from C++ to Nasal and especially the other way round nearly
impossible. Always using smart pointers saves us from a lot
of headaches.
2012-12-29 17:49:22 +01:00
James Turner
b74d2ae9fa
Notify all requests on name lookup failures.
...
Since there's no active request during a name lookup failure, explicitly fail all sent and queued requests, so the Request subclasses can take regular failure action.
2012-12-29 14:36:38 +00:00
James Turner
ec82a0154b
Expose the current members of a subsystem group.
2012-12-28 14:54:00 +00:00
James Turner
0ea8dbea10
Add SGPath to the Nasal conversion helpers.
2012-12-28 14:53:31 +00:00
James Turner
a131f44247
OS-X specific sleep helper, more stable.
2012-12-23 23:30:40 +00:00
Thomas Geymayer
0423aedffc
Revert to old way of including everything from SGMath.hxx
2012-12-23 01:30:41 +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
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
Torsten Dreyer
c53fd5fc9a
feature freeze for 2.10.0, new version number
2012-12-18 21:57:02 +01:00
Thomas Geymayer
bc3dd06b26
Missing file...
2012-12-17 10:53:52 +01:00
Thomas Geymayer
fd39808ed8
Nasal cppbindings: automatic conversion of vec2 to/from Nasal
2012-12-17 00:29:14 +01:00
Thomas Geymayer
a1b7cb5330
Fix memory leak if nasal::Ghost creation fails
2012-12-16 21:31:19 +01:00
Thomas Geymayer
ac27fae712
Canvas: Remove old event handling code
2012-12-16 19:02:21 +01:00
Thomas Geymayer
f6270ec395
Canvas: create mouseover/mouseout events
2012-12-16 18:52:32 +01:00
James Turner
e9c70f8b1c
Improve HTTP behaviour when name lookup fails.
...
Don't endlessly re-send requests when name lookup fails; inform the next layer up so it can decide whether to retry.
2012-12-15 15:09:33 +00:00
Thomas Geymayer
50688e1159
Rename simgear::Rect to SGRect and make interface more similar to SGBox
2012-12-13 23:37:21 +01:00
Thomas Geymayer
8417fea3bf
Overload Rect::contains and add compound assignment operators to PropertyObject
2012-12-13 00:30:11 +01:00
James Turner
f5150d32af
Whoops, fix bad #ifdef to disable sound. Bug #958
2012-12-12 11:16:29 +00:00
Thomas Geymayer
2263823f75
Create new FBO if Canvas render target size chanages
...
As doesnt seem to work to just resize the texture, if changing
the size of the Canvas render target a new FBO is created and
placed on all active placements.
2012-12-09 23:08:07 +01:00
Thomas Geymayer
a882263033
Canvas: MouseEvent now contains screen and client pos
2012-12-08 15:01:01 +01:00
James Turner
24d2431522
Work on making OpenAL a compile-time option.
...
ENABLE_SOUND=0 now works when configuring SimGear, and libSimGearScene can be linked without OpenAL. However, more testing of FlightGear in this mode is needed before it's officially supported!
2012-12-07 15:26:24 -05:00
Thomas Geymayer
fd27e7bd43
Canvas: basic support for rectangular clipping (like CSS clip property)
2012-12-07 18:36:37 +01:00
Thomas Geymayer
4dfe36cdc1
Canvas: Fix handling drag events and some cleanup.
2012-12-07 18:35:20 +01:00
Thomas Geymayer
fc49be1e05
Implement Canvas single/double/tripple click handling.
...
- Implement click event creation like specified in
DOM Level 3:
* Check for max move distance between mousedown/up
and clicks
* Check for click timeout
* Count clicks and report double clicks
2012-12-06 23:16:36 +01:00
Thomas Geymayer
d06d94c767
Canvas: Propagate style changes on groups to children
2012-12-06 11:33:51 +01: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
e9b499b82d
Extend Canvas to retrieve bounding box of groups
2012-12-04 23:58:08 +01:00
Thomas Geymayer
e6e3e686c6
canvas::Element: print warning instead of crash on removing unknown transform
2012-12-02 23:55:34 +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
Thomas Geymayer
46442ef50c
First working version of DOM like Canvas event handling
...
- Now it is possible to attach listeners to canvas
elements and also the canvas itself, which get
called upon different mouse events (Currently
only basic mouse events supported. click/dblclick
etc. are missing)
2012-12-02 13:22:37 +01:00
ThorstenB
7d8fde82e6
Fixed incomplete copy&paste issue.
2012-12-01 11:07:10 +01:00
ThorstenB
99cf057906
#946 : some libraries not found on Ubuntu/Debian
...
Ubuntu/Debian introduced "multiarch" library directories, which is
unsupported by CMake <= 2.8.10. Add manual search paths as a workaround.
Currently it is only needed for libsvn, but it is needed for any lib
which is converted to the new directory standard.
2012-12-01 11:00:50 +01:00
Frederic Bouvier
59d3d66f91
Look for Boost 1.52.0 and OpenRTI under Windows
2012-12-01 10:59:58 +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
Thomas Geymayer
8816d0a9ac
Add method canvas::Group::getElementById
...
- canvas::Group: New method to get a (possibly
nested) child by its id.
- nasal::Ghost: Also support recursive parent
hashes.
2012-11-30 00:06:17 +01:00
Thomas Geymayer
229837b14c
Fix some compiler warnings. size_t/int/unsigned conversions and extra ';'
2012-11-29 20:20:40 +01:00
Thomas Geymayer
94b068a40f
Use better method names and add comments
2012-11-29 17:52:52 +01:00
Thomas Geymayer
2f0dfc4d74
Add methods to get arguments passed to function from Nasal
2012-11-29 01:23:15 +01:00
Christian Schmitt
3391c44107
SGThread: compile under MSVC
2012-11-28 18:29:15 +01:00
Peter Sadrozinski
35aae588b8
SGThread: Add capability to get current thread id
2012-11-28 11:23:30 +01:00
Thomas Geymayer
c19585e22a
Simplify/Make VS happy
2012-11-27 15:14:54 +01:00
Thomas Geymayer
77946585b1
Canvas: Prepare for DOM Level 2 like event model.
2012-11-27 13:51:00 +01:00
Thomas Geymayer
88a35fd162
cppbind: Automatic conversion of derived ghosts and some cleanup/fixes
2012-11-27 13:02:36 +01:00
James Turner
7d8d4a03fb
Make SGLockingQueue::pop usable.
...
Since there's no external lock, it was impossible to check the queue was non-empty before a pop, without a race condition. To avoid this, tolerate an empty queue and return a default constructed value.
2012-11-25 22:36:15 +00: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
ThorstenB
d226709836
Change logging class for tie/untie messages.
...
It's enough to see them in "general".
2012-11-23 20:44:17 +01:00
ThorstenB
fbfd03fe5c
Add logging class for navaid systems.
2012-11-23 20:41:03 +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
Thomas Geymayer
767184cf3c
Extend CanvasSystemAdapter to provide access to Nasal gcSave and gcRelease
2012-11-22 00:54:56 +01:00
ThorstenB
fe86a9ed02
Fix compiler error with disabled sound support.
...
("source" is undefined in SGSampleGroup::stop).
Also fixes two related compiler warnings (unused var "sample").
2012-11-21 20:17:58 +01:00
Thomas Geymayer
9be53e746f
Allow canvas::Placements to have own properties
2012-11-21 13:05:19 +01:00
Thomas Geymayer
8b6f50d0cc
SGPropertyNode::fireCreatedRecursive: don't fire for node itself by default
2012-11-21 11:58:07 +01:00
James Turner
80dc28bfb5
Modernise the mat lib header, remove 'using std'
2012-11-20 17:10:13 +00:00
James Turner
983e1abf48
Work on ENABLE_SOUND.
...
Restructure SGSampleGroup, to make #ifdef-ing the OpenAL calls easier. No functionality change.
2012-11-20 12:20:21 +00:00
ThorstenB
ff65b82671
Keep (deprecated) SGTime::update method for a while
...
allowing dependent projects to adapt.
2012-11-19 23:42:51 +01:00
James Turner
0b26c69222
Remove duplicate members in SGSampleQueue.
...
Remove duplicate members shared by SGSoundSample and SGSampleQueue (which inherits from it). Change SGSoundSample to expose some members as protected data for access by the sample-queue, and hence share nearly all the methods. Also remove 'inline' keyword from virtual methods.
2012-11-19 15:33:53 +00:00
Thomas Geymayer
904d714d6d
Get Canvas/PropertyBasedElement by name
2012-11-18 16:27:05 +01:00
James Turner
2aed93a576
Fix HTTP test for revised POST semantics.
2012-11-17 19:51:57 +00:00
James Turner
d1af42e9ad
Tweak HTTP handling for POST requests.
...
Tolerate slightly malformed request URLs (no slash following the host specified), and use a better check when POST-ing to decide the request-body data source.
2012-11-17 18:08:38 +00:00
Thomas Geymayer
9f31addfa5
Fix for old gcc which got broken by fix for VS
2012-11-16 16:49:35 +01:00
Thomas Geymayer
d56ea7e6c4
Fix for VS bug
2012-11-16 15:49:43 +01:00
Thomas Geymayer
1cbe271ad5
Nasal bindings: Always pass object by reference
2012-11-16 12:24:47 +01:00
Thomas Geymayer
33db3c377f
One more fix for old gcc
2012-11-15 23:31:18 +01:00
Thomas Geymayer
a0535ef64d
Fix compile errors for old gcc
2012-11-15 22:17:43 +01:00
Thomas Geymayer
392ba18ff7
Canvas/C++ bindings: automatically detect dynamic type of polymorphic exposed classes
2012-11-15 21:17:33 +01:00
Thomas Geymayer
e872f9e928
Work around Visual Studio bug
2012-11-13 12:35:12 +01:00
Thomas Geymayer
04685a8179
C++/Nasal bindings: allow registering free function as member
2012-11-12 23:28:00 +01:00
Thomas Geymayer
55fbe68e62
Missing include and more doxygen improvements
2012-11-12 13:57:10 +01:00
Thomas Geymayer
f51e1f0cc8
Fix file headers
2012-11-12 12:25:08 +01:00
Thomas Geymayer
d31b62d44d
Add nasal::Ghost class for exposing C++ classes to Nasal
2012-11-12 12:11:41 +01:00
Mathias Froehlich
9fd90e26f7
hla: Remove HLADataElement::Path based attribute handling.
2012-11-11 20:39:59 +01:00
ThorstenB
dbea0c9361
Geoff McLane: realpath for Windows using _fullpath.
...
Also switch cygwin to use POSIX call.
2012-11-11 19:26:51 +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
Thomas Geymayer
0fef94cfdb
Add from_nasal helper and fix to_nasal for std::vector.
2012-11-10 14:34:18 +01:00
ThorstenB
a9b45967ce
gz wrapper to write and read "container files".
...
Packs arbitrary data (strings, property trees, binary blobs, ...) into a
single file.
Use this for storing/loading user-data only, not for distribution files
(scenery, aircraft etc).
2012-11-10 10:44:19 +01:00
ThorstenB
0928bca531
Proper fix for gzfilebuf choking on some files.
...
When reading a new block of data, and the first byte of the new block is
0xff (_signed_ char -1), then this must be converted to _integer_ 0xff
(+255), not -1 - which would indicate an error condition (EOF==-1). All
valid _data_ character must be returned as non-negative, see
streambuf::underflow spec, or compare with
http://www.opensource.apple.com/source/zlib/zlib-12/zlib/contrib/iostream/zfstream.cpp
or
http://www.raspberryginger.com/jbailey/minix/html/zfstream_8cpp-source.html
2012-11-10 10:12:01 +01:00
ThorstenB
77f73a79df
gzfilebuf choked when reading large, heavily compressed files.
...
Apparently a 4K buf isn't enough. 64K seem much better ;-).
Real solution may be an adaptive buffer size in gzfilebuf.
2012-11-09 22:04:11 +01: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
54778ee1e1
Some basic C++/Nasal binding helpers
...
- Add nasal::to_nasal for converting different C++ types
to the according Nasal types.
- Add nasal::Hash, an OOP wrapper around Nasal hashes.
2012-11-09 19:28:27 +01:00
Thomas Geymayer
4efcda534d
Workaround for VS10 Bug/Remove superfluous class qualification
2012-11-09 10:36:42 +01:00
Thomas Geymayer
45ac5cb2fa
Canvas cleanup and restructuring
...
- Add some methods for easier using the Canvas from C++
- Add some documentation to Nasal
2012-11-09 00:05:11 +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
ThorstenB
e37232aeb4
Disable build options unsupported for Windows.
2012-11-08 20:01:38 +01:00
ThorstenB
1c1c7dad7b
zfstream: use the correct buffer size
2012-11-08 00:04:48 +01:00
ThorstenB
b70b81f4cc
sgstream: implement gzipped output file stream (gzofstream)
...
Add missing output implementation for gzfilebuf.
2012-11-07 23:45:01 +01:00
ThorstenB
e3cf41a666
zfstream: fixed mixed white spaces
...
otherwise unchanged
2012-11-07 23:45:01 +01:00
James Turner
851a307c23
Test for, and fix, materials handling in BTG code.
...
It's possible (and happens!) to have less than 2^16 vertices or tex-coords, but more than 2^15 objects (tris) with the same materials. This was breaking our version 7 vs version 10 detection logic. Pete found the issue, I'm simply committing a version of his fix.
2012-11-07 21:10:00 +00:00
Thomas Geymayer
183d3749f0
Fix SGPropertyNode tests
2012-11-07 09:31:56 +01:00
ThorstenB
3fe513f9e0
Fix property find_last_child/addChild.
...
Initial "addChild" should have index #0 (not #1 ).
Also extend test cases.
(Test case shows addChild(append=false) isn't working as expected!?)
2012-11-07 00:53:32 +01:00
Thomas Geymayer
81bee2bbc6
Jenkins has some problems with bind and lambdas. Let's try it with ordinary function pointers...
2012-11-06 19:34:23 +01:00
Thomas Geymayer
34719da000
Clean up Canvas element creation
2012-11-06 18:48:00 +01:00
Thomas Geymayer
df8a3d9c60
SIMGEAR_HEADLESS define is not needed anymore
2012-11-05 18:06:13 +01: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
Thomas Geymayer
186bae2bd4
Proper headless build fix
2012-11-05 13:35:06 +01:00
Thomas Geymayer
f83c8828f0
Fix windows and headless build
2012-11-05 12:59:15 +01:00
Thomas Geymayer
509d064286
No need to link to ShivaVG anymore
2012-11-04 23:48:51 +01:00
Thomas Geymayer
2d039e393a
Include ShivaVG into libSimGearScene
2012-11-04 20:00:53 +01:00
Thomas Geymayer
9ab88d9387
Commited too fast...
2012-11-04 19:22:37 +01:00
Thomas Geymayer
882a2a0e52
Remove OpenVG dependency from header file
2012-11-04 19:21:33 +01:00
Thomas Geymayer
c6ce1d8c67
Fix adding ShivaVG include directory
2012-11-04 16:51:07 +01:00
Thomas Geymayer
77e1a2e4be
Fix signed/unsigned comparison warning
2012-11-04 15:26:41 +01:00
Thomas Geymayer
b99f53fda3
Refactor Canvas and add some helpers.
...
- Refactor Canvas from FlightGear and fix lazy rendering with
recursive canvases.
- New classes PropertyBasedElement and PropertyBasedManager for
creating subsystems controlled by the property tree.
- New method parseColor to parse CSS 3 conformant color strings
(only basic color schemes supported)
- New Rect class representing a rectangle.
2012-11-04 14:12:05 +01:00
Mathias Froehlich
a7f64cf7aa
scenery: put stg loaded models under a common lod node.
2012-11-01 07:19:38 +01:00
Thomas Geymayer
8ebc0f2b24
Add VGInitOperation for initializing OpenVG
2012-10-31 01:38:59 +01:00
Thomas Geymayer
5330dc34bc
Helper for property controlled subsystems
...
- Subsystem which manages a list of elements which
are controlled through the property tree.
- Fix a ShivaVG compiler warning.
- Add some helper functions to trigger property removed/add
events for a whole property tree.
2012-10-29 16:11:35 +01:00
Frederic Bouvier
4854a9e320
No bzero in MSVC
2012-10-29 08:48:55 +01:00
James Turner
71be1a9e28
HTTP enhancements.
...
Support content-encoding and improve pipelining support.
2012-10-27 18:03:51 +01:00
Thomas Geymayer
d0ae09c7e2
Link with ShivaVG
2012-10-25 01:02:38 +02:00
Thomas Geymayer
a25bd06138
ShivaVG: Support for pseudo non-zero fillrule
2012-10-25 01:02:23 +02:00
James Turner
1b55076897
Fix a Clang warning in Shiva.
2012-10-25 00:44:48 +02:00
Thomas Geymayer
5eac7974c9
Add missing glx.h include and fix some warnings.
2012-10-25 00:44:47 +02:00
James Turner
3afd6e9f51
Fix OS-X compilation.
2012-10-25 00:44:47 +02:00
Thomas Geymayer
05c107ba9c
Allow filling paths and do some clean up/fixing.
2012-10-25 00:44:47 +02:00
Thomas Geymayer
99b00daf87
Add ShivaVG sources
2012-10-25 00:44:47 +02: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
Peter Sadrozinski
47dec485e5
Add SGGeod read and write to gzFile
2012-10-22 15:34:16 +02:00
Thomas Geymayer
f191b4f35c
Move FGODGauge from FlightGear to SimGear.
...
This is a first step for moving the Canvas system to SimGear to
make it accessible to other applications (eg.FGRadar is going to
use it)
2012-10-19 11:56:32 +02:00
Thomas Geymayer
e24e3c0612
Add method SGPropertyNode::addChildren to create multiple children at once
2012-10-14 17:26:52 +02:00
ThorstenB
1dfac0a8b9
Avoid randomness when processing directories.
...
Order of files in file system order is random (maybe different for every
user). Determinsm is good, i.e. when loading Nasal scripts in a fixed,
known sequence, or config files, where the later may overrule settings of
the earlier.
2012-10-13 15:44:21 +02:00
Thomas Geymayer
f5cc151618
Extend addChild to allow using first unused index
2012-10-13 15:07:18 +02:00
ThorstenB
1ff3a61de6
Move uppercase function to strutils.
2012-10-10 21:31:57 +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
ThorstenB
e30ea5206f
Fix Linux compile: "free" needs stdlib.h.
...
Also move to .cxx file to avoid another include dependency in the header.
2012-10-04 21:11:35 +02:00
James Turner
c188f6e3cb
Initial work on making OpenAL private to the sound code.
2012-10-04 16:47: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
James Turner
f7a87789ab
Improve decode_bin output slightly.
2012-09-30 16:44:22 +01: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
Frederic Bouvier
700b0bc776
Provide a definition for GL_SAMPLE_ALPHA_TO_COVERAGE_ARB
2012-09-26 08:38:04 +02:00
Frederic Bouvier
98ca36e8f5
MSVC has no std::isnan
2012-09-26 08:36:56 +02:00
Stuart Buchanan
25130e3c82
Add alpha-to-coverage GL parameter to effects code.
2012-09-25 22:51:37 +01:00
James Turner
dc463d1c2c
Macro to disable the copy-constructor.
...
Another toolkit I use has an explicit macro for this, which is nice for readability, so I've borrowed it here.
2012-09-24 23:18:57 +01:00
James Turner
89d30acbc5
SGTime: use SGGeod, quieter init.
...
It's common to use SGTime to calculate the the Julian Date, without providing time-zone information. Don't warn in these cases, since the behaviour is fine.
2012-09-24 00:02:11 +01:00
James Turner
be405d2311
Add another overload of SGGeodesy::direct
2012-09-23 21:43:42 +01:00
ThorstenB
acbe42775c
Sound Manager: support subsystem reinit,
...
move initialization stuff to standard init phase.
Prevent AL calls when sound was never initialized.
2012-09-21 15:06:58 +02:00
ThorstenB
42d8772dd6
Avoid signed/unsigned compiler warning.
...
We don't really need a signed int here.
2012-09-21 12:55:40 +02:00
Christian Schmitt
81ef922f02
mat.cxx: fix an error reported by Valgrind
2012-09-19 10:10:14 +02:00
James Turner
d6e18c8a35
Support for incremental init of subsystems.
...
Allow subsystem init to be incremental, i.e requiring repeated init calls until a 'done' code is returned. Use this to support incremental init in groups and the manager. (It would also be possible to support it in an individual subsystem).
Note that if you use the existing init() calls, behaviour is unchanged.
2012-09-18 20:26:28 +01:00
Frederic Bouvier
4993a5c6c0
Sort fgfs source files in IDE folders - Don't work for headers though
2012-09-16 21:19:11 +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
James Turner
ddbb2bea8a
Option to use system, instead of built-in, expat
...
At least one Linux distribution packager of FG has complained that we're bundling expat in our binaries. To keep them happy, add the option (-DSYSTEM_EXPAT=1 at cmake time) to use the system expat instead.
For the moment (and simplicity), this requires building SIMGEAR_SHARED (which is fired to on by selecting the option).
2012-09-16 17:07:35 +01:00
ThorstenB
27131b43cb
Add convenience method for tiedPropertyLists
2012-09-16 17:58:44 +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
fd495574a4
Kill off MIPS compatibility header.
...
CMake has never supported the MIPS compatibility headers, or indeed building using MIPSpro. If someone wishes to re-add MIPS/IRIX support, I'm hoping they will be using a compiler with functional standard library headers!
2012-09-16 16:27:22 +01:00
James Turner
12f85b3d1f
Add an SG_UNUSED macro to SimGear.
...
Imitate Q_UNSUED from Qt, and provide a Simgear 'unused var' warning suppression macro. Fix up one place where the previous warning suppression attempt (assigning to self) was still producing a warning under clang.
2012-09-16 16:25:11 +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
Stuart Buchanan
3000fdc33c
Improve memory occupancy and load time of random buildings.
2012-09-12 22:45:12 +01:00
Christian Schmitt
076bde34a2
Scene: use better clipping mode for material textures.
...
This eliminates the black borders on runways between threshold and
designation textures and also between two designation numbers.
Thanks to Emilian for tracking this down!
2012-09-12 12:26:01 +02:00
Christian Schmitt
836c563c89
Signs: if the size is not allowed by the spec, print out a more meaningful warning
...
to help identify the problematic line.
2012-09-04 10:31:36 +02:00
ThorstenB
78c0419007
Fix libsvn detection for some Linux distros
...
Distros like Debian/Ubuntu use architecture-specific directory structures
(like /usr/lib/x86_64-linux-gnu) which we cannot hardcode/guess, so we
really need to search the default paths.
2012-09-03 23:51:38 +02:00
Frederic Bouvier
9dd5b91cea
Support MS VS2012
2012-09-03 17:32:26 +02:00
Frederic Bouvier
b4c8b00c0e
Try to discover the most recent Boost version installed in MSVC_ROOT (Windows only)
2012-09-02 12:43:21 +02:00
Frederic Bouvier
430e72b424
Ugly hack to please Boost 1.51.0
2012-09-02 12:22:20 +02:00
Christian Schmitt
135a8102f0
Remove plib dep references from documentation files
2012-08-29 12:08:27 +02:00
Christian Schmitt
c9cf4ad02a
Remove plib reference
2012-08-28 13:04:25 +02:00
Christian Schmitt
3001809bc3
Remove unused source files
2012-08-28 12:59:33 +02:00
Julian Ospald
9e77ff328e
CMake: fix underlinking
2012-08-28 11:30:49 +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
James Turner
e99064ca18
Refactor mat.hxx header.
...
Avoid many includes in mat.hxx, so ground testing code (e.g., Yasim) doesn't end up pulling in many OSG and scene classes.
2012-08-22 19:02:46 +01:00
James Turner
b93661508e
Fix more Linux warnings/errors.
...
(I'm away from the VM I would normally use to test such things before pushing, apologies for the churn)
2012-08-21 23:49:30 +01:00
James Turner
27ade6c420
Fix tests linkage when building static libs.
2012-08-21 22:55:04 +01:00
James Turner
473249d605
Unbreak Linux: malloc() needs <cstdlib>
2012-08-21 22:49:36 +01:00
James Turner
62cf65ce0f
Remove a couple of lingering alut references.
2012-08-21 19:25:33 +01:00
James Turner
c4f6aa2f90
Remove ALUT usage from SimGear .
...
Adapt the freealut code into a WAV-file reader. As a side-effect, it would now be possible to deploy WAV files compressed with gzip, since we use ZLib's gzread functions to read from disk.
2012-08-21 13:24:35 +01:00
Frederic Bouvier
9ca112c362
Compatibility fix
2012-08-18 14:53:48 +02:00
ThorstenB
cdcc17ee37
Christoph Korn/PlayDeb.net: support additional architechtures
2012-08-17 23:48:41 +02:00
Frederic Bouvier
4f3e1587b1
Restore auto-detection of SVN libs on Windows
2012-08-15 23:02:29 +02:00
Mathias Froehlich
b18c92f515
hla: Add virtual method for creating data elements.
2012-08-12 12:06:42 +02:00
James Turner
3270edcf87
Mac changes for Subversion bundling.
2012-08-11 15:21:52 +01:00
Tim Moore
c0e8dd97ae
change dynamic variance of effect attributes
...
Previously, any effect attribute that was set via effect parameters i.e., was
not a constant value, was marked with data variance DYNAMIC. Now, only
attributes that get their values from the property tree are so marked.
2012-08-06 11:04:42 +02:00
Mathias Froehlich
3a0ae3df58
hla: Do not call time advance with non positive increment.
2012-08-04 14:38:10 +02:00
Tim Moore
d6361dfee4
Merge branch 'timoore/optimizations' into next
2012-08-03 22:33:57 +02:00
Tim Moore
b61692b667
add libosgGA to OpenSceneGraph libraries used with tests
...
The DeletionManager needs osgGA. This becomes apparent when building shared
libraries.
2012-08-03 22:32:39 +02:00
Tim Moore
2815688c7e
Merge branch 'timoore/optimizations' into next
2012-08-03 20:15:36 +02:00
Tim Moore
78a78a17cc
DeletionManager
...
Class for safely deleting objects that may be active in different threads.
This is now used in the implementation of spin animations.
2012-08-03 20:10:53 +02:00
Tim Moore
e202d4e4a5
bug: 823 change rotation animation to use a subclass of SGRotateTransform
...
The animation is implemented in the computeWorldToLocalMatrix() and
computeLocalToWorldMatrix() virtual functions. Doing the animation in a cull
callback breaks picking.
Fix for http://code.google.com/p/flightgear-bugs/issues/detail?id=823
2012-08-03 20:10:00 +02:00
Stuart Buchanan
8b585db238
Allow a <parameters> section of a material definition, to pass parameters straight into the effect.
2012-08-01 21:06:59 +01:00
James Turner
e288549c9e
Make dependent template lookups explicit.
...
Clang (in Xcode 4.4) is being strict about dependent lookup rules, so apply the recommended fix-it.
2012-07-31 00:57:09 +01: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
Tim Moore
c84e1d0f0e
Merge branch 'timoore/optimizations' into next
...
Some changes aimed at reducing the cost of the huge scene graph.
2012-07-20 00:37:39 +02:00
Tim Moore
302deeb122
set name string for update callbacks
...
This makes it easier to find nodes with update callbacks in the scene graph dump.
2012-07-20 00:34:47 +02:00
Tim Moore
b2a6cdec4e
change optimizer options for models
...
Tristrips are old and busted, index meshes are the new hotness :)
2012-07-20 00:32:22 +02:00
Tim Moore
87676fad4d
prune empty quadtree leaves created for random vegatation
...
A lot of empty primitive sets were being left in the per-tile random vegatation quadtree.
2012-07-20 00:30:53 +02:00
Tim Moore
75087095b1
Replace rotation animation update callbacks with cull callbacks
...
Update callbacks are expensive because they force large parts of the scenegraph to be traversed
by OSG.
2012-07-19 00:42:38 +02:00
ThorstenB
d0a5032723
Add warning for in-source-directory builds.
2012-07-17 19:18:05 +02:00
ThorstenB
2d6a7c2cf7
Add dot-files to gitignore.
2012-07-17 19:14:45 +02:00
ThorstenB
56e9158dee
Bump simgear version to 2.9.0
2012-07-17 18:48:38 +02:00
Frederic Bouvier
3ba312116b
Add a node mask bit for permanent lights (needed by Rembrandt)
2012-07-16 20:06:53 +02:00
Frederic Bouvier
e6ab3ddb7d
More node mask fix
2012-07-14 13:00:30 +02:00
Stuart Buchanan
8ed0fec364
Fix degenerate random building placement case which resulted in buildings
...
being placed outside of the triangle bounds.
2012-07-13 20:00:06 +01:00
Frederic Bouvier
ddfdbd75b8
Precipitation don't cast shadows
2012-07-13 17:53:00 +02:00
Stuart Buchanan
00e21af5bb
Correct index used by building.eff for lightmap.
2012-07-12 16:31:27 +01:00
ThorstenB
51a17a7a0f
Suppress unnecessary "failed alias" warnings
...
when requested alias matches existing alias anyway (identical aliases can
be created on repeated sim resets)
2012-07-07 16:05:02 +02:00
Stuart Buchanan
fa58672f09
Fix bug where two references to a png object mask used against
...
a dds terrain texture resulted in the object mask being flipped twice,
having no overall effect!
2012-07-06 21:38:15 +01:00
Stuart Buchanan
4f7f5023df
Fix further possible memory leaks by using osg::ref_ptr for vertex
...
arrays in random buildings and random vegetation. Also change
normals on trees to be per-vertex as some graphics cards apparently
find this easier to deal with.
2012-07-05 00:10:07 +01:00
Stuart Buchanan
4838a9690e
Fix a memory leak in random buildings.
2012-07-04 19:50:20 +01:00
ThorstenB
edcbfb52eb
Add SimGear RPM package spec file.
...
Example for Linux package builders.
2012-07-02 21:51:40 +02:00
Frederic Bouvier
5af8bb7c8e
Working 'noshadow' animation
2012-06-30 16:25:21 +02:00
ThorstenB
3fa835d74c
Bump version to 2.8.0
...
since "next" is already frozen for 2.8 and is prepared for building the
first release candidate.
For details on versions see http://wiki.flightgear.org/Release_plan
2012-06-26 23:17:07 +02:00
ThorstenB
035ff3e1ea
Update README/INSTALL documentation.
2012-06-26 22:43:48 +02:00
Frederic Bouvier
2c54237fe5
Don't render ocean tiles in the light pass
2012-06-25 17:55:46 +02:00
Frederic Bouvier
00c61204a4
Fix a typo
2012-06-25 11:58:49 +02:00
Frederic Bouvier
284aa3a444
Add header file to the cmake project
2012-06-25 11:58:22 +02:00
Frederic Bouvier
f0b7a27fd4
Duplicate light effect when animation is requested. Make dimmed lights work in multiplayer
2012-06-24 23:06:12 +02:00
ThorstenB
a781eea10e
#744 : Raise warning level when reporting missing svn library.
...
Status message are almost invisible - use warning message instead, so
builders/packagers actually notice a missing dependency.
Also add some useful hints.
2012-06-24 20:04:26 +02:00
ThorstenB
8e42e5bdba
Fix error handling in SGSampleGroup::stop
...
Move error check to correct location: needs to be done immediately after
the alSourceStop call - and only if it was called at all.
2012-06-24 19:18:47 +02:00
James Turner
ad4a9eeaa5
Remove (un-maintained) MSVC projects from the tree prior to the next release.
2012-06-23 10:26:28 +02:00
Christian Schmitt
190e6b3958
Taxiway signs: print out more meaningful error messages on wrong size
...
settings and fall back to the default value in such cases.
2012-06-22 14:39:45 +02:00
James Turner
8a33223483
Use standard version of FindPackageStandardArgs, no need to copy it.
2012-06-21 10:21:26 +02:00
James Turner
0e4eab1569
Improve ALUT framework detection (for Mac)
...
Latest Xcode no longer searches /Library/Frameworks by default which exposed an issue here. Search for the header by the correct name to trigger special -F handling in cmake.
2012-06-20 19:44:16 +02:00
Stuart Buchanan
9d6e27c85c
Do not attempt to reposition non-existant clouds.
...
Defensive workaround to Issue 678.
2012-06-19 22:04:17 +01:00
ThorstenB
9720f8ca16
Patch clean-up
2012-06-19 22:15:33 +02:00
Harald JOHNSEN
5b3dccc1f7
- stop sounds when removing a sound group
2012-06-19 22:14:14 +02:00
Markus Pargmann
e0df014acf
Signs change <= to <
2012-06-18 20:47:05 +02:00
Markus Pargmann
de3d433ead
Airport sign size 3 bugfix
2012-06-18 20:47:05 +02:00
Frederic Bouvier
3407db3dd6
Avoid an annoying OSG warning
2012-06-17 17:52:17 +02:00
Christian Schmitt
b10a40ff8d
Taxiway signs: support all variants from the apt.dat 850 spec and
...
read size values from the optional stg column
2012-06-13 19:45:13 +02:00
Christian Schmitt
ec22623f1c
Add helper method for optional stg values
...
Anders Gidenstam: Style and indentation.
2012-06-12 21:04:22 +02:00
Frederic Bouvier
7e8fb16507
Static or shared objects are not light volumes (but can include some)
2012-06-11 09:12:47 +02:00
Frederic Bouvier
a634d7c361
Terrain tiles are not light volumes
2012-06-11 09:11:52 +02:00
Harald JOHNSEN
aae77a7983
remove some warnings for MSVC
...
don't start to play sounds that are out of range of the listener
2012-06-08 15:23:54 +02:00
ThorstenB
3f6f34e7e1
Drop obsolete TODO
2012-06-08 13:53:15 +02:00
ThorstenB
eff1541ba3
Add INSTALL and README.cmake files.
2012-06-08 13:20:03 +02:00
Frederic Bouvier
e7e06c89e1
Fix lights when added as submodels
2012-05-31 20:22:40 +02:00
Frederic Bouvier
a41d5b1609
Restore lights in the Rembrandt renderer
2012-05-30 22:18:57 +02:00
James Turner
edbea633f3
Merge a tweak from Tat to keep Mac 10.5 from crashing on realpath
2012-05-30 11:08:11 +01:00
James Turner
950af5375c
KIll of SimGear route code, it's no longer used by anything.
2012-05-30 11:07:36 +01:00
Stuart Buchanan
c6d2e32f05
Add logging for the total number of random buildings generated.
2012-05-25 19:47:45 +01:00
Mathias Froehlich
3796ce4d86
Runway signs: avoid adding empty group without signs.
2012-05-21 07:25:14 +02:00
Anders Gidenstam
ffb67f4014
Clement de l'Hamaide: Add support for pitch and roll for OBJECT_SHARED and OBJECT_STATIC in .stg files.
...
Pitch and roll behave the same as pitch-deg and roll-deg offsets in
model XML files.
2012-05-20 22:21:38 +02:00
Frederic Bouvier
d479686804
Try to exclude unwanted geometry in the additional light pass
2012-05-20 15:42:55 +02:00
Frederic Bouvier
1387f47a79
Remove redundant inclusion of SGMath.hxx
2012-05-20 11:49:31 +02:00
Frederic Bouvier
65784896e1
Revert "Hack to avoid redrawing the whole scene another time when only light volume are requested"
...
This reverts commit e692e7c119 .
2012-05-19 20:41:58 +02:00
Frederic Bouvier
e692e7c119
Hack to avoid redrawing the whole scene another time when only light volume are requested
2012-05-19 19:39:38 +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
Frederic Bouvier
38c335c339
Allow to change texture buffer name on the fly
2012-05-18 12:27:08 +02:00
ThorstenB
e69d1b5a82
#767 related: fix sound resource management
...
Use _smgr->release_buffer instead of direct alDeleteBuffers.
2012-05-12 23:35:10 +02:00
Frederic Bouvier
6695b918ea
Allow to specify buffer name from parameters in effects
2012-05-12 00:16:19 +02:00
Frederic Bouvier
2b9072417b
Use names to identify deferred buffers
...
Change effect syntax for buffers
2012-05-12 00:16:17 +02:00
James Turner
6cf2224146
Updated sign case UV calculation from Christian.
2012-05-11 10:00:35 +01:00
James Turner
a1f74729ab
build signs for an STG into single geometry.
2012-05-11 09:50:26 +01:00
James Turner
71443d1c9a
Phase 1 - single geometry per material
2012-05-11 09:50:26 +01:00
Stuart Buchanan
a83f5deaac
Updates to buildings and trees
...
1) Clean up after ourselves - remove memory leak
2) Face buildings the right way
2012-05-10 23:03:38 +01:00
Christian Schmitt
234e778e8f
Add support for double-sided taxiway signs and create 3D models for them
2012-05-05 13:39:07 +02:00
Christian Schmitt
0bdeaeb4e2
Remove unused SGMakeRunwaySign function.
2012-05-05 13:39:07 +02:00
Frederic Bouvier
cc37713a66
Remove redundant inclusion of math/SGMath.hxx
2012-05-05 11:19:20 +02:00
ThorstenB
6129de31f0
Fix C compiler warning.
...
"no-overloaded-virtual" warnings are a CXX-compiler feature
2012-05-05 09:46:11 +02:00
ThorstenB
0908f86714
Fix rpmlint/Linux packager complaints
...
about outdated/invalid FSF address in some license headers.
2012-05-05 01:41:45 +02:00
ThorstenB
31ed79fe43
Fix rpmlint/Linux packager complaints
...
about outdated/invalid FSF address in some license headers.
2012-05-05 00:30:16 +02:00
ThorstenB
1af2ad12bf
openSUSE "more architectures" patch
...
(Alpha anyone? ;-) )
2012-05-05 00:18:26 +02:00
ThorstenB
44db6d9e44
Move vector property templates to separate header file.
...
Fixes the "weirdness" with MSVC complaining about incomplete class specs,
since forward declarations (SGMathFwd.hxx) are used in props.hxx only.
Only the few extended (vector) property templates require including the
full SGMath.hxx (with MSVC) - and these are used in few places.
2012-05-05 00:07:07 +02:00
ThorstenB
6e662fe4d6
Ganael Laplanche: fix include dependencies for FreeBSD support
2012-05-04 23:24:10 +02:00
ThorstenB
067ff4f8ed
Fix signed vs unsigned compiler warnings
2012-05-04 23:13:54 +02:00
Stuart Buchanan
91cf3d4def
Fixes to Random Buildings:
...
1) Correct texture mapping so textures aren't flipped!
2) Add constraints to medium buildings (not taller than they are wide)
2012-05-04 21:12:41 +01:00
Frederic Bouvier
1eb846a93a
Revert "Temporary hack to make the new version of expat build under windows"
...
A proper fix has been provided
This reverts commit 655971208f .
2012-05-04 20:48:04 +02:00
James Turner
56661afc05
Change how HAVE_EXPAT_CONFIG_H is defined, to hopefully fix MSVC properly.
2012-05-04 10:10:46 +01:00
Frederic Bouvier
655971208f
Temporary hack to make the new version of expat build under windows
2012-05-04 09:09:11 +02:00
James Turner
d3ab2d3fbc
Missed files from previous commit, needed for Windows.
2012-05-03 18:55:13 +01:00
James Turner
65aca6607e
Update to latest expat for improved BOM / encoding handling.
...
(Related to http://code.google.com/p/flightgear-bugs/issues/detail?id=635 )
2012-05-03 17:29:16 +01:00
Stuart Buchanan
e44eb39046
Emissive lighting for random buildings. Requires up to date fgdata.
2012-05-01 22:35:42 +01:00
ThorstenB
ab7d2a4bcc
Allow "texture-path" XML entries to be present but empty.
...
This had worked with previous FG versions and is used by many models -
so it shouldn't be treated as an error now.
2012-04-30 18:29:44 +02:00
Frederic Bouvier
87c744b88b
Use observer_ptr to cache light effects
2012-04-29 13:25:15 +02:00
Frederic Bouvier
dfc4b1564f
Nasal is C code, not C++
2012-04-29 00:17:38 +02:00
Stuart Buchanan
db6e99f885
Use Effects system for random buildings.
2012-04-28 23:11:52 +01:00
James Turner
35681e3adf
Strange, somehow missed this file in last commit.
2012-04-28 23:08:05 +01:00
James Turner
a5ca531aac
Nasal Ghosts can optionally specify member get/set functions.
2012-04-28 22:25:57 +01:00
Stuart Buchanan
2daf895d00
Reduce the number of Drawables generated by the random buildings by reducing the number of levels of the quad tree, and reducing the number of different
...
fade-out distances generated.
2012-04-28 20:02:42 +01:00
Stuart Buchanan
1041445a22
Change random object placement to a grid-like scheme to reduce building overlap.
2012-04-28 19:58:09 +01:00
Christian Schmitt
f712bc9294
Implement blinking hold-short line lights
...
This is supported by the apt.dat 850 format and latest TG
2012-04-26 15:02:33 +01:00
James Turner
2d174d0b14
Convert random buildings to avoid use of BIND_PER_PRIMITVE.
...
(which pushes me to a slow OSG path)
2012-04-26 00:18:47 +01:00
ThorstenB
dd54f6938e
#717 : Disabling advanced weather crashes the sim
...
Protect from a NULL-pointer segfault in SGCloudField::removeCloudFromTree
when disabling advanced weather (may just fix a symptom).
2012-04-25 21:08:37 +02:00
Frederic Bouvier
6e0e74a7d9
No round function for MSVC (forgot the template argument)
2012-04-25 08:59:04 +02:00
Frederic Bouvier
6a90696820
No round function for MSVC
2012-04-25 08:54:57 +02:00
Stuart Buchanan
f9bf403fc0
Random buildings - initial commit.
2012-04-24 22:00:35 +01:00
James Turner
0c13fb7ae4
Fix latent bug in Nasal hash cget / cset functions, where the embedded string length
...
was set to an incorrect marker value.
2012-04-23 22:29:54 +01:00
ThorstenB
9a113bdb44
Revert "Add virtual destructor to SGReferenced."
...
As suggested by Mathias, will use different solution.
This reverts commit 4abcf3215f .
2012-04-23 19:41:09 +02:00
James Turner
69ef461e6d
Merge commit 'refs/merge-requests/22' of git://gitorious.org/fg/simgear into merge-requests/22
2012-04-23 12:21:50 +01:00
ThorstenB
4abcf3215f
Add virtual destructor to SGReferenced.
2012-04-21 20:50:07 +02:00
Frederic Bouvier
4b607d6484
Revert "Remove ambient component of additional lights" because this was Yet Another Bad Idea
...
Ambient light is attenuated so it is possible to achieve smooth edges with it
This reverts commit fe8ba57c94 .
2012-04-18 19:56:31 +02:00
Frederic Bouvier
fe8ba57c94
Remove ambient component of additional lights
...
It creates artifacts at edges of light volumes and should come from the main light source (sun and moon) anyway
2012-04-16 08:25:59 +02:00
Frederic Bouvier
de191107a9
light animation: avoid that similar effects are merged
2012-04-14 23:16:23 +02:00
Frederic Bouvier
77b8b278ea
Ensure uniform are there before trying to use them
2012-04-14 18:00:42 +02:00
Frederic Bouvier
4758447370
Add a <dim-factor> parameter in the light animation
...
<dim-factor> contains a <property> element, and optionally <factor>,
<offset>, <expression>, <interpolation>, <min> and <max>
2012-04-14 09:57:20 +02:00
ThorstenB
77909577e4
Error messages when installing property aliases fails.
2012-04-05 20:03:07 +02:00
ThorstenB
1a835a2e1b
performance monitor: start measurement interval with a fresh timestamp.
2012-04-05 19:30:00 +02:00
James Turner
8d0330675a
Set the filename as the OSG object name on shaders - should have done this years ago :)
2012-04-04 16:44:23 +01:00
Frederic Bouvier
95a9d7a229
Revert "Disable LOD when rendering to the shadow map."
...
This reverts commit b95fb48a16 .
2012-04-02 23:37:18 +02:00
ThorstenB
2fed46e222
performance monitor improvement
...
Record cumulative time consumed (all time) and current total time (current
measurement only) for subsystems.
2012-04-02 20:47:27 +02:00
ThorstenB
9ad070871a
Use observer_ptr::lock for thread-safe pointer retrieval.
...
Also revert to using ref_ptr for the top-level EffectMap, since it holds
elements no one else references (and don't affect memory much).
2012-04-02 20:47:27 +02:00
Frederic Bouvier
b95fb48a16
Disable LOD when rendering to the shadow map.
...
Produce few NaNs at start
2012-04-01 23:06:32 +02:00
Mathias Froehlich
29462005b7
Fix typo in SGGeodesy.
...
Pointed out by Carl Godkin.
Thanks!
2012-04-01 17:50:49 +02:00
Frederic Bouvier
4de05629ee
Shadow map now available in effects
2012-03-31 22:40:39 +02:00
ThorstenB
2b62411a78
Remove dead code.
2012-03-28 22:55:40 +02:00
ThorstenB
6fa4c7e138
Add file name to error message.
2012-03-28 22:54:27 +02:00
ThorstenB
ece38a6dbf
Fix growing memory consumption issues
...
References in simgear's cache maps prevented effects, textures, clouds,
trees and lights from being unloaded at run-time (ref-counter could never
reach 0). Changed cache maps to use OSG 'observer' pointers instead, so
reference counters aren't influenced, though cache maps still hold an
(observing) pointer. Also take care when finding a cache entry with empty
content (i.e. texture was unloaded).
2012-03-28 22:53:30 +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
ThorstenB
ac29faf3bb
osg::Uniform::get does not return a value on error.
...
Fixes "usage of uninitialized data" errors reported by valgrind.
2012-03-26 21:00:10 +02:00
Frederic Bouvier
94eabf6220
Merge Specular and Emission buffers
2012-03-25 14:14:14 +02:00
Frederic Bouvier
40bc0cbd48
Compile under MSVC 9
2012-03-25 14:14:12 +02:00
ThorstenB
b55e9df70a
Don't crash when "avionics == NULL".
2012-03-22 23:54:01 +01: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
ThorstenB
0b8bfd9ed8
More checks/error messages for missing files,
...
checking return value of findDataFile.
2012-03-17 10:15:31 +01:00
ThorstenB
eff0c610e2
More consistent indentation.
2012-03-17 10:02:43 +01:00
ThorstenB
ca97e67511
Avoid segfault when a texture file is missing.
...
Always check the return value of "findDataFile". If it's empty, always
provide the _original_ path being searched in an error message. Otherwise
we eventually just get useless 'Can't find file "".' error messages
(and also a segfault here, since osgDB::readImageFile("") returns NULL).
2012-03-17 10:02:13 +01:00
James Goppert
47c2dce26d
Removed include breaking headless build.
2012-03-16 23:04:24 +01:00
James Goppert
619163d40e
Fixed mingw build.
2012-03-16 23:04:24 +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
Torsten Dreyer
70ec13e10b
Make the sky disable cutoff distance configurable
2012-03-09 20:58:24 +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
Frederic Bouvier
69debc6777
Revert "Put airport lights in RenderBin to enable glow"
...
This reverts commit 1fa27f2d19 .
2012-03-07 20:48:53 +01:00
Frederic Bouvier
84d7488061
Revert commit 7864516... Increase point sprite size for runway lights
2012-03-07 20:16:14 +01:00
Mathias Froehlich
fbb7c84409
scenery: Remove unused argument from runway signs.
2012-03-07 06:36:27 +01:00
Frederic Bouvier
a7379c88f4
Revert "Allow the not operator in expressions" - this is not required for
...
effects
This reverts commit 92074f0d3c .
2012-03-06 23:15:18 +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
Frederic Bouvier
92074f0d3c
Allow the not operator in expressions
2012-03-04 21:24:54 +01:00
Frederic Bouvier
1e889c4d07
Implement point light
2012-03-04 20:21:52 +01:00
Frederic Bouvier
617a09d89a
Fix path in include directive
2012-03-04 20:21:51 +01:00
Frederic Bouvier
2af409f54d
Save work on shadows
2012-03-04 20:21:49 +01:00
Frederic Bouvier
6d3766e913
Move noise functions from scene/material to scene/util
2012-03-04 20:21:47 +01:00
Frederic Bouvier
9b130f099f
Move Noise from scene/material to scene/util
2012-03-04 20:21:46 +01:00
Frederic Bouvier
20414e6ef4
Smaller point light for vasi
2012-03-04 20:21:44 +01:00
Frederic Bouvier
78645169bf
Increase point sprite size for runway lights
2012-03-04 20:21:42 +01:00
Frederic Bouvier
a276e7e379
Remove now useless StateAttributeFactory::getNoiseNormalMap()
2012-03-04 20:21:41 +01:00
Frederic Bouvier
1dfde64ac2
Use bigger point sprites for airport lighting
2012-03-04 20:21:39 +01:00
Frederic Bouvier
1fa27f2d19
Put airport lights in RenderBin to enable glow
2012-03-04 20:21:37 +01:00
Frederic Bouvier
2822006d01
New buffer types for effects
2012-03-04 20:21:36 +01:00
Frederic Bouvier
288e63f0d8
Add noise texture and noise normal map to StateAttributeFactory
2012-03-04 20:21:34 +01:00
Frederic Bouvier
66c9187c95
Boolean uniforms are now updatable by properties
2012-03-04 20:21:32 +01:00
Frederic Bouvier
cbf8687e3d
Add bloom buffer to effects
2012-03-04 20:21:31 +01:00
Frederic Bouvier
c9a80caff5
Create new buffer type : emission
2012-03-04 20:21:29 +01:00
Frederic Bouvier
f9857235fc
Add new texture type in effects : lighting-buffer
2012-03-04 20:21:27 +01:00
Frederic Bouvier
c595a276a0
Include the light volume in the model
2012-03-04 20:21:26 +01:00
Frederic Bouvier
b582cd230e
Implement a cache of light effects
2012-03-04 20:21:24 +01:00
Frederic Bouvier
ad6c04489c
Add the light animation to the cmake system
2012-03-04 20:21:22 +01:00
Frederic Bouvier
ec7e59eda1
Full implementation of the spotlight by Effects
2012-03-04 20:21:21 +01:00
Frederic Bouvier
d929323e93
Add light animation to msvc9 project
2012-03-04 20:21:19 +01:00
Frederic Bouvier
5a96b283f6
Add preliminary spot light animation
2012-03-04 20:21:18 +01:00
Frederic Bouvier
d393e4a019
Add positioned uniforms and G-buffer textures to Effects
2012-03-04 20:21: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
Frederic Bouvier
a2b75e0d7a
Compile SGReaderWriterOptions.cxx under Windows
2012-03-04 10:36:31 +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
Mathias Froehlich
72f1538ac2
Make use of SGReaderWriterOptions::copyOrCreate in ReaderWriterSTG.
2012-03-04 07:50:05 +01:00
Mathias Froehlich
4e24095d8b
Make use of SGReaderWriterOptions::copyOrCreate in SGReaderWriterXML.
2012-03-04 07:42:31 +01:00
Mathias Froehlich
1473eabc7c
Provide SGReaderWriterOptions::copyOrCreate(const osgDB::Options*).
...
This functions tries to preserve the database options as much
as possible and guarantees to return a non zero options
pointer.
2012-03-04 07:42:31 +01:00
Mathias Froehlich
11fd888ed8
Replace osgDB::ReaderWriter::Options to osgDB::Options.
...
This has changed in osg, so reflect that here.
2012-03-04 07:07:42 +01:00
Mathias Froehlich
8c78588ee1
Untangle osg singleton dependencies.
...
Take two. The ModelRegistry's are already derived from osg::Referenced.
So also introduce the osg dependent version in simgear/scene/util.
2012-03-03 18:57:48 +01:00
Mathias Froehlich
c74e212494
Revert "Use simgear internal stuff for the singleton class."
...
This reverts commit 80274596df .
2012-03-03 18:21:49 +01:00
ThorstenB
13f96cdcc9
Dir::tempDir not working on some systems.
...
Only worked when TMPDIR environment variable had a trailing slash (i.e.
"/tmp/" worked, but not "/tmp").
(Problem shown by simgear's "test suite". It's good to have tests!)
2012-03-03 17:06:51 +01:00
Mathias Froehlich
86e32035d7
Remove left over from osg/core dependencies.
...
This file should be obsolete doe to the latest changes.
2012-03-03 16:06:51 +01:00
Mathias Froehlich
80274596df
Use simgear internal stuff for the singleton class.
...
This removes the other still present dependency on osg
in the future sgcore library.
It also remove the need for the NO_OPENSCENEGRAPH_INTERFACE
compile time definition.
2012-03-03 14:39:39 +01:00
Mathias Froehlich
2cc5e776b3
math: Remove SGMath osg dependency.
...
Move osg dependent stuff from SGMath into simgear/scene/util/OsgMath.hxx.
Update includes in simgear to reflect this change.
Note that this change also requires an updated flightgear version.
2012-03-03 13:35:20 +01:00
Mathias Froehlich
57a3b0fd1e
math: Move lerp function into SGMisc.
2012-03-03 12:03:09 +01:00
Mathias Froehlich
9414874e1d
scenery: inline SGGenTile into its single caller.
2012-03-03 12:03:09 +01:00
Mathias Froehlich
9e46820c57
scenery: Route loader options through the btg loader.
2012-03-03 12:03:09 +01:00
Stuart Buchanan
3020990121
Evaluate <condition> statements in materials.xml at tile loading time
...
rather than on startup. This will allow changing between winter and
summer textures in-sim, and also allow more interesting regional
textures to be defined.
2012-03-02 23:04:18 +00:00
Mathias Froehlich
27219e0f58
hla: Fix timeAdvanceAvailable handling when no federate is regulating.
2012-03-02 22:25:47 +01:00
Mathias Froehlich
098441f5fb
hla: Add propper attribute dirty handling.
2012-03-02 21:51:59 +01:00
Mathias Froehlich
a07ca86207
hla: Timestamp support down to the DataElements.
2012-03-02 21:36:08 +01:00
Stuart Buchanan
e4e3760b3d
Fix masked rotation so that it's clockwise from above.
2012-02-28 21:05:54 +00:00
ThorstenB
811147d08e
Fix string comparison
2012-02-28 08:39:19 +01:00
Mathias Froehlich
a563cfd0f2
hla: Fix buffer overrun in SGMath vector types.
2012-02-28 07:19:21 +01:00
Mathias Froehlich
92f7445bb9
hla: Rework toplevel HLA classes.
...
Better seperation between the rti and the hla level
of classes. Decouple object model setup from the
need to connect at a federate. Fix alignment computations
for the standard hla data types. Work towards an
interaction class abstraction. Add more flexibility in
deriving from the base classes and adding callbacks.
2012-02-28 07:16:11 +01:00
Stuart Buchanan
a72d858034
More robust checking of file extensions courtesy of the SGPath. Thanks to Mathias FROHLICH.
2012-02-27 21:27:27 +00:00
Stuart Buchanan
39d45e9e0a
Handle dds object masks properly:
...
1) Only flip the object-mask if the texture xor the object mask is dds
2) Handle NTFS file systems where the extension may be .DDS rather than .dds.
2012-02-26 22:38:38 +00:00
Stuart Buchanan
4fae9039c1
Correct spacing between buildings.
2012-02-26 22:38:04 +00:00
Mathias Froehlich
124db3da8e
hla: Introduce backend factory infrastructure.
...
Not finally ready, but provide a factory infrastructure
to improove plugability of different rti backend implementations.
2012-02-26 08:50:06 +01:00
ThorstenB
4bf4091ef7
Remove obsolete comment...
2012-02-24 22:47:18 +01:00
ThorstenB
b7fa1d4f02
#537 linker issues due to clock_gettime/librt dependencies
...
Simplify dependency check and make it work for Debian.
2012-02-24 22:20:37 +01:00
ThorstenB
f1c2afacc4
Revert "Try to fix MSVC template instantiation issue with SGVec dependencies."
...
This reverts commit 8aed0e75df .
2012-02-24 22:00:58 +01:00
ThorstenB
8aed0e75df
Try to fix MSVC template instantiation issue with SGVec dependencies.
2012-02-24 21:47:00 +01:00
Stuart Buchanan
cf2619613d
Stop objects from overlapping the edge of the triangle in which they are placed. This should stop buildings encroaching roads etc.
2012-02-23 20:10:02 +00:00
ThorstenB
2a9d39f201
Allow (ab)using findDataFile to also search directories again.
2012-02-19 14:39:19 +01:00
ThorstenB
ae0b8eb3b3
Make tsync part of libSimGearCore when building shared libraries
2012-02-19 14:39:19 +01:00
Mathias Froehlich
63081c94a1
hla: Add new header containing some enums.
2012-02-18 17:13:45 +01:00
Mathias Froehlich
c39926dd72
hla: Rename AttributePathPair to StringPathPair.
...
This way of addressing attribute data elements
should also be used for parameters. So, name it a little
more neutral.
2012-02-18 16:49:17 +01:00
Mathias Froehlich
4683e7e9c9
hla: Do not introduce an empty enumerated data type.
...
This fixes a bogous enumerated data type that is
up to now introduced into the data type map.
2012-02-18 13:20:25 +01:00
Mathias Froehlich
dc9163f801
hla: rename HLAVariantData* to HLAVariantRecordData*
...
Rename to the true name that is used in the standard.
2012-02-18 11:44:00 +01:00
Mathias Froehlich
42cc699263
HLAFederate: introduce read*ObjectModelTemplate.
...
Introduce read{RTI13,RTI1516,RTI1516E}ObjectModelTemplate
methods. Deprecate the current readObjectModelTemplate method
and provide a short term upgrade path.
2012-02-18 11:00:28 +01:00
ThorstenB
37457fcb33
Remove obsolete ignore pattern for automake generated headers.
2012-02-17 23:46:06 +01:00
Torsten Dreyer
441dc41715
Don't untie a property when loading from xml
...
executing the fgcommand loadxml implicitely untied every previously
tied property if a property type was given in the property element.
That made it impossible to autosave aircraft data for tied properties.
This patch should fix this. It adds an inconsitency, though:
if a property with a given type is read in which has been tied to
before and the property types do not match, the property type in the
xml file will be ignored.
2012-02-15 14:54:02 +01:00
ThorstenB
811f156ad1
#658 : better bugfix for findDataFile issue
...
Fixes the more basic probelm of "SGModelLib::findDataFile" resolving an
empty file name to the fgdata (directory) path. findData_File_ should
never return a _directory_ path, only valid _file_ names.
2012-02-11 10:55:13 +01:00
ThorstenB
2a0e9d31e1
#658 : avoid crash when Textures.high is missing
...
Don't resolve the empty file name, which would result in the fgdata
directory path (instead of a path to a file). Eventually this resulted in
a segfault, partly due to a bug in "osgDB::readImageFile", which reports
"success" when given a directory (instead of a file) path, though it
doesn't return a valid image object.
2012-02-11 10:00:03 +01:00
Stuart Buchanan
c473cd7213
Fall back to taking tree textures from Terrain/ if they are not found under
...
Terrain.high, consistent with the other textures in materials.xml.
Also fix comment.
2012-02-10 22:49:20 +00:00
Olaf Flebbe
1af8aacd1d
disable annoying clang warning
2012-02-10 22:42:27 +01:00
ThorstenB
5eb9acd8b6
Olaf Flebbe: Avoid infinite recursion in simgear::Dir::create
...
when using it with a relative path.
2012-02-10 22:42:27 +01:00
Stuart Buchanan
6bc9eb950f
Retire tree-density and wood-size, as they have been superseded by object masking.
2012-02-07 21:12:41 +00:00
Stuart Buchanan
593c884f14
Random object and vegetation masking based on bitmap file.
...
Also adds a property controlling vegetation density.
2012-02-05 23:05:57 +00:00
ThorstenB
9d20de068c
Move JPEG dependency
...
Alas, JPEG_FACTORY is in SimGearScene, not SimGearCore...
2012-01-29 14:39:48 +01:00
ThorstenB
96c2e4d3ab
Correct dependency of shared simgear libraries with enabled JPEG_FACTORY.
2012-01-29 14:28:49 +01:00
Mathias Froehlich
165d2ea978
Improve the compressed texture message.
2012-01-19 07:34:47 +01:00
Stuart Buchanan
0702272097
Switch Impostors off by default, set reasonabl LOD and Impostor ranges.
2012-01-17 22:15:14 +00:00
Stuart Buchanan
965c8ccfd2
Improved 3D clouds
...
1) Impostors
2) One drawable per cloud rather than a single drawable shared by all clouds.
2012-01-17 22:14:57 +00:00