09b92a144d
Merge pull request #79921 from mandryskowski/ssr_transparency
...
Make Fresnel darken SSR instead of blending with specular
2023-10-11 22:37:02 +02:00
5b2e54c17b
Fresnel should darken the SSR reflections instead of blending them with specular light.
2023-10-11 18:58:22 +01:00
c228fe1a0d
Particle internal refactor and additions for more artistic control
...
Co-authored-by: Hugo Locurcio <hugo.locurcio@hugo.pro >
Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com >
Co-authored-by: Raul Santos <raulsntos@gmail.com >
Co-authored-by: Mew Pur Pur <85438892+MewPurPur@users.noreply.github.com >
Co-authored-by: Clay John <claynjohn@gmail.com >
2023-10-10 20:03:35 +02:00
af1d81d95a
Only perform modelview transform on tangent and binormal when vertex shader is in local space
2023-10-05 22:08:36 -06:00
950139e489
Merge pull request #82546 from viksl/volumetric-fog-spot-light-artifacts
...
Fix cluster artifacts and negative light
2023-10-05 22:50:12 +02:00
51ed3aef63
Vertex and attribute compression to reduce the size of the vertex format.
...
This allows Godot to automatically compress meshes to save a lot of bandwidth.
In general, this requires no interaction from the user and should result in
no noticable quality loss.
This scheme is not backwards compatible, so we have provided an upgrade
mechanism, and a mesh versioning mechanism.
Existing meshes can still be used as a result, but users can get a
performance boost by reimporting assets.
2023-10-05 12:02:23 -06:00
dd3d380a01
Improve Split Blending
...
Improve Split Blending Logic
2023-10-02 13:22:51 +02:00
8a2d345a85
Fixes spotlight's cluster artifacts and negative light.
2023-10-01 09:13:30 +02:00
de42258154
Optimizing glow behaviour
2023-09-26 11:56:28 +02:00
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