1
0
Fork 0
Commit graph

10282 commits

Author SHA1 Message Date
Erik Hofman
b43a04895c Prevent water ice-textures from moving around. 2021-12-23 14:22:48 +01:00
Erik Hofman
0ef38014ad Introduce a step-size of 0.05 for ice-cover to make sure inland-ice will be activated when the slider in non-zero. 2021-12-23 13:00:29 +01:00
Roman Ludwicki
c164b04460 Remove unused Qt translations 2021-12-20 14:31:53 +00:00
Erik Hofman
a1dab5709f Add a frozen-lake texture based in the packice textures 2021-12-20 15:00:22 +01:00
Erik Hofman
e618f92a8a Add annual precipitation to the blue channel 2021-12-20 11:44:17 +01:00
Erik Hofman
1bbe5a952b Set inland water bodies icing when the icing slider >= 0.05 2021-12-20 10:00:57 +01:00
Michael Danilov
5915acf7d5 Select Airport partial fix for #2661: spurious enabling of helipad mode, showing N0E0 instead of nearest airport, strange zoom units 2021-12-19 23:26:01 +01:00
Stuart Buchanan
6a917a68b3 WS30: Revert to green channel for texture atlas 2021-12-18 21:55:17 +00:00
Yves Tolosa-Joas
37a1804ad6 Corendon Traffic update 2021-12-16 15:08:42 +00:00
Gonzalo Pesquero
eda516e1b8 Update of Spanish translation files 2021-12-11 23:04:24 +01:00
Julian Smith
16d96b3b17 gui/dialogs/flight-recorder.xml: various improvements.
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.
2021-12-09 23:19:53 +00:00
Julian Smith
eee11c00b0 Translations/default/options.xml: document load-tape-create-video and load-tape-fixed-dt. 2021-12-09 23:19:53 +00:00
Julian Smith
b055deeb90 gui/dialogs/flight-recorder-load.xml: added support for create-video and fixed-dt.
This makes it easy to create video from a recording - video is
auto-started/stopped etc.

Also show tape filesize in preview.
2021-12-09 23:19:53 +00:00
Julian Smith
3699884297 gui/dialogs/time-mode.xml: added control of fixed-dt.
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.
2021-12-09 23:19:53 +00:00
Julian Smith
0395b916c9 defaults.xml: added sim/replay/record-continuous-compression 2021-12-09 23:19:53 +00:00
Julian Smith
f2a724adcb defaults.xml: added sim/time/simple-time/enabled. 2021-12-09 23:19:53 +00:00
Julian Smith
05f7b034d0 Added user interface for video encoding.
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.]
2021-12-09 23:19:53 +00:00
Florent Rougon
483a0dda07 i18n: refresh the FlightGear-nonQt.xlf files 2021-12-09 20:44:10 +01:00
Florent Rougon
1b0e2147ad i18n: add splash screen translatable strings
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/>.
2021-12-09 20:43:01 +01:00
Roman Ludwicki
96ca6e6a4d Update Polish translation 2021-12-07 22:45:33 +01:00
Gonzalo Pesquero
5affbac384 Update of Qt translation files for all languages 2021-12-07 10:48:26 +00:00
Stuart Buchanan
6b4d88e01e Fix not working multi-key commands.
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.
2021-12-05 14:35:41 +00:00
Stuart Buchanan
650ec1ce70 Delete obsolete multi-key weather scenarios and replace them with the current ones.
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.
2021-12-05 14:34:03 +00:00
Stuart Buchanan
889d0cb915 Fix Softkey 10, 11 and 12 for FG1000 multi-keys
commit afb9f752028c3083ff9f78c419e639dc4ce254d5
Author: Roman Ludwicki <romek21@op.pl>
Date:   Fri Nov 19 18:22:14 2021 +0100

    Fix Softkey 10, 11 and 12 for FG1000 multi-keys
2021-12-05 14:29:46 +00:00
Stuart Buchanan
eaf03b6005 Add object shadows to water
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.
2021-12-05 14:15:27 +00:00
Stuart Buchanan
97ea17ea4f Fix to overlays issue 2648
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.
2021-12-05 14:09:27 +00:00
Stuart Buchanan
dcf8641329 WS30: Full ALS Detailed and Ultra implementation
Including mix, detailed, grain, dot, gradient textures
2021-12-05 13:45:46 +00:00
Henning
1890502283 Add argument validation in canvas_efis/eicas-message-sys.nas 2021-12-04 14:50:01 +01:00
Henning
28e865f1e6 Bugfix for aircraft.nas: declare missing member variable 2021-12-04 14:47:22 +01:00
Stuart Buchanan
d4bd49f5f9 WS30: Multi-texture support, global coordinates
- 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.
2021-11-28 19:31:07 +00:00
Roman Ludwicki
f0d29c347e Set the dialog "Metar description" larger for more convenient use 2021-11-23 11:12:27 +00:00
jimishol
f5a5ba60ca Fix Equipment-Instrument Settings inconsistency toward Altimeter Indicator.
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.
2021-11-23 11:06:59 +00:00
Gonzalo Pesquero
7b13c2da25 Update of Spanish translation files 2021-11-20 13:10:49 +01:00
Stuart Buchanan
688bbbc167 WS30: Add zUpTransform and modelOffset, fix snow 2021-11-19 22:06:34 +00:00
Roman Ludwicki
e0fb796bad Corrections for Polish translation 2021-11-15 00:17:20 +01:00
Roman Ludwicki
dbbd89a05b Add missing --igc protocol option displayed in help
Update "nonQt" files for all languages for igc
Update "nonQt" Polish transaltions for igc
2021-11-14 22:17:33 +01:00
Stuart Buchanan
d723b0b518 WS30 - Uniform Arrays and lighting model
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.
2021-11-10 22:58:44 +00:00
Stuart Buchanan
6b943c5e5c WS30: Photoscenery shaders 2021-11-09 20:27:23 +00:00
jimishol
fb6da32cec Fix in code definition of hpa.
In current code hpa is indirectly defined as 10^5 pascals.
The present commit indirectly defines it as 10^2 pascals.
2021-11-09 20:14:25 +00:00
jimishol
7a7b875b58 Fix hpa displayed values at KAP140 2021-11-09 20:12:46 +00:00
Yves Tolosa-Joas
84c45c2bd6 Traffic and Liveries update for Royal Air Maroc 2021-11-09 20:08:11 +00:00
vs
64e5abda41 WS30 shaders:
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.
2021-11-10 00:25:09 +10:00
Stuart Buchanan
851f47f576 WS30: Fix errors on AMD 2021-11-07 18:08:49 +00:00
Stuart Buchanan
ffe8738065 WS30: Correct phototexture coordinates 2021-11-06 16:21:58 +00:00
Stuart Buchanan
f53283be12 WS30: Correct orthophoto texture coordinates 2021-11-06 15:29:22 +00:00
Stuart Buchanan
b043981992 WS30: Initial photoscenery effect
Very basic - just uses the texture.
2021-11-06 14:46:39 +00:00
vs
78df0cb68c WS30 shaders:
Power users looking to profile on different GPUs: the controls and toggles, as well as a guide on how to get accurate results are now in: Shaders/ws30-ALS-landclass-search-functions.frag .

Changelog:
- Move landclass search functions in ws30-ALS-ultra.frag into a shader include: ws30-ALS-landclass-search-functions.frag . These controls should be removed when appropriate.
- 2 development controls to reduce haze and/or lighting are left at the top of ws30-ALS-ultra.frag .

(cherry picked from commit 5196dbd4ebd5f586a7261dc3ae46aa50218caf91)
2021-11-06 19:12:04 +10:00
Julian Smith
06b3fe62e5 gui/dialogs/flight-recorder.xml: improved layout a little. 2021-11-05 21:57:02 +00:00
Stuart Buchanan
aaa6c3ff42 WS30: Fix merge markers. 2021-11-05 20:03:51 +00:00
Stuart Buchanan
e5123eeb46 WS30 : terrain shaders from vs
Squashed commit of the following:

commit e7c89ffb600d1bf5cee2936b7dbff31089452745
Author: vs <vs2009@mail.com>
Date:   Fri Nov 5 23:44:35 2021 +1000

    WS30 shaders:

    - WS30-ALS and WS30-ALS-ultra fargment and vertex shaders: Fix NDotL being used before it is initialised. Rename varying diffuse_term from WS2 terrain shaders to light_diffuse_comp as the full diffuse term is not calculated until the fragment shader.
    - WS30-ALS-ultra.frag: Enable haze and lighting by default.

commit 9b55ad051a8d7f3568dfdcd6890655942999e8d0
Author: vs <vs2009@mail.com>
Date:   Wed Nov 3 22:50:29 2021 +1000

    WS30 terrain shaders: ws30-ALS-ultra.frag

    - For power users looking to profile transitions on different GPUs: The test phase toggles and settings for different transition options are available at the start of ws30-ALS-ultra.frag, along with explanations, and how to get accurate profile results on different GPUs. Just need to change a few numbers, save, and debug menu > configure dev extensions > reload shaders to activate.

    - Note: at a minimum, small scale transitions to remove the 'squareness' due to the landclass texture need to be used even on old GPUs.

    - All transition options are off by default. ws30-ALS-ultra.frag is active when the terrain quality slider is set to Ultra. Start by turning one of small or large scale transitions.

    - Texture mixing for small and large scale transitions don't work together, to reduce texture lookups. Turn one off when using the other.

    - Landclasses with contrasting colours make transition issues more visble. The driver control panel texture filtering settings reduces issues with seams at landclass borders.

    - ws30-ALS.frag is left untouched in this commit, for comparison and reviewing. ws30-ALS.frag is active when terrain quality slider is set High to Low.

    Changes:

    - Implement large scale transitions and small scale de-pixelisation of landclasses by searching the landclass texture. Several options and quality levels are available for profiling on different GPUs.
    - There are fixes for multiple issues dealing with texture rendering.

    Changelog:

    1.0 - Small-scale transitions:
    -- a) Remove squareness due to landclass texture by growing neighbour landclasses onto others depending on a growth priority. This feature uses 2 landclass texture lookups, 1 noise lookup, and only 1 ground texture lookup per point. For now the growth priority is simply the landclass id number. If this approach is used, growth priority would be a materials parameter. A way to set default growth priority by landclass via an xml file would be needed. There is flickering noise at long ranges due to small scale detail in the noise function used for growing landclasses. Partial derivative are used to turn off the feature, but turning off the feature too quickly still shows some square ness in distant landclasses.
    -- b) Reduce squareness due to landclass texture by mixing base textures of neighbouring landclasses. This is not perfect, as perfectly square shapes turn into perfectly square shapes with perfectly smudged edges. This uses 2 landclass texture lookups, and 2-3 ground texture lookups.
    -- c) - a) and b) can be run at once. This option will also fade the growths  gradually with distance. This uses 2 landclass texture lookups, 1 noise lookup, and 2-3 ground texture lookups.

    2.0 - Large scale transitions:
    -- a) Implemented by searching the landclass texture. The search pattern is current landlcass for the fragment at the center, and n search points in four directions along the s and t axes forming a cross. The search directions are configurable in the code, adn a minimum of 3 directions are needed. The step size is configurable. The fewer the steps, the larger the bands formed in the transitions. There are 1+4*n landclass lookups per n search points. e.g. 1 search point: 5 lookups, 4 search points:17 lookups, 10 search points: 41 lookups.
    -- b) An option to dither the transition bands by adding mixing noise is availble. This breaks up the visual impact of bands.
    -- c) There is some functionality to grow neighbours on a large scale. No growth priority is used - bothe neighbours will lose definition. A more advanced implementation can use several material parameters to define the nature of the transition: some transitions are very sharp in nature like with agriculture, other transitions can be very gradual, some transitions are patchy. Materials can have competing parameters, to determine which neighbour grows or has a shorter transition on one side. These parameters will need a way of specifying defaults by landclass.

    3.0 - Fixes
    -- a) - Fix seams at landclass borders. These are caused by different ground textures being stretched by different amounts. At the border, an incorrect mip-map level is looked up, causing a colour disontinuity in addition to the difference between landclasses. The reason the mip-map LoD is incorrect is because GPUs use 4 neighbouring pixels to figure out how fast texture coordinates change with respect to screenspace x and y (i.e. partial derivaitves), and use that information to pick a mip-map level. At a landlcass border, this calculation is incorrect.
    -- b) Fix seams at borders caused by the current detiling function. This is due to the detiling function changing the amount textures are stretched, as well as messing with coordinates.
    -- c) The solution to a) and b) is to use textureGrad() to lookup textures. It allows specifying partial derivatives. The partial derivatives for the normal texture coordinates are obtained by built-in funcions, and these need to be multiplied by each stretching factor, including different stretching inside conditionals. All future texture lookups that use custom coordinate scaling/manipulation need to use textureGrad. This fixes various signs of incorrect mip-map lod with distance and view angle (textures look stable/solid).
    -- d) Fix ground textures being stretched out of proportion in the detiling function. This is caused by tile dimensions not being unequal and texture stretching.
2021-11-05 19:59:32 +00:00