- Terrain and clouds and now rendered on the envmap, with correct aerial
perspective.
- Each face is rendered on a separate frame to help with performance.
- All faces are updated every 1.5 minutes. This can be changed through a
property.
We also now pre-expose our lighting before writing to the HDR buffers.
This solves some precision issues and prevents the Sun from producing
infinite values.
- New atmosphering rendering technique based on my own work.
- Attempt to fix some remaining transparency issues.
- Use a luminance histogram for auto exposure.
- Add support for clustered shading.
- Add WS 2.0 shaders.
- Add 3D cloud shaders.
- Add orthoscenery support.
Change to calculate the frame rate ourselves because /sim/frame-rate doesn't take into account freeze and has a transient ridiculous value after a pause. Instead we calculate the average rate over a period and then LP filter this.
This also removes the annoying frame rate update messages
Cofiguration now comes from /sim/emexec
* /sim/emexec/monitor-period is the period to reset the average; the LP filter isn't reset.
* /sim/emexec/max-rate-hz is the upper limit on the emexec update rate. defaults to 50 and a model can override this. It's probably not a user setting
output of
* current emexec rate into /sim/emexec/rate-hz
* smoothed / LP filtered frame rate into /sim/emexec/frame-rate
Translations/default/menu.xml
defaults.xml
Added /sim/video/ items.
gui/dialogs/video.xml
New, allows one to select the video container, codec, quality, speed and
bitrate to be used when encoding videos. Radio buttons are provided for
common containers and codecs.
gui/menubar.xml
File menu now has 'video start' and 'video stop' items, plus an item that
opens new 'video control' dialogue. [We use menu items for video start/stop
to minimise the visual affect at the beginning and end of the generated
video.]
- The G-Buffer layout has been redesigned to be 96 bits per pixel. There are 24
unused bits that can be used for extra material parameters later (like
clearcoat).
- Add better debug views for the G-Buffer.
- Use octahedron normal encoding. This yields the same results as the previous
method but uses 16 bits less.
- Use rg11fb10f for the environment mapping cubemaps.
- Tweak the shadow mapping parameters and add a colored debug mode.
- Only render shadow maps for objects that inherit from model-default.eff or
model-pbr.eff instead of having a fallback Effect. Now transparent objects
should be ignored (if they are marked as such with model-transparent or
similar).
- Remove the separate occlusion texture. Now the PBR Effect expects a single
texture where R=occlusion, G=roughness and B=metallic.
Uses new property /sim/controls/brake-cancels-parking-brake.
Default is true; it is expected that some aircraft (e.g. p51d) will set this to
false so they can implement their own brake/parking-brake interaction.
Should address bug 2589.
There aren't any mechanisms in the C++ side to handle custom settings yet, so don't use graphics presets unless the user enables them explicitly through a command line option.
There are a lot of towers that are at the same altitude as the airport; this is clearly a lack of data. Also there are some towers that are ludicrously high (e.g. KLSV). This commit defines a reasonable minimum and maximum values for tower altitude; together with a default altitude which will be added to the airport elevation when the tower altitude is outside of these ranges (above airpot altitude).
/sim/time/frame-time-offset-ms
and set it to non archivable.
this prop is used to delay the time we start a fg loop if we are using the throttle frame rate,
this allow a better master-slave relation as the slave can be run a little after the master.
linked to a28bf28ee089e53a1790d222c02dd2963a76dd85 and 7dfbcf091880ab9d9ed24917f50e1b1920c6a811 in flightgear.