clayjohn
e0f736ec10
Properly linearize depth buffer for SSAO when using orthogonal camera
2024-07-09 15:29:45 -07:00
Hugo Locurcio
cf2d2e2dd8
Silence Vulkan "Unable to acquire framebuffer." swapchain error
...
This error is harmless and can be safely ignored.
2024-07-09 17:12:54 +02:00
Rémi Verschelde
40cb283dd7
Merge pull request #93866 from Chaosus/shader_fix_global_func_set
...
Improve code for setup of `global_func_set` in `ShaderLanguage`
2024-07-09 16:47:13 +02:00
Rémi Verschelde
6f9c0aa40d
Merge pull request #93630 from BastiaanOlij/scene_data_projection_correction
...
Make RenderSceneData take projection correction into account
2024-07-09 00:03:14 +02:00
Pedro J. Estébanez
00e89229bf
RenderingDevice: Leave handling of compressed block granularity to the driver
2024-07-08 11:58:51 +02:00
bruvzg
4790e12f66
Fix LCD font AA modulation in RendererRD.
2024-07-08 11:17:31 +03:00
Ricardo Buring
2f8ab4a654
Fixed Timestep Interpolation (3D)
...
Adds 3D fixed timestep interpolation to the rendering server.
This does not yet include support for multimeshes or particles.
Co-authored-by: lawnjelly <lawnjelly@gmail.com>
2024-07-07 22:15:23 +02:00
Rémi Verschelde
7197678df2
Merge pull request #91551 from m4rr5/configure_timestamp_query_elements
...
Add a project setting to configure the maximum number of timestamps.
2024-07-07 12:38:19 +02:00
Bastiaan Olij
e42870b4d1
Pre transparent compositor effects needs to run later
2024-07-05 12:37:26 +10:00
Yuri Rubinsky
4f657f5c6d
Improve code for setup of global_func_set
in ShaderLanguage
2024-07-02 18:16:04 +03:00
Yuri Rubinsky
dc78ef1722
Fix orphan StringName's in ShaderLanguage
2024-07-02 09:27:40 +03:00
Yuri Rubinsky
4bf9f3eb58
Prevent shader crash when doing invalid operation on boolean vector
2024-06-30 22:24:25 +03:00
Mark DiBarry
6b17d51425
Add alternative pixel rounding
2024-06-29 10:33:39 -04:00
Pedro J. Estébanez
32d9c93af3
Improve handling of rendering startup errors
2024-06-28 19:31:50 +02:00
Rémi Verschelde
a365cf59c8
Merge pull request #93635 from Chaosus/shader_fix_vec4_uniform
...
Use `PackedVector4Array` instead of float array for vec4 array uniform
2024-06-28 14:42:57 +02:00
Yuri Rubinsky
72c7e51905
Use PackedVector4Array
instead of float array for vec4 array uniform
2024-06-28 13:34:43 +03:00
clayjohn
27b040dc61
Remove warning when project setting requests a larger global shader uniform buffer than the hardware supports.
...
Instead provide a better error message when the limit is exceeded and avoid crash with a small limit.
2024-06-28 10:38:18 +02:00
ze2j
37479cfad5
Remove useless instantiation in RDShaderFile::parse_versions_from_text
2024-06-27 08:57:06 +02:00
Bastiaan Olij
6ed6212949
Make RenderSceneData take projection correction into account
2024-06-27 10:44:30 +10:00
Rémi Verschelde
ba3bb44194
Merge pull request #93617 from jsjtxietian/protect-enum
...
Add safety check when setting several rendering effect quality
2024-06-26 14:51:25 +02:00
jsjtxietian
a313fa13fd
Add safety check when setting several rendering effect quality
2024-06-26 17:06:21 +08:00
ueshita
e1d6ab4c80
Fix userdata not copied when trails started
2024-06-25 23:33:26 +09:00
Rémi Verschelde
2e8ebb4a5e
Merge pull request #93469 from Chaosus/shader_fix_crash
...
Fix crash on shader constant initialization on MinGW compiler
2024-06-25 10:01:46 +02:00
Yuri Rubinsky
d5b393a268
Fix crash on shader constant initialization on MinGW compiler
2024-06-22 16:36:54 +03:00
Yuri Rubinsky
ae95531e64
Forbid calling of derivative functions in incorrect functions
2024-06-21 20:47:21 +03:00
Rémi Verschelde
a57c7208eb
Merge pull request #93376 from stuartcarnie/sgc/canvasrd_dead_code
...
Remove unused flag and code from canvas renderer
2024-06-20 16:18:53 +02:00
Stuart Carnie
98e9578d66
Remove unused flag and code
...
Related #48894
2024-06-20 13:50:20 +10:00
ChristopheClaustre
c46bb775e9
Disable camera_effects on some debug draw mode
2024-06-19 16:45:58 +02:00
Rémi Verschelde
76a8fa6fed
Merge pull request #93292 from rune-scape/singleton-cleanup
...
Fix missing cleanup and null checks for various singletons
2024-06-18 14:09:01 +02:00
rune-scape
6adcb1373a
fix missing cleanup and null checks for various singletons
2024-06-18 01:05:30 -07:00
Yuri Rubinsky
3d2b70c1ec
Prevent changing some built-ins in spatial shaders
2024-06-17 19:18:14 +03:00
markdibarry
95813793b4
Add repeats in ysort child collection
2024-06-15 10:53:32 -04:00
Rémi Verschelde
756102828e
Merge pull request #93055 from clayjohn/MV-debug
...
Ensure Motion Vectors are enabled by particles and skeletons when using the Motion Vector debug draw option
2024-06-12 18:17:03 +02:00
Rémi Verschelde
7571f82bea
Merge pull request #92763 from markdibarry/parallax2d_cull_fix
...
Fix incorrect cull boundary for scaled and repeated Parallax2D children
2024-06-12 11:01:05 +02:00
Bastiaan Olij
1690ede988
Track compositor effects that use motion vectors so we enable required logic
2024-06-12 12:37:18 +10:00
clayjohn
fa3e00e2c4
Ensure Motion Vectors are enabled by particles and skeletons when using the Motion Vector debug draw option
2024-06-11 12:46:56 -07:00
markdibarry
f0983f1b1c
Add cull fix for scale repeat
2024-06-04 11:52:34 -04:00
Rémi Verschelde
705b7a0b0b
Merge pull request #92587 from RandomShaper/validate_tex_usage
...
RenderingDevice: Reject creation of textures with no usage
2024-05-31 14:16:55 +02:00
Rémi Verschelde
8b044da396
Merge pull request #92474 from Rudolph-B/fix-collided-particles-jittering
...
Fix collided 3D GPU particles sometimes jittering
2024-05-31 14:16:46 +02:00
Rémi Verschelde
138f334316
Merge pull request #92444 from clayjohn/RD-srgb-uniform-buffer
...
Separate linear and sRGB uniform buffers in RD rendering backends
2024-05-31 14:16:43 +02:00
Rémi Verschelde
f2796fa06d
Merge pull request #91769 from DarioSamo/d3d12_enhanced_barriers
...
Add support for enhanced barriers in D3D12.
2024-05-31 14:15:49 +02:00
Pedro J. Estébanez
3e5865660b
RenderingDevice: Reject creation of textures with no usage
2024-05-31 12:00:58 +02:00
Yuri Rubinsky
aecc4cbc47
Prevent using built-ins for func names in shaders
2024-05-30 21:33:21 +03:00
Rémi Verschelde
1e6b11dcd4
Merge pull request #92287 from clayjohn/LOD-safe-fixes
...
Fix LOD selection in compatibility backend and clean up LOD code
2024-05-28 18:06:45 +02:00
Rudolph Bester
f666c76a9c
Fixed collided 3D GPU particles sometimes jittering
2024-05-28 14:09:08 +02:00
Yuri Rubinsky
246a760323
Fix completion of functions with struct param/return type in shaders
2024-05-28 12:13:25 +03:00
clayjohn
c6b08d462a
Separate linear and sRGB uniform buffers in RD rendering backends
2024-05-27 13:38:49 -07:00
Rémi Verschelde
abfe8ba7d6
Merge pull request #92258 from DarioSamo/render_list_pass_alloc
...
Reduce allocations each time a render pass begins in RenderingDevice.
2024-05-23 23:25:51 +02:00
Rémi Verschelde
68c8e2eaf3
Merge pull request #92244 from jsjtxietian/blend-shape-shadow
...
Fix mesh instance not updated when changing blend shape values
2024-05-23 23:25:48 +02:00
clayjohn
267ea14616
Fix LOD selection in compatibility backend and clean up LOD code
2024-05-23 11:30:22 -07:00
Dario
ce4f19a034
Switch vectors in each render pass to use TLS.
2024-05-23 10:52:29 -03:00
bruvzg
628c81d2d9
[DisplayServer] Add method to check if window transparency is supported and enabled.
2024-05-23 15:23:18 +03:00
jsjtxietian
97af135f1b
Fix mesh instance not updated when changing blend shape values
2024-05-23 12:36:31 +08:00
Rémi Verschelde
8e2141eac5
Merge pull request #92232 from clayjohn/RD-mobile-LOD
...
Only apply LOD when camera is outside the AABB of mesh in mobile renderer.
2024-05-22 09:27:03 +02:00
clayjohn
c5346a62b0
Only apply LOD when camera is outside the AABB of mesh in mobile renderer.
...
This copies the existing logic from the Forward+ renderer
2024-05-21 18:32:04 -07:00
Rémi Verschelde
008fd5fee6
Merge pull request #92078 from lawnjelly/increase_tight_cull_epsilon
...
Tight shadow culling - increase epsilon to prevent flickering
2024-05-21 11:22:47 +02:00
Dario
adabd14d08
Add support for enhanced barriers in D3D12.
...
Enables support for enhanced barriers if available.
Gets rid of the implementation of [CROSS_FAMILY_FALLBACK] in the D3D12 driver. The logic has been reimplemented at a higher level in RenderingDevice itself.
This fallback is only used if the RenderingDeviceDriver reports the API traits and the capability of sharing texture formats correctly. Aliases created in this way can only be used for sampling: never for writing. In most cases, the formats that do not support sharing do not support unordered access/storage writes in the first place.
2024-05-20 13:04:44 -03:00
Rémi Verschelde
6aece8e1b6
Merge pull request #92045 from RandomShaper/context_getter
...
Add context getter to RenderingDevice
2024-05-18 17:41:38 +02:00
lawnjelly
512b0f16a3
Tight shadow culling - increase epsilon to prevent flickering
...
Near colinear triangles were still causing inaccuracy in culling planes, so the threshold for colinearity is bumped up.
2024-05-18 14:14:27 +01:00
Rémi Verschelde
d3e261523f
Merge pull request #88289 from DarioSamo/rd_minimized_window
...
Fix swap chain errors when application starts minimized.
2024-05-17 11:13:31 +02:00
Pedro J. Estébanez
ffa791c41f
Add context getter to RenderingDevice
2024-05-17 09:56:03 +02:00
Rémi Verschelde
5708a3a02e
Merge pull request #92000 from clayjohn/vram-debugger
...
Increase coverage of VRAM debugger and add support to RD backends
2024-05-16 09:32:11 +02:00
clayjohn
c84616c2d2
Increase coverage of VRAM debugger and add support to RD backends
2024-05-15 16:30:19 -07:00
Dario
61cd007cf4
Rewrite implementation for prepare for use commands to be skipped when not required by the API.
2024-05-15 14:34:52 -03:00
Rémi Verschelde
c9fdcde20f
Merge pull request #91642 from BastiaanOlij/fix_transparent_sky
...
Skip rendering sky if viewport is set to transparent background
2024-05-14 12:06:44 +02:00
Rémi Verschelde
db3c4a4612
Merge pull request #91514 from DarioSamo/adreno_workaround
...
Add optional driver workaround to RenderingDevice for Adreno 6XX.
2024-05-14 12:06:37 +02:00
Dario
d5789e09eb
Add optional driver workaround to RenderingDevice for Adreno 6XX.
...
Co-authored-by: Clay John <claynjohn@gmail.com>
2024-05-13 10:20:31 -03:00
Yaohua Xiong
ed3d311687
Add antialias support for CanvasItem draw primitives
...
including
- rect, circle; both filled and unfilled.
- polyline, multiline
2024-05-13 19:03:31 +08:00
Rémi Verschelde
c322a9b7ee
Merge pull request #91808 from DarioSamo/debug_mv_msaa
...
Do not use MSAA versions of textures on debug views.
2024-05-13 12:05:46 +02:00
Bastiaan Olij
6efaaecde2
Skip rendering sky if viewport is set to transparent background
2024-05-13 11:04:06 +10:00
Dario
a3ecc86f47
Do not use MSAA versions of textures on debug views.
2024-05-10 14:01:58 -03:00
Dario
3f64eeb393
Rewrite reprojection for FSR2 to work correctly with Reverse-Z.
2024-05-10 11:57:27 -03:00
lawnjelly
a76243a549
Tighter light culling - fix directional lights colinear case
...
Exactly the same fix as done already for non-directional lights.
2024-05-10 09:13:05 +01:00
Pedro J. Estébanez
1589433e8f
Apply additional fixes to servers' threading
2024-05-08 17:41:40 +02:00
A Thousand Ships
a0dbdcc3ab
Replace find
with contains/has
where applicable
...
* Replaces `find(...) != -1` with `contains` for `String`
* Replaces `find(...) == -1` with `!contains` for `String`
* Replaces `find(...) != -1` with `has` for containers
* Replaces `find(...) == -1` with `!has` for containers
2024-05-08 12:37:42 +02:00
Rémi Verschelde
7d03b1de0b
Style: Trim trailing whitespace and ensure newline at EOF
...
Found by apply the file_format checks again via #91597 .
2024-05-08 10:12:46 +02:00
Rémi Verschelde
259d576f6e
Merge pull request #91480 from clayjohn/Mobile-mipmaps-bug
...
Use a full screen triangle for mipmap calculations in mobile renderer
2024-05-07 14:25:42 +02:00
Rémi Verschelde
4b070e8031
Fix various typos with codespell
...
Using 2.2.7.dev217+g10c2abcf.
Had to add `colour` to the ignore list as we used it as an alias/keyword for the
documentation of color-related APIs.
Also ignore recommendations to change `thirdparty` to either `third-party` or
`third party`, which are correct but we use the former fairly consistently.
2024-05-07 10:08:42 +02:00
Rémi Verschelde
e63252b421
Merge pull request #90705 from AThousandShips/foreach_list
...
Reduce and prevent unnecessary random-access to `List`
2024-05-07 09:04:44 +02:00
Marcel Offermans
2bb34a4489
Added a project setting to configure the maximum amount of timestamps, with a description and a reference to the setting when the limit is hit and an ERR_FAIL_COND is hit.
2024-05-05 09:09:04 +02:00
Rob Blanckaert
64c04d95aa
Fix shader error on mobile when using LIGHT_VERTEX
2024-05-04 11:02:05 -07:00
A Thousand Ships
955d5affa8
Reduce and prevent unnecessary random-access to List
...
Random-access access to `List` when iterating is `O(n^2)` (`O(n)` when
accessing a single element)
* Removed subscript operator, in favor of a more explicit `get`
* Added conversion from `Iterator` to `ConstIterator`
* Remade existing operations into other solutions when applicable
2024-05-04 16:08:55 +02:00
Rémi Verschelde
7ebc866418
Merge pull request #91545 from clayjohn/RD-shadow-atlas
...
Properly set size of shadow atlas quadrant when subdivision is 8 or higher.
2024-05-04 11:52:45 +02:00
Rémi Verschelde
f236b9badc
Merge pull request #91530 from DarioSamo/timestamp_validation
...
Add draw and dispatch count to timestamp validation.
2024-05-04 11:52:41 +02:00
Rémi Verschelde
a2fc5e2d78
Merge pull request #89894 from BastiaanOlij/improve_foveated_rendering
...
Improvements to VRS/Foveated rendering
2024-05-04 11:52:15 +02:00
clayjohn
caeef3473b
Properly set size of shadow atlas quadrant when subdivision is 8 or higher.
...
Also fix renderpass rect validation
2024-05-03 17:11:05 -07:00
Dario
c41e407e61
Add draw and dispatch count to timestamp validation.
2024-05-03 14:23:38 -03:00
Rémi Verschelde
03e6fbb010
Merge pull request #85474 from fire/packedvector4array
...
Add `PackedVector4Array` Variant type
2024-05-03 12:25:26 +02:00
Bastiaan Olij
9042ddf19f
Improvements to VRS/Foveated rendering
2024-05-03 17:20:30 +10:00
A Thousand Ships
6ff6a11424
[Rendering] Add hints to some uniform PropertyInfo
s
...
* Enforce range on `int/uint`
* Use flags for `bvec2/3/4` arrays
2024-05-03 08:56:47 +02:00
K. S. Ernest (iFire) Lee
f9b488508c
Add PackedVector4Array Variant type
...
Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2024-05-03 00:58:27 +02:00
clayjohn
bebf85487e
Use a full screen triangle for mipmap calculations in mobile renderer
2024-05-02 13:17:09 -07:00
A Thousand Ships
308dbb8c63
[Core] Add scalar versions of Vector*
min/max/clamp/snap(ped)
...
Convenience for a number of cases operating on single values
2024-05-02 10:31:13 +02:00
Rémi Verschelde
f91db3dc58
Merge pull request #91399 from QbieShay/qbe/fix-pmul-name
...
Revert premul alpha to spell without the T
2024-05-01 23:47:46 +02:00
QbieShay
e41064388e
reverted naming to premul alpha (no T)
...
Initially 3d had premulT alpha as a keyword.
Since Canvas item uses mixed premul and premult as keywords,
3D is changed as well to keep consistency with 2D.
Unfortunately this keeps inconsistency with the internal ENUM.
2024-05-01 22:24:49 +02:00
Chris Clyne
44364faee5
Ensure global shader sampler parameters are initialized when loading the editor
2024-05-01 18:12:46 +01:00
Rémi Verschelde
7733ecd1ee
Merge pull request #91344 from tactical-fluke/vk_fix_unshaded_sdfgi
...
Fix SDFGI being used in unshaded debug draw
2024-05-01 09:55:18 +02:00
Rémi Verschelde
70247adf25
Merge pull request #89734 from BastiaanOlij/openxr_reorder_wait_frame
...
OpenXR: Change timing of xrWaitFrame and fix XR multithreading issues
2024-05-01 09:54:51 +02:00
Bastiaan Olij
cbab7dc049
OpenXR: Change timing of xrWaitFrame and add thread safety features to OpenXR
2024-05-01 14:24:41 +10:00
QbieShay
41a2b0e83e
Added premult alpha blending to 3D (spatial) shaders.
...
Co-authored-by: jitspoe <jitspoe@yahoo.com>
Co-authored-by: Clay John <claynjohn@gmail.com>
2024-05-01 00:53:29 +02:00