Rémi Verschelde
c77348b468
Merge pull request #58419 from clayjohn/Vulkan-anisotropy-crash
2022-02-22 09:09:16 +01:00
clayjohn
2da35d2b94
Fix shader compilation error with anisotropy
2022-02-21 22:58:33 -08:00
clayjohn
9d104ad839
Use properly use non-perceptual roughness when filtering radiance
2022-02-21 22:53:12 -08:00
Rémi Verschelde
7a68ee5134
Merge pull request #58266 from clayjohn/revert-sky-change
2022-02-18 12:07:40 +01:00
Rémi Verschelde
488116e4d8
Merge pull request #58236 from bruvzg/win_min_fix
2022-02-18 09:07:10 +01:00
clayjohn
e0384fb70e
Revert "Fix default sky process mode not being Real-Time"
...
This reverts commit aa1cba1d53
.
2022-02-17 23:13:10 -08:00
Rémi Verschelde
e1b8a86b2b
Merge pull request #58177 from clayjohn/VULKAN-prefiltered-radiance
2022-02-17 17:53:42 +01:00
bruvzg
0c27667124
[Windows] Fix Vulkan driver crash on sub-window minimization.
2022-02-17 13:34:08 +02:00
clayjohn
48728a79b6
Use prefiltered radiance
2022-02-16 21:37:18 -08:00
Rémi Verschelde
b8b4580448
Style: Cleanup single-line blocks, semicolons, dead code
...
Remove currently unused implementation of TextureBasisU, could be re-added
later on if needed and ported.
2022-02-16 14:06:29 +01:00
clayjohn
a38c3a763a
Properly exclude lights that are marked as sky only
2022-02-16 00:16:56 -08:00
Hugo Locurcio
aa1cba1d53
Fix default sky process mode not being Real-Time
...
The change in 09563e4bd8
wasn't
consistently carried out everywhere needed.
2022-02-16 01:51:48 +01:00
reduz
4f73d3beb4
Add Particle Shader Userdata
...
* Adds optional vec4 USERDATA1 .. USERDATA6 to particles, allowing to store custom data.
* This data is allocated on demand, so shaders that do not use it do not cost more.
2022-02-15 19:20:31 +01:00
Rémi Verschelde
5a6da0b2a9
Merge pull request #57905 from V-Sekai/fix_instance_clear_warnings
...
Free surface vertex_buffers after vertex_arrays to silence warnings
2022-02-15 08:32:32 +01:00
Rémi Verschelde
af91a42b0a
Merge pull request #57904 from V-Sekai/fix_double_free_warning
...
Fixes some 'Attempted to free invalid ID' warnings in mobile renderer
2022-02-15 08:30:44 +01:00
Rémi Verschelde
d1dbe21c56
Merge pull request #57980 from akien-mga/vulkan-1.3.204
2022-02-12 10:21:27 +01:00
Hendrik Brucker
b396fd4eef
Improve compilation speed (forward declarations/includes cleanup)
2022-02-12 02:46:22 +01:00
Rémi Verschelde
18d6b75ba8
RendererRD: Remove binding specifier for push constants
...
This is unsupported and glslang made it raise an error in 11.7.0:
https://github.com/KhronosGroup/glslang/pull/2810
Co-authored-by: Clay John <claynjohn@gmail.com>
2022-02-11 18:42:32 +01:00
Rémi Verschelde
2921cf6a99
Merge pull request #57888 from dusakus/depanoramize-spot-projector
...
remove normal_to_panorama from spotlight projector
2022-02-11 10:41:00 +01:00
Hugo Locurcio
66d27df12f
Fix 3D sky update performance regression
2022-02-10 20:21:28 +01:00
Rémi Verschelde
e4e6813baf
Merge pull request #57535 from Calinou/visibility-range-fade-use-easing
2022-02-10 18:18:53 +01:00
Rémi Verschelde
11cefc2b28
Merge pull request #57104 from clayjohn/VULKAN-sky-conflict
2022-02-10 17:46:42 +01:00
Rémi Verschelde
7332aff3fd
Merge pull request #54677 from Calinou/voxelgi-default-low-quality
2022-02-10 17:35:52 +01:00
Rémi Verschelde
c6199da8b8
Merge pull request #39965 from Calinou/tweak-sdfgi-defaults
2022-02-10 17:31:54 +01:00
Rémi Verschelde
2fafcfebdf
Merge pull request #57707 from Calinou/sdfgi-tweak-default-num-cascades
2022-02-10 17:27:42 +01:00
Rémi Verschelde
67c6442844
Merge pull request #57628 from Calinou/shadow-atlas-default-enable-16-bits
2022-02-10 17:19:37 +01:00
SaracenOne
824ece9d89
Free surface vertex_buffers after vertex_arrays due dependencies
2022-02-10 10:34:34 +00:00
SaracenOne
71eb3f6df5
Fix _free_render_buffer_data freeing shared half_texture and half_fb
2022-02-10 10:04:18 +00:00
Bartłomiej Dusak
38423565e4
remove normal_to_panorama from spotlight projector
2022-02-09 23:47:44 +01:00
ZuBsPaCe
2e2c9a27b6
Fixed shader error message for instance qualifier
...
Moved argument from RTR to vformat. Message is now similar to uniform-arrays-error further down.
2022-02-09 21:32:09 +01:00
Rémi Verschelde
a6abeb6b20
Merge pull request #57682 from clayjohn/VULKAN-canvas-blur
2022-02-07 10:16:50 +01:00
Rémi Verschelde
3ae38edc8e
Merge pull request #56844 from Calinou/ssr-fix-background-line-master
...
Fix visible background line in intersections in screen-space reflections
2022-02-06 23:22:15 +01:00
Hugo Locurcio
7721e19ccc
Tweak default SDFGI settings for better quality
...
- Enable Read Sky Light to get proper outdoors lighting out of the box.
- Set bounce feedback to 0.5 by default to get a better quality result.
- Higher values may cause infinite feedback with bright surfaces.
- Increase the number of frames to converge to improve quality
at the cost of latency. Most scenes are fairly static after all.
- Use 75% Y scale by default as most scenes are not highly vertical.
- Reorder the Y scale enum to go from the lowest Y scale to the highest.
Also rename the "Disabled" setting to "100%" for clarity.
2022-02-06 15:28:59 +01:00
Hugo Locurcio
b9cfc74f29
Decrease the default number of SDFGI cascades to 4
...
This improves rendering performance noticeably, especially when the
camera moves fast.
On a medium-sized test scene on a GTX 1080 in 2560×1440, going
from 6 to cascades saves 0.5 ms of frame time while looking visually
identical (as most of the scene fits within the 4 cascades).
2022-02-06 15:01:25 +01:00
Yuri Roubinsky
a2484c3293
Fix unknown identifier error in for loop
2022-02-06 08:38:33 +03:00
clayjohn
60d8df3fee
Optimize and fix backbuffer gaussian blur
2022-02-05 15:03:39 -08:00
reduz
74adf0bf2e
Remove RID_Owner.get_rid_by_index
...
* Implementing this function efficiently is not really possible.
* Replaced by an option to get all RIDs into a buffer for performance.
2022-02-05 11:59:34 +01:00
Rémi Verschelde
eb371dee01
Merge pull request #57651 from theoniko/theoniko-effects_rc.cpp
...
Fix copy paste bug in renderer_rd/effects_rd.cpp
2022-02-05 10:15:38 +01:00
Yuri Roubinsky
e01d08159c
Few more fixes to for loop in shaders
2022-02-05 08:42:32 +03:00
theoniko
0c0ff5da50
Fix copy paste bug in renderer_rd/effects_rd.cpp
2022-02-05 06:41:30 +01:00
Hugo Locurcio
e4eafb254a
Enable 16-bit shadow atlas by default in the RenderingServer methods
...
16-bit shadow atlases are already the default in the project settings,
but low-level methods used 24-bit shadows by default.
This makes low-level methods more consistent with the default project
settings to avoid accidental performance issues when users change
the shadow size at run-time.
2022-02-04 16:41:08 +01:00
bruvzg
244db37508
Cleanup and move char functions to the `char_utils.h` header.
2022-02-04 11:35:01 +02:00
Rémi Verschelde
f8f19b313d
Merge pull request #57562 from AnilBK/string-add-contains
...
String: Add contains().
2022-02-03 22:21:24 +01:00
Anilforextra
adbe948bda
String: Add contains().
2022-02-04 01:28:02 +05:45
Yuri Roubinsky
58696fd774
Allow multiple declarations in for loop in a shader
2022-02-03 11:35:38 +03:00
Hugo Locurcio
20464fd103
Make visibility range alpha fade smoother
...
`smoothstep()` avoids the sudden transparency jump when entering or
leaving an object's alpha fade margin distance. This in turn helps
make opacity transitions less noticeable to the player, as it's
less likely to catch the player's eye.
2022-02-01 23:54:44 +01:00
Anilforextra
fc27636999
Vectors: Use clear() and has().
...
Use clear() instead of resize(0).
Use has() instead of "find(p_val) != -1".
2022-02-02 00:11:09 +05:45
orosmatthew
b0202c3a7d
Fix orthogonal camera auto LOD calculation
...
- Do not take orthogonal camera's distance into account when calculating LOD.
- Only take into account screen size taken up.
2022-01-30 11:54:27 -05:00
Nathan Franke
8a0a3accee
simplify formatting scripts, add a clang-tidy script, and run clang-tidy
2022-01-29 04:41:03 -06:00
Rémi Verschelde
58324f4df8
Merge pull request #54574 from Ansraer/glow_map
2022-01-26 13:39:51 +01:00
Bastiaan Olij
98e5cd24db
Improve XRInterface hooks into rendering
2022-01-26 13:55:44 +11:00
Rémi Verschelde
d9fd16c8e4
Merge pull request #53954 from Chaosus/fix_quit_errors
2022-01-25 20:09:52 +01:00
Yuri Roubinsky
b01065b9a4
Prevent checking of global uniform type outside the editor
2022-01-25 19:22:37 +03:00
jfons
238862bddb
Minor fixes to shadow atlases:
...
* Erase shadow owner *before* setting it to RID().
* Add default texture in shadow atlas debug view to avoid error spam when no atlas is present.
* Fix typo.
2022-01-24 15:55:32 +01:00
Yuri Roubinsky
0e66587dbf
Remove incorrect items from completion of main functions in shader
2022-01-24 10:37:47 +03:00
clayjohn
430d5d64aa
Update Sky lights in sky setup function
2022-01-23 15:06:49 -08:00
Yuri Roubinsky
3ca57e5157
Fix incorrect unused local var warning in shader blocks
2022-01-23 20:22:31 +03:00
Rémi Verschelde
9b9440165b
Merge pull request #54890 from briansemrau/threadsafe-drawpute-lists
...
Make draw/compute lists threadsafe
2022-01-22 20:20:07 +01:00
clayjohn
fdc1b1b03b
Remove TRANSFORM built in from fog shaders
2022-01-21 23:03:41 -08:00
Rémi Verschelde
7e3b92f81f
Merge pull request #55360 from Calinou/rename-bake-mode-properties
2022-01-20 17:35:32 +01:00
Rémi Verschelde
dbd560cb68
Merge pull request #53857 from briansemrau/rd-free-rid-bind-rename
2022-01-20 17:24:34 +01:00
Ansraer
90652b1755
add support for glow maps
2022-01-20 16:47:25 +01:00
lawnjelly
b411a731fe
Add nodiscard to core math classes to catch c++ errors.
...
A common source of errors is to call functions (such as round()) expecting them to work in place, but them actually being designed only to return the processed value. Not using the return value in this case in indicative of a bug, and can be flagged as a warning by using the [[nodiscard]] attribute.
2022-01-20 13:07:49 +00:00
Rémi Verschelde
cba2fd2e80
Revert "Add new scaling modes for splash screen"
...
This reverts commit fcc9f5ce39
.
The feature is good but the implementation still needs more work.
A new PR will be made with a rework of this commit.
2022-01-19 16:09:52 +01:00
Yuri Roubinsky
e0304f83e7
Add translation links to shader errors
2022-01-19 15:16:32 +03:00
Rémi Verschelde
8b8e858778
Merge pull request #54489 from briansemrau/texture-delete-update
2022-01-19 10:10:54 +01:00
Samuel Pedrajas
fcc9f5ce39
Add new scaling modes for splash screen
...
Removes the `fullsize` option which is superseded by `stretch_mode`.
Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2022-01-18 23:29:11 +01:00
Rémi Verschelde
01eefa2c50
Merge pull request #56761 from Calinou/sdfgi-allow-any-number-of-cascades
2022-01-18 16:21:39 +01:00
Yuri Roubinsky
366d3930ac
Merge pull request #56893 from Chaosus/shader_unify_vardecl
2022-01-18 14:13:56 +03:00
Yuri Roubinsky
36a82c8c69
Unify variable and array declarations in shaders
2022-01-18 12:42:39 +03:00
clayjohn
ba431a9306
Fix volumetric fog memory leak on resize
2022-01-17 21:30:48 -08:00
Hugo Locurcio
2dc7b03a82
Allow using between 1 and 8 cascades for SDFGI
...
This provides more flexibility between performance and quality
adjustments, especially when using SDFGI for small-scale levels
(which can be useful for procedurally generated scenes).
2022-01-17 16:49:02 +01:00
Haoyu Qiu
7870cf24f2
Fix invalid read when using LightOccluder2D
2022-01-17 16:02:26 +08:00
Hugo Locurcio
d6c7d4ab5d
Fix visible background line in intersections in screen-space reflections
...
Adjusting the step grading by one resolves the issue without affecting
performance or introducing adverse artifacts.
2022-01-16 18:08:07 +01:00
Rémi Verschelde
a27b85378b
Merge pull request #56309 from Calinou/remove-pvrtc-support
2022-01-16 11:15:34 +01:00
clayjohn
abd0003e4c
Remove mistakenly added push constant from SSR
2022-01-15 17:03:55 -08:00
Yuri Roubinsky
08208406ca
Refactor size expression parsing for arrays in the shaders
2022-01-15 15:47:39 +03:00
Hugo Locurcio
40be15920f
Remove support for PVRTC texture encoding and decoding
...
On the only platform where PVRTC is supported (iOS),
ETC2 generally supersedes PVRTC in every possible way. The increased
memory usage is not really a problem thanks to modern iOS' devices
processing power being higher than its Android counterparts.
2022-01-14 21:08:22 +01:00
Yuri Roubinsky
0845b25497
Fix shader crashing when declaring matrix or array varyings
2022-01-14 10:37:39 +03:00
luz paz
858bcd5058
Fix various typos
...
Found via `codespell -q 3 -S ./thirdparty,*.po,./DONORS.md -L ackward,ang,ans,ba,beng,cas,childs,childrens,dof,doubleclick,expct,fave,findn,gird,hist,inh,inout,leapyear,lod,nd,numer,ois,ony,paket,ro,seeked,sinc,switchs,te,uint,varn,vew`
2022-01-13 23:20:01 -05:00
Yuri Roubinsky
4201af6649
Fix completion for global constants in shaders
2022-01-13 19:52:06 +03:00
Yuri Roubinsky
c377891145
Add completion for shader_type
2022-01-13 18:37:13 +03:00
Yuri Roubinsky
b0356bcb72
Prevent redefinition of main functions in shader
2022-01-13 15:12:35 +03:00
clayjohn
9b1f242feb
Fix cannot use gaussian blur error
2022-01-12 21:58:37 -08:00
Rémi Verschelde
586a973b6b
Merge pull request #56169 from dkaste/fix-clip-rects
...
Fix canvas items being drawn outside clip rects
2022-01-12 23:59:42 +01:00
Rémi Verschelde
585231a172
Merge pull request #56492 from akien-mga/remove-author-docstrings
2022-01-12 15:24:17 +01:00
Yuri Roubinsky
422f7b280f
Optimize include files to improve `shader_language.h` compilation speed
2022-01-12 14:19:12 +03:00
Rémi Verschelde
bfd0afca58
Merge pull request #55656 from clayjohn/GLSL3-compiler
2022-01-12 11:33:48 +01:00
Rémi Verschelde
189662e5bd
Merge pull request #56696 from AnilBK/use-init-lists
2022-01-12 10:04:45 +01:00
clayjohn
99064d57db
New OpenGL batching canvas renderer
2022-01-11 22:26:18 -08:00
Anilforextra
6c3a0460a8
Use List Initializations for Vectors.
2022-01-12 10:15:12 +05:45
Rémi Verschelde
267bee934a
Merge pull request #56416 from BastiaanOlij/fix_xr_viewport_size_overrule
...
Fix XR viewport size overrule and incorrect usage of internal size
2022-01-11 08:44:36 +01:00
Rémi Verschelde
04fa320650
Merge pull request #56627 from Chaosus/shader_better_limit_warning
2022-01-10 14:06:54 +01:00
Darren Kaste
b0d9e14155
Fix canvas items being drawn outside clip rects
2022-01-09 18:15:46 -05:00
Yuri Roubinsky
bd61d8f80c
Enhances a shader uniform limit warning
2022-01-08 21:44:37 +03:00
Anilforextra
c9f5d88f3a
Use fill() to fill an entire image instead of setting pixels individually.
2022-01-08 17:43:15 +05:45
SaracenOne
cd842b65bf
Fix queueing a texture and regular uniform update in RD backend in succession.
2022-01-06 16:05:07 +00:00
Fernando Cosentino
ca79373d13
Added material_overlay property to MeshInstance3D
...
Applying overlay materials into multi-surface meshes currently
requires adding a next pass material to all the surfaces, which
might be cumbersome when the material is to be applied to a range
of different geometries. This also makes it not trivial to use
AnimationPlayer to control the material in case of visual effects.
The material_override property is not an option as it works
replacing the active material for the surfaces, not adding a new pass.
This commit adds the material_overlay property to GeometryInstance3D
(and therefore MeshInstance3D), having the same reach as
material_override (that is, all surfaces) but adding a new material
pass on top of the active materials, instead of replacing them.
2022-01-05 11:47:51 +01:00
JFonS
7c5c351766
Merge pull request #56220 from williamd67/GPULightmapper-implement-sky-ambient-light
...
GPULightmapper: react on sky ambient properties
2022-01-05 10:55:05 +01:00
Rémi Verschelde
e976cd0b29
Merge pull request #56208 from williamd67/GPULightmapper-sky-upside-down
2022-01-05 10:51:19 +01:00