1
0
Fork 0
fgdata/Effects
Stuart Buchanan 0bce3c966f WS30: landclass and texture lookups in fragment shader
commit e131ffaca7b2c934474f0e447b5852cb4c7c8d4a
Author: vs <vs2009@mail.com>
Date:   Fri Oct 15 22:19:42 2021 +1000

    WS30: landclass and texture lookups in fragment shader:

    Changelog:

    - Testing: Procedural random landclass function, get_random_landclass(). 1). Avoids a texture lookup for   profiling. 2). Creates squares of configurable size with controllable random landclass ranges - to test   landclass transition algorithms and quickly profile lots of landclasses in view. It's also possible to put   pressure on GPU memory even with 1 lookup of ground textures per fragment, by reducing size to <20m and   viewing from altitude.

    - Add ALS ultra technique as no 5, move existing ALS technique to no. 6. Add WS30-ALS-ultra frag & vert in   preparation for eventual ALS ultra port. Change comments/variables to match using a texture array instead   of atlas. Sampler name: atlas -> textureArray.

    - Testing/optimisation of de-tiling: WS30-ALS.frag: reorder perlin detiling to make noise source easier to   switch. WS30-ALS-ultra.frag: Create alternative to perlin noise used for reducing tiling that avoids a   texture lookup - to profile and optimise. This is commented out. The performance difference in the final  version depends on memory pressure versus arithmetic load of the full shader. It varies by GPU and what's  in view. In future, once a full ALS  port is done, maybe it'll be more efficient to run a higher quality  de-tiling algorithm all the time to avoid branching overhead due to effects like agriculture which need  more de-tiling. De-tiling code in shaders should /eventually/ match CPU-side de-tiling of texture masks  used for object and vegetation placement. De-tiling code in GPUs might be subject to precision and  numerical artifacts, and if so maybe the texture lookup version would work better. The same applies to  noise used for rendering WS3 water waves and collision queries. One option is to use exactly the same glsl  code, with a C++ header to convert glsl syntax e.g. https://github.com/g-truc/glm .
2021-10-21 21:31:03 +01:00
..
Fallback HDR: Organize shadow-related files and add screen space shadows 2021-08-24 23:38:56 +02:00
HDR HDR: Implement GTAO (Ground Truth Ambient Occlusion) 2021-09-01 04:26:03 +02:00
agriculture.eff Reduce shader complexity and implement graphics presets 2021-03-31 04:05:34 +02:00
airfield.eff Add clustered shading support to most Effects and shaders 2020-12-23 11:10:34 +01:00
birdswarm.eff ALS urban shader development, minor fixes 2016-08-08 09:19:22 +03:00
bowwave.eff Reduce shader complexity and implement graphics presets 2021-03-31 04:05:34 +02:00
building.eff Simplify building.eff, fix lack of orthoTexCoord 2021-04-25 21:36:02 +01:00
bumpspec.eff Reduce shader complexity and implement graphics presets 2021-03-31 04:05:34 +02:00
chrome.eff HDR: Use gl_VertexID instead of the MVP matrix in fullscreen passes 2021-08-31 18:02:38 +02:00
chute.eff Add clustered shading support to most Effects and shaders 2020-12-23 11:10:34 +01:00
cityLM.eff Maintenance: cityLM Effort 2021-02-27 00:26:39 -06:00
cliffs.eff Add clustered shading support to most Effects and shaders 2020-12-23 11:10:34 +01:00
cloud-impostor.eff More infrastructure for perception filtering of moonlight 2017-11-13 10:27:25 +02:00
cloud-models.eff Revert "UniformFactory: merge current uniform per <name> of effect" 2014-11-16 22:09:41 +01:00
cloud-noctilucent.eff More infrastructure for perception filtering of moonlight 2017-11-13 10:27:25 +02:00
cloud-static.eff ALS: Detailed scattering model for light on Cirrus clouds 2018-09-01 09:42:34 +03:00
cloud.eff 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
clouds-box.eff Revert "UniformFactory: merge current uniform per <name> of effect" 2014-11-16 22:09:41 +01:00
clouds-layered.eff Revert "UniformFactory: merge current uniform per <name> of effect" 2014-11-16 22:09:41 +01:00
clouds-thick.eff Revert "UniformFactory: merge current uniform per <name> of effect" 2014-11-16 22:09:41 +01:00
clouds-thin.eff Revert "UniformFactory: merge current uniform per <name> of effect" 2014-11-16 22:09:41 +01:00
clouds-thinlayer.eff Revert "UniformFactory: merge current uniform per <name> of effect" 2014-11-16 22:09:41 +01:00
crop.eff Reduce shader complexity and implement graphics presets 2021-03-31 04:05:34 +02:00
cropgrass.eff Reduce shader complexity and implement graphics presets 2021-03-31 04:05:34 +02:00
dirt-runway.eff Add clustered shading support to most Effects and shaders 2020-12-23 11:10:34 +01:00
flutter.eff Reduce shader complexity and implement graphics presets 2021-03-31 04:05:34 +02:00
forest.eff Reduce shader complexity and implement graphics presets 2021-03-31 04:05:34 +02:00
glacier.eff Reduce shader complexity and implement graphics presets 2021-03-31 04:05:34 +02:00
glass.eff HDR: Better technique ordering 2021-08-31 18:42:21 +02:00
grass.eff Add clustered shading support to most Effects and shaders 2020-12-23 11:10:34 +01:00
herbtundra.eff Reduce shader complexity and implement graphics presets 2021-03-31 04:05:34 +02:00
hud.eff Another ALS HUD bugfix, cannot have two uniforms named the same 2017-04-19 09:52:53 +03:00
landmass-nowood.eff Reduce shader complexity and implement graphics presets 2021-03-31 04:05:34 +02:00
landmass-scrub.eff Reduce shader complexity and implement graphics presets 2021-03-31 04:05:34 +02:00
landmass.eff Reduce shader complexity and implement graphics presets 2021-03-31 04:05:34 +02:00
lfeat.eff Reduce shader complexity and implement graphics presets 2021-03-31 04:05:34 +02:00
light-cone.eff Revert "UniformFactory: merge current uniform per <name> of effect" 2014-11-16 22:09:41 +01:00
light-point.eff Make Compositor default 2020-11-16 13:46:30 +01:00
light-spot.eff Make Compositor default 2020-11-16 13:46:30 +01:00
lightmap.eff Fix inherits-from breaking lightmap.eff fallback 2021-04-22 10:29:59 +01:00
lightning.eff More work on rendering lighting in ALS, public domain NOAA image resources are gratefully acknowledged 2015-08-12 11:31:05 +03:00
material-diffuse.eff Revert "UniformFactory: merge current uniform per <name> of effect" 2014-11-16 22:09:41 +01:00
material-off.eff Revert "UniformFactory: merge current uniform per <name> of effect" 2014-11-16 22:09:41 +01:00
model-combined-deferred.eff Make Compositor default 2020-11-16 13:46:30 +01:00
model-combined-transparent.eff Better handling of transparent objects in Classic 2021-08-31 18:25:28 +02:00
model-combined.eff HDR: Use stencil buffer for optimization purposes 2021-08-23 12:44:26 +02:00
model-default.eff HDR: Optimize the G-Buffer and do not separate the occlusion texture 2021-08-27 00:03:43 +02:00
model-interior-display.eff Reduce shader complexity and implement graphics presets 2021-03-31 04:05:34 +02:00
model-interior.eff Add clustered shading support to most Effects and shaders 2020-12-23 11:10:34 +01:00
model-pbr-transparent.eff HDR: Better technique ordering 2021-08-31 18:42:21 +02:00
model-pbr.eff HDR: Better technique ordering 2021-08-31 18:42:21 +02:00
model-transparent.eff HDR: Better technique ordering 2021-08-31 18:42:21 +02:00
model-wingflex.eff Reduce shader complexity and implement graphics presets 2021-03-31 04:05:34 +02:00
planet-aurora.eff Earthview 2.1 - parallax mapping for cloud layer, lightning at night, Rayleigh scattering in atmosphere and minor bugfixes 2017-04-05 16:50:31 +03:00
planet-cloudlayer.eff Remove requests to generate normals as these are no-ops, because 2020-05-03 07:29:34 +01:00
planet.eff Remove requests to generate normals as these are no-ops, because 2020-05-03 07:29:34 +01:00
procedural-light.eff Procedural aircraft lights for ALS - WIP 2016-02-03 09:13:30 +02:00
rain-layer.eff Groundwork for ALS g-force blackout filter, WIP 2017-03-03 19:50:13 +02:00
reflect-bump-spec.eff Reduce shader complexity and implement graphics presets 2021-03-31 04:05:34 +02:00
reflect.eff Reduce shader complexity and implement graphics presets 2021-03-31 04:05:34 +02:00
road-high.eff osm2city building, road, railway materials. 2017-05-09 14:16:44 +01:00
road-low.eff osm2city building, road, railway materials. 2017-05-09 14:16:44 +01:00
road-mid.eff osm2city building, road, railway materials. 2017-05-09 14:16:44 +01:00
road.eff Reduce shader complexity and implement graphics presets 2021-03-31 04:05:34 +02:00
rock.eff Add clustered shading support to most Effects and shaders 2020-12-23 11:10:34 +01:00
runway-dds.eff Revert "UniformFactory: merge current uniform per <name> of effect" 2014-11-16 22:09:41 +01:00
runway.eff Reduce shader complexity and implement graphics presets 2021-03-31 04:05:34 +02:00
scenery-lights.eff Fixed FOV side effect on light sprite size. 2021-09-04 13:41:02 +03:00
schemes.xml HDR: Optimize the G-Buffer and do not separate the occlusion texture 2021-08-27 00:03:43 +02:00
shadow-vol.eff Make Compositor default 2020-11-16 13:46:30 +01:00
shadow.eff Make Compositor default 2020-11-16 13:46:30 +01:00
skydome.eff HDR: Organize shadow-related files and add screen space shadows 2021-08-24 23:38:56 +02:00
space-combined.eff 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
space.eff Experimental additional lighting options for ALS model shaders 2016-07-31 10:29:02 +03:00
stars.eff HDR: Better technique ordering 2021-08-31 18:42:21 +02:00
surface-lights-directional.eff Extend ALS flitering to more effects 2016-03-18 09:32:34 +02:00
surface-lights.eff Extend ALS flitering to more effects 2016-03-18 09:32:34 +02:00
terrain-default.eff HDR: Use stencil buffer for optimization purposes 2021-08-23 12:44:26 +02:00
terrain-overlay.eff Fix terrain-overlay.eff not properly checking for geometry shaders 2021-04-02 21:44:17 +02:00
text-default.eff Add shaders for osgText 2021-05-14 22:45:36 +02:00
thrust-flame.eff Bugfix and noise seed option for ALS thrust flame shader 2017-04-17 10:30:49 +03:00
transition-base-dirt.eff Reduce shader complexity and implement graphics presets 2021-03-31 04:05:34 +02:00
transition-base-grass-inverse.eff Reduce shader complexity and implement graphics presets 2021-03-31 04:05:34 +02:00
transition-base-grass-rock.eff Reduce shader complexity and implement graphics presets 2021-03-31 04:05:34 +02:00
transition-base-rock.eff Reduce shader complexity and implement graphics presets 2021-03-31 04:05:34 +02:00
transition.eff Reduce shader complexity and implement graphics presets 2021-03-31 04:05:34 +02:00
tree-european-deciduous.eff European deciduous trees change autumn color in ALS 2015-02-18 10:35:00 +02:00
tree-european-mixed.eff European deciduous trees change autumn color in ALS 2015-02-18 10:35:00 +02:00
tree-forest.eff Prepare ALS tree shader for filtering, add functionality for (optional) agressive optimization 2016-03-26 09:02:51 +02:00
tree-grass.eff Random vegetation shadows for ALS 2015-02-20 09:55:13 +02:00
tree.eff Reduce shader complexity and implement graphics presets 2021-03-31 04:05:34 +02:00
urban.eff Reduce shader complexity and implement graphics presets 2021-03-31 04:05:34 +02:00
water-dds.eff Revert "UniformFactory: merge current uniform per <name> of effect" 2014-11-16 22:09:41 +01:00
water-inland.eff Cleanup: 2021-05-10 11:52:28 +02:00
water.eff HDR: Water rendering 2021-08-25 04:17:09 +02:00
ws30.eff WS30: landclass and texture lookups in fragment shader 2021-10-21 21:31:03 +01:00
ws30water.eff HDR: Water rendering 2021-08-25 04:17:09 +02:00