057367bf4f
Add FidelityFX Super Resolution 2.2 (FSR 2.2.1) support.
...
Introduces support for FSR2 as a new upscaler option available from the project settings. Also introduces an specific render list for surfaces that require motion and the ability to derive motion vectors from depth buffer and camera motion.
2023-09-25 10:37:47 -03:00
dda8846dea
Fix LightmapGI shading sometimes being unlit or black
2023-09-20 01:41:32 +03:00
9a1b4f338b
Merge pull request #81160 from paddy-exe/canvas-uv-world-space
...
Add render mode to use world coordinates in canvas item shader
2023-09-19 09:03:18 +02:00
3815b2f98e
Merge pull request #81315 from conorlawton/z-billboard-y-velocity-no-scale
...
Fix z-billboard + y to velocity transform alignment to correctly respect non-uniform scale
2023-09-08 23:14:27 +02:00
9ecafcc491
Fixed z-billboard-y-velocity to correctly respect non-uniform scale instead of averaging scale
2023-09-08 20:01:57 +01:00
45a33cc749
Implement render mode fog_disabled and BaseMaterial3D setting Disable Fog
2023-09-05 18:15:02 +02:00
c98ab5aba3
Add option to use world coordinates in canvas item shader
...
By using the render mode `world_vertex_coords` you can automatically use the vertex coordinates in world space
2023-08-30 15:32:18 +02:00
a6c72f9829
Merge pull request #81074 from DarioSamo/flip-motion-vectors
...
Flip convention of motion vectors.
2023-08-29 12:46:44 +02:00
9d74c24232
Merge pull request #80723 from DarioSamo/debug-motion-vectors
...
Improve visual feedback when using the motion vectors debug view option
2023-08-29 12:44:45 +02:00
293302ccd8
Add motion vector support for GPU 3D Particles.
...
Add the capability of resizing the transforms buffer for particles to be double its size and alternate where the current output is written to. Only works for particles that use index as their draw order.
2023-08-28 10:56:02 -03:00
e7d3a7c2aa
Improve visual feedback when using the motion vectors debug view option.
...
Replaces the current method of showing the raw values of the motion vectors buffer to display a grid of lines instead with a new shader.
2023-08-28 10:14:21 -03:00
f14c944c21
Flip convention of motion vector to point from current pixel to the previous pixel.
2023-08-28 09:30:20 -03:00
8449331f13
Fix missing decal mask in mobile renderer
2023-08-23 11:14:10 +10:00
e2984af013
Add motion vector support for animated surfaces like skeletons or blend shapes.
...
Extends mesh instances that required custom vertex buffers to create two alternating buffers that are written to and binds them to use them as the previous vertex buffer when generating motion vectors.
2023-08-16 11:37:42 -03:00
1163dac9e3
Merge pull request #80215 from clayjohn/HDR-2D
...
Add option to enable HDR rendering in 2D
2023-08-08 16:57:33 +02:00
40ca09364d
Merge pull request #80311 from darksylinc/matias-fullscreen-tri
...
Use fullscreen tri instead of quad
2023-08-07 14:54:21 +02:00
faaf27f284
Fix various typos with codespell
...
Also includes typo fixes from #79993 , #80068 , #80276 , and #80303 .
Co-authored-by: betalars <contact@betalars.de >
Co-authored-by: spaceyjase <429978+spaceyjase@users.noreply.github.com >
Co-authored-by: Swarkin <102416174+Swarkin@users.noreply.github.com >
Co-authored-by: Raul Santos <raulsntos@gmail.com >
2023-08-07 13:09:47 +02:00
57eb762bae
Add option to enable HDR rendering in 2D
...
This is needed to allow 2D to fully make use of 3D effects (e.g. glow), and can be used to substantially improve quality of 2D rendering at the cost of performance
Additionally, the 2D rendering pipeline is done in linear space (we skip linear_to_srgb conversion in 3D tonemapping) so the entire Viewport can be kept linear.
This is necessary for proper HDR screen support in the future.
2023-08-07 11:24:03 +02:00
79c9edab3b
Draw sky as a fullscreen triangle
2023-08-05 17:55:43 -03:00
6e7d87fb25
Use fullscreen tri instead of quad
2023-08-05 17:09:06 -03:00
7c812cd7e9
Fix use of discard in shaders
...
discard was being included in all shaders set to depth pass opaque, which is the majority of shaders
Instead it should only be used with alpha prepass materials
2023-07-24 23:21:04 +02:00
33e46aac13
Revert the change of the limit for interpolation of R0 with respect to metallic and SSR
...
Commit 2c000cb72f changed the interpolation limits from (0.04, 1.0) to (0.04, 0.37). This is incorrect, as we want to have an F0 of 0.04 for dielectrics (materials with metalness of 0.0) and an F0 of 1.0 for metals.
The Schlick approximation uses an F0 of 0.04 for all dielectrics and it's good enough.
Having it lower than 1.0 leads to an incorrect application of the Fresnel effect for metals and leads to bugs like #79549
2023-07-18 19:18:19 +02:00
0fa808ba5e
Merge pull request #77085 from BastiaanOlij/visualise_direction_shadowmap_frustum
...
Draw frustum splices ontop of direction shadow atlas for debug purposes
2023-07-12 21:02:25 +02:00
bb15241e06
Merge pull request #77740 from ChibiDenDen/simplify_vulkan
...
Replace sampler arrays with constant sampler elements, simplify and reuse code for all shaders
2023-07-12 17:16:12 +02:00
35715e510f
replace sampler arrays with constant sampler elements
2023-06-22 01:11:57 +03:00
952b4b3f38
Apply reprojection in multiview for our cluster lookup
2023-06-21 11:17:01 +10:00
66272ea26e
Fix volumetric fog in stereo by projection vertex in combined space
2023-06-20 14:36:14 +10:00
d9eb9665da
Draw frustum splices ontop of direction shadow atlas for debug purposes
2023-06-11 11:48:11 +10:00
9ce42d176d
Merge pull request #76977 from manueldun/light-shader-builtins
...
Enable the use of all supported builtins on the light shader
2023-06-09 11:04:46 +02:00
e2321c21db
Enable the use of all builtins on the light shader
...
When using the light process in spatial shader,
the built-ins work as spected, now they work in forward+,
mobile and compatibility renderer.
2023-06-08 14:14:14 -04:00
f6dcd7f51a
Merge pull request #75181 from dalexeev/fix-light-only-mode
...
Fix "Light Only" mode of `CanvasItemMaterial`
2023-05-27 17:28:29 +02:00
852740a627
Merge pull request #76053 from MightiestGoat/fix-sky-auto-exposure
...
Fix the grainy sky while using debanding.
2023-05-24 08:46:28 +02:00
9ecb929da6
Merge pull request #76565 from clayjohn/debug-PSSM-splits
...
Re-implement the PSSM_SPLITS debug option
2023-05-15 09:33:01 +02:00
43b0702a02
Fix "Light Only" mode of CanvasItemMaterial
2023-05-13 09:06:09 +03:00
6465432570
Save cluster render shader from being optimized out entirely
2023-05-08 18:39:49 +02:00
fb77021559
Use proper UV in cubemap downsampler raster
...
This removes bias in cubemap downsampling shader that resulted in the bottom of cubemaps being over represented
2023-05-03 01:06:34 -07:00
ca23d06a31
Re-implement the PSSM_SPLITS debug option
...
This uses a render_mode instead of shadow_color to avoid adding a cost to the basic shader
2023-04-28 17:53:56 -07:00
09aa1bbdb3
Fix unsupported sampler filter used for voxel GI
2023-04-26 20:54:06 +02:00
14a8124ffe
Add LIGHT_IS_DIRECTIONAL built-in for spatial shaders
2023-04-20 14:33:30 +02:00
ab603e347f
Clamp normal when calculating 2D lighting to avoid artifacts
2023-04-18 17:26:17 -07:00
69f634ac78
Fix the grainy sky while using debanding
2023-04-15 10:43:46 +05:30
34a842b5d1
Merge pull request #75462 from joao-pedro-braz/use_modelview_for_vertex_transform_when_double_precision_is_enabled
...
Use MODELVIEW_MATRIX when on double precision
2023-04-13 09:53:54 +02:00
6229c2a1f9
Translate inactive particles to -INF
2023-04-12 19:32:39 -04:00
c118314fe8
Apply sky fog after luminance multiplier
2023-04-08 12:52:33 +05:00
2c000cb72f
Fix the limit for interpolation of R0 with respect to metallic and SSR
...
Shlick term
2023-04-06 23:14:47 +05:30
63c6f0b93c
Use MODELVIEW_MATRIX for vertex transform when double precision is enabled
...
This commit updates the double precision vertex transform code from
using the MODEL_MATRIX to now use the MODELVIEW_MATRIX instead.
This can be made possible by transforming the MODELVIEW_MATRIX
back into model space (ie, same space as the MODEL_MATRIX) and then using it as if it were the MODEL_MATRIX.
With this in place we now properly handle VERTEX transformations that
a Material Shader might do, such as billboard-ing.
2023-03-29 10:37:30 -03:00
0511da260f
Merge pull request #74019 from BastiaanOlij/split_last_effects
...
Move roughness limiter and sort into their own classes
2023-03-10 14:02:14 +01:00
a8ec72cf94
Move roughness limiter and sort into their own classes
2023-03-09 21:58:55 +11:00
59c31004f8
fix spotlight shadows in volumetric fog
2023-02-25 16:28:06 +05:00
db9dfb7233
Increase SSAO and SSIL bias to account for variance in mipmap generation
2023-02-21 10:25:33 -08:00