Use buttons for Continuous record start/stop instead of checkbox.
Grey-out Continuous settings checkboxes if we are already doing a Continuous
recording.
Added button to (re)show the Replay dialogue; greyed-out if we are not
replaying.
Various other tweaks.
If /sim/time/fixed-dt is not zero and time mode is simple-time, we use the
specified fixed dt value regardless of framerate. Useful for creating videos.
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.]
Add the following translatable strings to sys.xml: license-url,
units-kbytes, units-kbytes-per-sec, units-mbytes, and
units-mbytes-per-sec.
I know that the SI prefix for kilo is 'k', not 'K', and that these KB
and MB "units" have no well-defined meaning. This is not my choice; just
trying to help with
<https://sourceforge.net/p/flightgear/fgdata/merge-requests/273/>.
Squashed commit of the following:
commit 87dde155b2ee472a5a2c12cc1f395256a68fbf7c
Author: Roman Ludwicki <romek21@op.pl>
Date: Fri Nov 19 18:18:44 2021 +0100
Fix not working multi-key commands.
Replace the nonexistent @pop command with @delete0 to delete the first waypoint in the route.
Fix "position on ground" dialog.
Squashed commit of the following:
commit bc270c30de615a0dff8a4ba422f8181ae18643f6
Author: Roman Ludwicki <romek21@op.pl>
Date: Thu Nov 18 19:02:45 2021 +0100
Delete obsolete multi-key weather scenarios and replace them with the current ones.
Add multi-key to change weather engine.
commit 918aa4402143638133153dff722ef3a6b4feead7
Author: vs <vs2009@mail.com>
Date: Sat Nov 20 23:38:52 2021 +1000
ALS water effect & shaders:
Add object shadows for water in a similar fashion to terrain.
Add commented out code of what should be the shader part of clustered lighting for the compositor. getClusteredLightsContribution() normally multiplies the texel by light contributions. It is fed input such that the light contribution term is similar to secondary lights in the water lighting equation, and both are added together.
Squashed commit of the following:
commit c5b72beed4f79675191507a31757b698b6e856d8
Author: vs <vs2009@mail.com>
Date: Sun Nov 21 20:46:05 2021 +1000
Terrain shaders: Fix terrain overlays not rendering correctly with overlays enabled (WS2 terrain shaders, not WS3). Fixes issue 2648: https://sourceforge.net/p/flightgear/codetickets/2648/ . The 1st pass for the overlays technique is a copy of the ALS ultra shaders pass, and it needed an update adding a new uniform.
- Use fixed fg_modelOffset for global coordinates. Fixes haze, snow,
noise
- Use updated texture atlas for mix, deetail, frain, dot, gradient
textures
- Hack transition_model until it is added as Uniform.
Altimeter Indicator seems to respect even rounding. So, if on settings
appear 29.9299 it shows 29.93. Equipment-Instrument Settings do not and
shows 29.92. If user sets 29.93 then settings keep the rest previous digits
and shows 29.9399. So, altimeter indicator shows 29.94 but instrument
settings keep the difference of 0.01 and shows 29.93.
Same phenomenon happens to hpa value too.
In code with '+0.05' we create even rounding and because the coversion
of one unit to the other many times leaves decimals of values to end
to series of 9, thus Instrument Settings keeps showing 29.929999 as 29.92,
we add artificial small value 0.00001 so as to make significant digits exact.
Use Uniform Arrays instead of Texture1D.
Use ambient/diffuse/specular/shininess material
properties consistently across all WS30 shaders.
Use consistent shading model for photoscenery vs.
landclass to minimize visual difference.
Add WS3 detailed technique using the "6" slot. Port the ALS haze, lighting, and math parts of the detailed and ultra shaders. The texture lookups are left out.
Shader selection based on terrain quality setting:
- Ultra - ws30-ALS-ultra frag/vert.
- High and Medium - ws30-ALS-detailed frag/vert. The shaders switch code paths based on quality level uniform.
- Low - ws30-ALS frag/vert.
Changelog:
ws30-ALS vertex shaders:
- Ambient colour material colour doesn't seem to be used in the vertex shader, and isn't sent to fragment shaders currently. Regional materials only define non-default ambient colour of vec4(0.0) for water, ocean etc. Otherwise the default value of vec4(0.2, 0.2, 0.2, 1.0) is used.
ws30-ALS.frag:
- Set alpha of color to diffuse_term.a, to be consistent with WS2 implementation.
ws30-ALS-ultra.frag and ws30-ALS-detailed.frag
- World pos is assigned a value to allow noise functions to compile.
- Swatch_size is temporarily set to 2000m instead of the xsize texture dimension to allow noise math to run while landclass search and texture arrays are being looked up. Swatch_size is used to adjust the wavelength of multiple overlay mixing noise wavelengths based on how far the textures are stretched (WiP WS2 feature). There are some noise calculations that could run while the first landclass lookup happens. If this is not enough, the selection of calculated noise wavelengths to add could change based on how far the textures are stretched, instead of changing the wavelengths at calculation time.
- Move photoscenery technique no "4" after technique no "7" without changing the index (in case the low index is needed for photoscenery). This makes viewing a diff with the WS2 effect easier.
Performance: Currently there's only 1 ground texture lookup and landclass transitions for that texture. The ultra shader looks up 5 more textures. Probably transitions for 1 more texture need to be supported, as often a base and overlay texture are mixed contributing heavily to visible colour. The math overhead is mostly present, except for noise math being better hidden than in the eventual version. Some of the texture array lookups in the full version may be hidden by the math - depending on GPU memory handling compared to calculation speed.