In gearCompression() when not on the ground, we now return with o_contact set
to the position of fully-extended gear, instead of (0, 0, 0) (the aircraft
origin).
This fixes later calculation of /position/gear-agl-ft, in particular it now
does not change discontinuously when leaving or touching the ground.
Make sure NavDataCachePrivate::findAllByString() calls loadById() after
the prepared SQL statement has been reset(), otherwise reentrant calls
to findAllByString() coming from loadById() are likely to fail as they
may reuse cached SQL statements. Such a reentrancy bug was introduced in
commit 351ca111ad because of the added call to FGAirport::findByIdent()
in XMLLoader::findAirportData().
Fixes issue: https://sourceforge.net/p/flightgear/codetickets/2858/
Canvas was using the default state set provided by an Effect.
This does not work if the Effect doesn't have a fixed-function
pipeline technique (like in the case of HDR and model-pbr).
In the future we should remove placements by texture name entirely
and use the node name together with a texture type (base color,
metallic, roughness) to identify the correct texture unit.
Previously we threw an exception if we encountered
and unknown row code in the apt.dat file.
However, the apt.dat files from X-Plane now include
codes that aren't yet in the 1200 specification (e.g.
105 for skid marks). So we will now print a warning and
ignore them.
Squashed commit of the following:
commit 9446789f881d676280819c20a42eb2454106cfba
Author: Stuart Buchanan <stuart_d_buchanan@yahoo.co.uk>
Date: Tue Dec 19 16:51:37 2023 +0000
Add $FG_OVERRIDE_PAGER_THREADS to set load threads
Previously /sim/rendering/database-pager/threads was used to set
the number of OSG DatabasePager threads one reset (only!).
This change removes this function and replaces it with an
environmental variable FG_OVERRIDE_PAGER_THREADS which will
set the number of threads at startup and on reset.
This ensures that only developers who are interested in
multi-threading will enable it.
It is expected that one multi-threaded DatabasePagers stabilizes
we will change to use /sim/rendering/database-pager/threads
instead (for both init an reset).
commit 711b5bc6b8feff77d18309025a1c309a47398ff0
Author: Stuart Buchanan <stuart_d_buchanan@yahoo.co.uk>
Date: Sun Dec 17 13:56:21 2023 +0000
Configure DatabasePager threads correctly
Previously we didn't set the number of DatabasePager
threads on initialization, and so irrespective of
the /sim/rendering/database-pager/threads property
we always had 1 General thread and 1 HTTP thread.
(On reset, we did have some code that set up the correct
number of threads).
This wasn't completely obvious, as the threads are configured
at startup using an OSG DisplaySettings hint.
This change sets up these threads correctly on initialization
and ties the properties properly. Though it's worth noting
that changing the property in-sim will have no effect until a
Reset.
The file now passes
flatpak run org.freedesktop.appstream.cli validate --strict --explain package/org.flightgear.FlightGear.metainfo.xml.in
except for the placeholders in the <release/> tag
As a student, I would like to be able to use the map for reading the flight plan, frequencies for VOR, NDB, ILS, but without giving away the position of my aircraft, so that I can train in IFR navigation using the instruments only in the cockpit.
Squashed commit of the following:
commit a4dd860660db64053fb75d251d58194b1aa99d51
Author: Stuart Buchanan <stuart_d_buchanan@yahoo.co.uk>
Date: Thu Oct 26 20:33:48 2023 +0100
WS30 - Ground mesh material lookup
The default HUD still relies on legacy OpenGL features, which makes it
incompatible with the GL core profile. A replacement involving Canvas
has been discussed before, but for now a toggle switch is enough to test
the core profile.
Values for options can be separated by both the "=" character (the old way) and a space.
The switch options enable/disable, now have a third variant with a main name that can take the values true/false, 1/0 or yes/no. E.g., in addition to the pair of options `--enable-fullscreen` and `--disable-fullscreen`, we now also have an option `--fullscreen`, which can be used with no value (the default is enable) or with true/false, 1/0 or yes/no.
All existing options work as before.