Hendrik Brucker
4bd01a93dc
Fix some SpotLight3D issues (clustering artifacts, light leak)
2023-01-24 01:08:32 +01:00
clayjohn
faea9f5c10
Remove SCREEN_TEXTURE, DEPTH_TEXTURE, and NORMAL_ROUGHNESS_TEXTURE
...
in favour of texture hints
2023-01-18 19:52:47 -08:00
jainl28patel
390f83bf5a
fix normal map not flipping in sprite2D
2023-01-14 11:51:56 +05:30
Rémi Verschelde
0abd60b953
Merge pull request #71130 from clayjohn/RD-normal-roughness
...
Fix multiple issues that make the normal roughness texture unusable
2023-01-12 01:01:24 +01:00
clayjohn
89766848de
Fix multiple issues that make the normal roughness texture unusable
2023-01-09 11:56:36 -08:00
Bastiaan Olij
9b549231e4
Move luminance effect into its own class and use new buffers system
2023-01-07 14:40:42 +11:00
Rémi Verschelde
d95794ec8a
One Copyright Update to rule them all
...
As many open source projects have started doing it, we're removing the
current year from the copyright notice, so that we don't need to bump
it every year.
It seems like only the first year of publication is technically
relevant for copyright notices, and even that seems to be something
that many companies stopped listing altogether (in a version controlled
codebase, the commits are a much better source of date of publication
than a hardcoded copyright statement).
We also now list Godot Engine contributors first as we're collectively
the current maintainers of the project, and we clarify that the
"exclusive" copyright of the co-founders covers the timespan before
opensourcing (their further contributions are included as part of Godot
Engine contributors).
Also fixed "cf." Frenchism - it's meant as "refer to / see".
2023-01-05 13:25:55 +01:00
clayjohn
aaa9d626f3
Use proper indices for lights, decals, and reflection probes in mobile scene shader
2023-01-04 14:03:48 -08:00
Rémi Verschelde
f064898956
Merge pull request #70253 from BastiaanOlij/cleanup_sky_render
...
Cleanup and improve sky render
2022-12-23 23:44:02 +01:00
Bastiaan Olij
e886a7af81
Cleanup and improve sky render
2022-12-23 19:45:19 +11:00
clayjohn
4d301ee21e
Check for disabled particle trail particle before initializing particle trail
2022-12-22 11:30:59 -07:00
clayjohn
eb10c71d6c
Disable particle trails particles when parent parent is not active.
2022-12-21 15:19:57 -07:00
Rémi Verschelde
2b2c372dbc
Merge pull request #70122 from clayjohn/VRS-r8uint
...
Don't attempt to create or use an R8_UINT texture as storage if VRS is not supported
2022-12-17 12:22:03 +01:00
clayjohn
5e90b90a97
Don't attempt to create or use an R8_UINT texture as storage if VRS is not supported
2022-12-16 09:53:12 -08:00
Rémi Verschelde
e1bcadd12d
Merge pull request #56804 from Calinou/ssr-add-max-roughness-cutoff
...
Add maximum roughness cutoff to SSR to improve performance
2022-12-15 09:20:29 +01:00
Rémi Verschelde
465d4c1d95
Merge pull request #70009 from clayjohn/glow-hq
...
Remove high quality glow as it is not any higher quality than regular glow
2022-12-13 23:32:15 +01:00
Rémi Verschelde
fc517e6c89
Merge pull request #70003 from clayjohn/GLES3-cc
...
Various fixes and documentation for CanvasGroup
2022-12-13 23:31:43 +01:00
clayjohn
bdd4001ef0
Various fixes and documentation for CanvasGroup
...
Properly apply custom materials with CanvasGroups in the GLES3 backend
Properly blur backbuffer when using a partial rect in forward_plus and
gl_compatibility renderers
Properly set fit_margin when clear_margin is set
Fix shader error during backbuffer clear in mobile renderer
2022-12-13 10:22:18 -08:00
clayjohn
5b5cd2b98b
Remove high quality glow as it is not any higher quality than regular glow
2022-12-13 10:15:45 -08:00
Rémi Verschelde
83281e7a42
Merge pull request #69985 from clayjohn/mobile-rim
...
Ensure that rim lighting uses an exponent base greater than zero
2022-12-13 10:12:00 +01:00
clayjohn
a062798b76
Ensure that rim lighting uses a exponent base greater than zero
...
This avoids the undefined behavior that happens if the base is zero and the exponent is zero
2022-12-12 13:41:28 -08:00
Hugo Locurcio
7745bd42a6
Add maximum roughness cutoff to SSR to improve performance
...
In a test scene with mixed rough and non-rough materials, this saves
upwards of 0.15 ms of GPU time with very little visual artifacting
(GTX 1080, 2560×1440).
2022-12-10 17:35:18 +01:00
clayjohn
e6f8c8517c
Fade out SSR with roughness so that it doesn't show at high roughness amounts
2022-12-09 12:59:51 -08:00
NumbuhFour
1b09fd5410
Implement CAMERA_VISIBLE_LAYERS as built-in shader variable
2022-12-03 22:41:27 -08:00
Rémi Verschelde
daf168f4c8
Merge pull request #69522 from clayjohn/IBL-black-metal
...
Allow black metallic materials to reflect IBL
2022-12-03 12:46:30 +01:00
clayjohn
1e05dd3504
Allow black metallic materials to reflect IBL
2022-12-02 19:54:59 -08:00
clayjohn
b2b89d7294
Properly remap roughness when reading from radiance map
...
This ensures that we consistently use perceptual roughness which matches the behaviour of most other PBR renderers like Blender, Ue4 and Godot 3
2022-12-02 15:39:20 -08:00
Rémi Verschelde
3a43d44656
Merge pull request #68830 from Ayush-singla27/issuebranch
...
fixed incorrect mesh normals in shaders
2022-11-20 11:35:52 +01:00
clayjohn
0e5a98cdd8
Fix drawing of 2D skeletons in the RD renderer.
...
Also clean up skeleton code in preparation for adding them to GLES3
Properly update Mesh2D AABBs when skeleton is updated
2022-11-18 23:36:40 -08:00
Ayush Singla
75ba0a7957
fixed incorrect mesh normals in shaders
2022-11-19 11:06:03 +05:30
Rémi Verschelde
58cb11b396
Merge pull request #68710 from BastiaanOlij/fix_vrs
...
Fix VRS issues
2022-11-18 16:19:22 +01:00
clayjohn
21ac6d7d8e
Finish implementing Canvas Background mode
2022-11-17 12:51:26 -08:00
Bastiaan Olij
616ba8745f
Fix VRS issues
2022-11-17 00:32:42 +11:00
Rémi Verschelde
245e6454a0
Merge pull request #68673 from clayjohn/RD-alpha-hash
...
Fix alpha hash by correcting typos and doing calculations in object space
2022-11-15 10:28:59 +01:00
Rémi Verschelde
1e9a61cd40
Merge pull request #68487 from clayjohn/RD-mobile-raster
...
Use raster versions of copy effects for 2D operations when using the mobile renderer
2022-11-15 10:27:43 +01:00
clayjohn
81d8b502cc
Fix alpha hash by correcting typos and doing calculations in object space
2022-11-14 17:57:49 -08:00
Rémi Verschelde
014fac8f28
Merge pull request #67746 from SonnyBonds/fix_cluster_shader_mvk
...
Fix cluster_render.glsl failing on some Macs
2022-11-11 21:05:20 +01:00
Rémi Verschelde
c41b9c5f5b
Merge pull request #67972 from and-rad/vector-field-consistency
...
Fix inconsistency between vector field texture and world space directions
2022-11-11 21:05:00 +01:00
clayjohn
8e41221404
Use raster versions of copy effects for 2D operations when using the mobile renderer
...
This PR implements a few basic copy operations in raster that weren't available before
2022-11-10 12:47:26 -08:00
Rémi Verschelde
d147adc591
Merge pull request #67915 from RevoluPowered/fix-intel-macbook-crash-subgroups
...
Ensure vulkan subgroups are disabled for MoltenVK
2022-10-31 10:53:30 +01:00
clayjohn
31c1a06ab5
Fix ss_effects_flags uniform in clustered forward renderer
...
This comes from an uncaught merge conflict resulting from the split of scene_data into
scene_data and implementation_data
2022-10-27 15:37:38 -07:00
Clay John
0d711cad30
Merge pull request #66107 from devloglogan/ambient-light-disabled-fix
...
Fix ambient_light_disabled render mode flag
2022-10-27 10:08:29 -07:00
Andreas Raddau
a5828cd0e3
Improved consistency between vector field texture and world space
2022-10-27 15:43:24 +02:00
Gordon MacPherson
381d457a2a
Ensure vulkan subgroups are disabled for MoltenVK
...
We found they don't work on intel macbooks properly at all.
Possible future solutions:
- update to moltenvk.
- update to spirv may resolve it.
2022-10-26 20:12:06 +01:00
Anders Stenberg
bbb1f900dd
Fix cluster_render.glsl failing on some Macs
...
Some Macs encounter an internal error when compiling cluster_render.glsl
caused by a likely bug in the MVK/Metal
compiler when using gl_HelperInvocation.
2022-10-22 12:27:13 +02:00
Markus Sauermann
b8031bb7d6
Code simplifications
...
1. Viewport::get_visible_rect().position is always zero.
So Control::get_window_rect is identical to Control::get_global_rect.
Remove Control::get_window_rect since it is not used in the source code.
2. sqrt(a * a) = abs(a) for doubles
3. Simplify affine_inverse combination
4. Simplify calculation in shaders
2022-10-18 12:47:40 +02:00
Rémi Verschelde
367a9b8056
Merge pull request #67335 from clayjohn/GLES3-2d-lights
...
Add 2D lights to OpenGL3 canvas renderer
2022-10-13 09:05:36 +02:00
clayjohn
e600fb93a5
Add 2D lights to OpenGL3 canvas renderer
...
This is an initial implementation using the same single-pass approach as the RenderingDevice.
2022-10-12 17:55:01 -07:00
Hugo Locurcio
6aebc7b66e
Fix volumetric fog not rendering at densities lower than or equal to 0.001
...
This allows volumetric fog to render with the lowest density that
can be specified in the inspector (0.0001).
2022-10-13 00:45:49 +02:00
Bastiaan Olij
d09ad714bf
Fixing artifacts in SSR
2022-10-04 23:47:13 +11:00