Fernando García Liñán
9983a0c68c
HDR: Water rendering
2021-08-25 04:17:09 +02:00
Fernando García Liñán
eea955168e
HDR: Organize shadow-related files and add screen space shadows
2021-08-24 23:38:56 +02:00
Fernando García Liñán
eed433ce9f
HDR: Use stencil buffer for optimization purposes
2021-08-23 12:44:26 +02:00
Fernando García Liñán
8662ce0a86
HDR: Add SMAA as the default antialiasing technique
2021-08-23 01:05:41 +02:00
Fernando García Liñán
b79d09d45f
HDR: Prevent materials with roughness=0 from blowing out the lighting
2021-08-22 18:01:30 +02:00
Stuart Buchanan
a442615c68
WS30: Fix WS30 fragment shaders
2021-08-21 17:15:15 +01:00
Fernando García Liñán
b52fe3bf34
HDR: Remove glass.eff minimum alpha hack
2021-08-19 20:19:55 +02:00
Fernando García Liñán
7ff31e9004
HDR: Properly handle AC3D transparent materials
2021-08-19 18:20:37 +02:00
Fernando García Liñán
765a7d88f5
HDR: Use precomputed uniforms in the skydome shader
2021-08-19 14:06:25 +02:00
Fernando García Liñán
94f4007793
HDR: Use precomputed uniforms for atmospheric scattering
2021-08-19 12:50:16 +02:00
Fernando García Liñán
212f8fdab9
HDR: Add support for glTF transparent objects
2021-08-19 01:42:32 +02:00
Fernando García Liñán
05994100ea
HDR: Better handling of model-combined for backwards compatibility
2021-08-18 12:27:03 +02:00
Fernando García Liñán
f5bc6df9fb
HDR: Use a reversed depth buffer to increase precision and avoid Z-fighting
2021-08-17 20:58:48 +02:00
Fernando García Liñán
13df616ca6
HDR: Support glTF models
2021-08-16 17:10:01 +02:00
Fahim Imaduddin Dalvi
81af0f37c2
Shader-based scenery lights.
...
This commit implements shader-based scenery lights with support for
efficient rendering of a large number of lights, animations and
directionality. Detailed commit log can be found at [1]. Detailed
discussions can be found on the mailing list [2][3][4].
[1] https://sourceforge.net/u/fahimdalvi/fgdata/ci/feat/scenery-shader-lights/~/tree/
[2] (Timed animation stops working in certain configurations) https://sourceforge.net/p/flightgear/mailman/flightgear-devel/thread/4A7AC359-63B3-4D8A-815B-09823BCEFF27%40gmail.com/#msg37095923
[3] (Shader-based scenery lights) https://sourceforge.net/p/flightgear/mailman/flightgear-devel/thread/63E3C131-7662-4F59-B2E6-03208C78EF96%40gmail.com/#msg37190517
[4] (Shader-based scenery lights Part 2) https://sourceforge.net/p/flightgear/mailman/flightgear-devel/thread/74F18179-CA34-4901-A44E-15498ECC230A%40gmail.com/#msg37331695
2021-08-07 21:42:20 +03:00
Fernando García Liñán
4d34115177
HDR: Increase maximum distance of aerial perspective
2021-07-31 19:13:19 +02:00
Fernando García Liñán
467468ef3a
HDR: Improve exposure and bloom handling
2021-07-31 19:13:19 +02:00
Fernando García Liñán
526491790e
HDR: Improve envmap pre-filtering
2021-07-31 19:13:19 +02:00
Fernando García Liñán
5c1c28c536
HDR: Improve PBR Effect
2021-07-31 19:13:19 +02:00
Fernando García Liñán
871654c16f
HDR: Better handling of the Sun
...
Add transmittance to the Sun illuminance value to get correct colors at every time of day.
Also improved the Sun disk rendering.
2021-07-31 19:13:19 +02:00
Fernando García Liñán
a00f7ddfaf
HDR: Fix Earth appearing to be "rounder" than normal
...
We have to compensate for the fact that the sky-view LUT contains the view from the camera, but the skydome remains fixed on the ground.
2021-07-29 11:55:01 +02:00
Fernando García Liñán
af29642423
HDR: miscellaneous changes
...
- Add an utility linearizeDepth function to help visualize the depth buffer for debug purposes.
- Use 'color0' instead of 'color' for all color attachments.
- Do not write to the HDR buffer if a fragment doesn't need shading (depth = 1).
2021-07-29 08:45:17 +02:00
Fernando García Liñán
760db3ba6d
HDR: gracefully handle situations where the viewer is below the ground
2021-07-28 11:37:33 +02:00
Fernando García Liñán
9b9ae5cf38
HDR pipeline: even better atmospheric scattering
...
Implementation of "A Scalable and Production Ready Sky and Atmosphere Rendering Technique" by Sébastien Hillaire (2020).
2021-07-28 09:40:04 +02:00
Fernando García Liñán
016585e176
HDR pipeline: Use MRT to prefilter the environment map
2021-07-26 17:21:20 +02:00
James.Hester
c6b526f343
Create overlay mixing scales based on texture scale.
2021-07-26 11:13:00 +01:00
Fernando García Liñán
9eaef501c7
HDR pipeline: a lot of improvements to atmospheric scattering
2021-07-26 12:11:37 +02:00
Fernando García Liñán
1215f1eba2
HDR pipeline: add placeholder shaders for WS 3.0
2021-07-24 13:35:53 +02:00
Fernando García Liñán
96313e7eb0
Initial commit of the HDR pipeline
2021-07-23 07:46:05 +02:00
Fernando García Liñán
d15b61e9b5
Reorganize the shadow mapping functions
...
- Removed the multiple return statements, as they can be problematic with older GLSL 120 compilers
- Removed debug flags
- Moved code to separate functions for readability
- Reduced the band size to 0.1 to make more use of the higher quality cascades
2021-06-17 18:18:27 +02:00
Fernando García Liñán
49fa42faac
Add shaders for osgText
2021-05-14 22:45:36 +02:00
Erik Hofman
8c01478ed8
It's now possible to create a overrides of water colour and shallowness for waterbodies through regional definitions. Note: Overrides are constant and apply throughout the waterbody. This is mainly useful for inland waterbodies.
...
- Added overrides as parameter values for: water floor_colour (vec3 RBG colours. Range: 0 to 1. Defaults: old inland map colour, a blue ocean colour.), water_shallowness (Same as depth map texture. Range: 0 to 1. Defaults: 1.0 inland, 0.7 ocean). The corresponding texture lookup branches are also gated by these uniform flags for performance reasons.
2021-05-10 11:52:45 +02:00
Erik Hofman
3ae3f95abd
Use the alpha channel of the depth map
2021-05-09 14:26:18 +02:00
Erik Hofman
055ce55be4
Use a Gray-Alpha texture for water depth information and use the globe-colors.jpg texture for water color.
2021-05-07 15:14:56 +02:00
Erik Hofman
79e1ca771f
Perfect the water depth calculation based on water colors
2021-05-03 14:36:07 +02:00
Erik Hofman
d145a52ac1
I forgot that the ocean depth was in the alpha channel but work around that by using the RGB colors to do the same
2021-05-02 13:01:52 +02:00
Fernando García Liñán
23f908665f
Fix random buildings shader errors
2021-04-16 07:46:35 +02:00
Fernando García Liñán
4099044b65
Fix incorrect lightmap intensity with lightmap-multi=0
2021-04-15 11:12:07 +02:00
Fernando García Liñán
69387f09f4
Reduce shader complexity and implement graphics presets
...
- All non-ALS Effects have been removed (except generic ones from model-default and terrain-default).
- The rendering dialog has been reworked to accomodate the changes.
- All necessary properties have been added to graphics-properties.xml
- Five graphics presets have been added: Minimal, Low, Medium, High and Ultra.
- Some unused properties have been removed from defaults.xml
2021-03-31 04:05:34 +02:00
Scott Giese
101ff86ec5
Revert "White Text Issue: Initial shaders"
...
This reverts commit eb88b44dbe
.
2021-03-01 21:11:29 -06:00
Scott Giese
eb88b44dbe
White Text Issue: Initial shaders
2021-02-27 00:27:53 -06:00
Stuart Buchanan
d887e4b22d
WS30: Add Texture rotation to ALS shader
2021-02-02 15:24:41 +00:00
Stuart Buchanan
580c375d4b
WS30: Use perlin texture to reduce tiling
...
Use a perlin noise texture to rotate some of the landclass
textures to reduce tiling.
Also add a quality=1 technique which uses it.
2021-01-26 20:17:17 +00:00
Stuart Buchanan
d058b514f2
WS30: Add basic shaders
2021-01-23 17:15:12 +00:00
James Turner
9355d464c1
Fix shader-based buildings on AMD/macOS
2021-01-22 20:59:34 +00:00
Erik Hofman
40e871a911
Implement a simple snow shader for the low quality levels
2021-01-19 11:10:44 +01:00
Fernando García Liñán
63fbe7d525
Fix missing forward declaration in forest shader
2021-01-10 16:40:05 +01:00
Fernando García Liñán
21a6e20701
Tweak shadow offset parameters and cascade ranges
...
This should hopefully fix some shadow acne edge cases.
2021-01-05 11:24:19 +01:00
Fernando García Liñán
916322d0ed
Add clustered shading support to most Effects and shaders
2020-12-23 11:10:34 +01:00
Fernando García Liñán
7158dfdff3
Revert "Add clustered shading support to most Effects and shaders"
...
This reverts commit b3237e207a
.
2020-12-22 17:22:05 +01:00
Fernando García Liñán
b3237e207a
Add clustered shading support to most Effects and shaders
2020-12-22 10:53:31 +01:00
Fernando García Liñán
a058bed4d5
(Another) significant rework of the clustered shading feature
2020-12-22 10:53:31 +01:00
Stuart Buchanan
ba89f4c153
WS30: Improved material atlas
...
Add
- texture size
- shininess
- diffuse
- specular
from material.xml into the fragment shader via sampler1D.
2020-12-08 21:15:13 +00:00
Fernando García Liñán
00b465b84f
Decrease shadow mapping bias and better 3rd cascade depth range
2020-12-06 14:44:03 +01:00
Stuart Buchanan
3e3593119c
WS30: Shader change to use texture atlas
...
These changes use the generated Texture2DArray for
texture lookup, supporting arbritary sets of material
textures.
2020-12-05 13:11:59 +00:00
Fernando García Liñán
3f489619c5
Fix landmass geometry shader errors
...
It was using features from GLSL 120 and 150. Only use 120 features for now.
2020-12-03 23:24:40 +01:00
Scott Giese
5512934374
Photoscenery: patch to fix missed merge items.
...
Author: Nathaniel Warner
2020-11-23 20:55:30 -06:00
Scott Giese
76f7f1b698
Photoscenery: Initial commit
...
Author: Nathaniel Warner
2020-11-23 19:48:01 -06:00
Fernando García Liñán
7c16104149
Add the possibility to use shadow mapping on model-interior
2020-11-17 17:21:01 +01:00
Fernando García Liñán
ed3cbf96ff
Make model-interior use a separate vertex shader
...
generic-ALS-base.vert uses shadows, while model-interior does not.
2020-11-17 00:57:56 +01:00
Fernando García Liñán
fc33a8d71a
Fix non-ALS runway shader not implementing shadows
2020-11-17 00:41:02 +01:00
Fernando García Liñán
a3a8f9123e
Make Compositor default
...
- Remove all Compositor Effects and Shaders.
- Unify the low-spec and ALS pipelines in a single pipeline called 'Classic'.
- Readd shadow mapping.
- Move the WS30 Effect and fragment shader out of the Compositor-specific directories.
2020-11-16 13:46:30 +01:00
Erik Hofman
167cbc6a3d
Changing file permissions to remove execute bit
2020-09-02 09:42:36 +02:00
Eatdirt
6f4279a5ed
Remove rgb normalization and relax cut on NdotL to positive or null (fix visible redcuts)
2020-07-12 18:40:38 +02:00
Stuart Buchanan
fc27175690
Reduce shader attribute usage by packing floats
...
Previously we required 6 shader attributes to pass
in all the required information for the building shader.
By using packing techniques this has been reduced to 4.
This should improve support for integrated graphics cards.
2020-03-26 22:06:21 +00:00
Delta Echo
73d7e5e1c2
Fix bug about body width
2020-03-02 10:05:17 +00:00
Delta Echo
e727d6d4e3
Implement rotation into wingflex shader
2020-02-23 17:49:02 +00:00
Delta Echo
3bf12ce8e7
Minor changes, use int for type instead of organic bool
2020-02-01 11:38:39 +01:00
Delta Echo
be7e278f1c
Improve wingflex shader+effect
2020-01-31 16:52:20 +01:00
Stuart Buchanan
119fb5efe2
Random Buildings - improved texture mapping
...
Previously the front and side faces of random/OSM buildings
had identical texture coordinates. This resulted in the sides
of buildings texture mapping being squeezed or stretched.
This change generates a separate texture mapping for the sides
of the buildings.
2019-11-23 17:08:04 +00:00
Stuart Buchanan
564e7b31fd
Shader buildings multiple roof types
...
Shader buildings now support different roof types
- flat
- gabled
- hipped
- pyramidal
Primarily for osm2city use.
2019-10-08 21:39:40 +01:00
Thorsten Renk
1ab8786d37
Fix for light point sprite shader when light definition is initially small and creates nmerical issues
2019-10-06 11:26:42 +03:00
Stuart Buchanan
87e9118965
Shader buildings - split wall and roof tex index
...
Previously there was very limited texture variations
as a given texture index was used for both the wall
and ceiling. Now these can be specified separately,
allowing for more variation in both STG defined and
random buildings.
Requires simgear commit 053bda26a43314a91b01b08cd4617da82f7ab807
2019-09-25 21:56:22 +01:00
Stuart Buchanan
4784a929d7
Instance based random buildings
...
Replace random buildings with one using proper instancing.
Also implement more control over rendering of random buildings.
see README.scenery for details.
2019-08-20 17:02:27 +01:00
Fernando García Liñán
6d58c143c0
Added dithering as an ALS post-processing effect to prevent banding
2019-04-21 18:53:19 +02:00
Scott Giese
f43ea66022
Cliffs effect and fragment shader by James Hester.
...
Based on rock-ALS.frag and rock.eff.
2019-03-31 15:28:34 -05:00
Thorsten Renk
3e4234717b
ALS: Traffic shader uses car images on texture - artwork by Gilberto Agostinho
2019-01-14 13:57:02 +02:00
Thorsten Renk
d4cd51b43b
ALS: Improve snow rendering of procedural rock shader
2018-09-17 11:21:35 +03:00
Thorsten Renk
d8c0387744
ALS: Fix rainbow fringing order in Cirrus clouds
2018-09-05 09:20:20 +03:00
Thorsten Renk
7552c2921e
ALS: Add display effect - dust overlay texture provided under GPL 2+ by Martin Litzenberger
2018-09-01 09:54:42 +03:00
Thorsten Renk
a4960e14fa
ALS: Detailed scattering model for light on Cirrus clouds
2018-09-01 09:42:34 +03:00
Thorsten Renk
cce0fac2f8
ALS: New cloud rendering detail level with more dramatic Mie scattering at cloud fringes done inside fragment shader
2018-08-30 09:17:36 +03:00
Thorsten Renk
d0789a1907
ALS: tentative fix for skydome monolith artifact - apparently this is a numerical accuracy issue (?)
2018-02-13 15:00:21 +02:00
Thorsten Renk
69e8d90247
ALS: Tentative fix for random building fog issue II - fall back to old up-vector computations when building flag is set
2018-02-11 09:46:21 +02:00
Thorsten Renk
1407ff3166
ALS: do not clamp haze color in object shaders, this leads to mismatch with terrain at high light intensity
2018-02-09 14:08:01 +02:00
Thorsten Renk
d9e55dc2e5
Improvements to Earthview: enable changing cloud density, fix aurora z-ordering issue, let moonlight give a relief effect to clouds
2018-01-29 09:25:38 +02:00
Thorsten Renk
e5f4b0a511
More infrastructure for perception filtering of moonlight
2017-11-13 10:27:25 +02:00
Nikolai V. Chr
3283e9721f
Ported the specular lightning from combined shader to ALS interior detailed shader, to make the spot independent of view direction.
2017-10-10 18:11:59 +02:00
Nikolai V. Chr
a206b3cb51
Change to the up vector used in sky irradiance light in ALS shader.
...
Models that are xml offset with pitch, heading or yaw should now be correct lighted.
2017-10-10 17:58:32 +02:00
Thorsten Renk
a7e2ffc869
Some fixes for the ALS overlay shader
2017-09-18 12:47:21 +03:00
Thorsten Renk
1c00d1d7d6
Tentatively make ALS grass shader more palatable to AMD/Radeon
2017-09-18 12:38:19 +03:00
Thorsten Renk
affad6c43f
Remove unused g_num_layers from grass shaders
2017-09-16 09:47:14 +03:00
Thorsten Renk
7df5690f08
ALS terrain overlay shaders, not yet used, terrain definitions will follow post-release
2017-09-16 09:44:18 +03:00
Thorsten Renk
4e41f9b9be
Make ALS procedural light shader palatable to nouveau driver
2017-09-01 12:57:11 +03:00
Thorsten Renk
7c72687ed7
ALS: rotor wash effect for volumetric grass and water shaders
2017-06-27 11:01:23 +03:00
Thorsten Renk
746e80547e
ALS - begin infrastructure for moonlight perception filtering
2017-06-18 10:08:39 +03:00
Thorsten Renk
79244fd5e4
ALS model shader: allow dirt overlay to change surface reflectivity, add grain merge reflection type to space shader
2017-06-18 09:35:32 +03:00
Thorsten Renk
0df35c2516
ALS space shader: Allow dirt overlay to influence glow visuals
2017-06-14 15:06:05 +03:00
Thorsten Renk
0ce15870f3
ALS road shader: show car tail lights dependent on view direction, change road lighting model such that high traffic density causes additional illumination
2017-06-11 09:42:47 +03:00
Thorsten Renk
32ff0056ef
Daily variation of road traffic with commuter rush hours based on actual traffic studies for ALS road shader
2017-06-09 12:07:51 +03:00