Commit Graph

2807 Commits

Author SHA1 Message Date
2bb6ad5cdf Fix debug CanvasItem redraw rects in RD renderer 2025-02-18 23:49:43 +01:00
946c254cec Fix crash at using increment op for varying in light shader function 2025-02-15 17:37:18 +03:00
b607110ad2 Merge pull request #102792 from clayjohn/varying-crash
Validate varying count when compiling shaders
2025-02-14 08:25:39 -06:00
35100396e4 Validate varying count when compiling shaders
This avoids crashing on devices when a number of varyings greater than the device limit is used.

For now this accurately prints an error when compiling the shader, but the error text only pops up in the editor if the number of user varyings is above the limit.
2025-02-13 15:07:15 -08:00
54006f6ebf Merge pull request #102217 from clayjohn/mobile-pipelines
Reduce mobile pipeline compilations
2025-02-13 23:34:54 +01:00
1a0bf54677 Merge pull request #102805 from BlueCube3310/rd-tex-fetch-fix
RenderingDevice: Fix certain RD to Image format conversions
2025-02-13 10:15:47 -06:00
27c4e70ee8 RenderingDevice: Fix certain RD to Image format conversions 2025-02-13 10:44:10 +01:00
4712d426ef Fix broken skeletal animated meshes
Fixes #102791
2025-02-12 22:25:22 -03:00
78f1918bd4 Merge pull request #102668 from jkirsteins/janiskirsteins/ios-aspect-fill-splash
[iOS] Sync the boot splash and the launch screen image scale modes
2025-02-12 12:56:26 -06:00
1939e87db1 Merge pull request #101561 from darksylinc/matias-device-address-api
Change how device address is requested to avoid future API breakage
2025-02-12 12:56:25 -06:00
0e266b0099 [iOS] Sync the boot splash and the launch screen image scale modes 2025-02-12 17:41:18 +01:00
af900a5825 Change how device address is requested to avoid future API breakage
PR #100062 introduced BUFFER_USAGE_DEVICE_ADDRESS_BIT.

However it did so by adding a boolean to uniform_buffer_create(), called
"bool p_enable_device_address".

This makes maintaining backwards compatibility harder because I am
working on another feature that would require introducing yet another
bit flag.

This would save us the need to add fallback routines when the feature I
am working on makes it to Godot 4.5.

Even if my feature doesn't make it to 4.5 either, this PR makes the
routine more future-proof.

This PR also moves STORAGE_BUFFER_USAGE_DEVICE_ADDRESS into
BUFFER_CREATION_DEVICE_ADDRESS_BIT, since it's an option available to
both storage and uniforms.

This PR also moves the boolean use_as_storage into
BUFFER_CREATION_AS_STORAGE.
2025-02-11 20:00:18 -03:00
cfe0fd62d0 Merge pull request #102677 from stuartcarnie/free_invalid_id
2D: Fix free of invalid ID
2025-02-11 23:59:19 +01:00
d967d8d9bd Merge pull request #102280 from Chaosus/fix_particles_process_shader_crash
Fix crash when assigning wrong shader to particle process material
2025-02-11 23:58:56 +01:00
90b2d4b844 2D: Fix free of invalid ID 2025-02-11 08:17:29 +11:00
d497631de0 Merge pull request #102503 from clayjohn/instance-uniform-free
Ensure instance uniforms are freed by updating dirty items before freeing
2025-02-07 01:40:05 +01:00
0bccb0abd1 Merge pull request #102497 from BlueCube3310/mesh-uv-render-compressed-fix
Fix rendering material when UV2 is compressed
2025-02-07 01:40:02 +01:00
46aeded4b7 Merge pull request #102480 from DarioSamo/dont-unroll-ubershader
Add loop annotations to ubershaders to prevent loop unrolling.
2025-02-07 01:39:48 +01:00
c695eb9159 Merge pull request #101952 from Flarkk/fix_spotlight_peterpanning_regression
Fix shadow peter-panning with default spotlight
2025-02-07 01:39:15 +01:00
b676944dcf Ensure instance uniforms are freed by updating dirty items before freeing. 2025-02-06 14:45:55 -08:00
8714b36171 Fix rendering material when UV2 is compressed 2025-02-06 20:24:46 +01:00
d39ac94c41 Add loop annotations to ubershaders to prevent loop unrolling. 2025-02-06 09:39:18 -03:00
7444839299 Reduce mobile pipeline compilations by tracking more feature usage globally and only compile what is needed 2025-02-05 18:27:23 -08:00
1bba9dbce9 Fix erroneous logic when flushes are involved on RD async methods. 2025-02-05 09:49:15 -03:00
a9fa4fd7b9 Merge pull request #101642 from huwpascoe/fix_source_color
Shaders: Fix `source_color` default value
2025-02-05 11:33:54 +01:00
ea2770eb4f Merge pull request #101947 from Rudolph-B/Issue-101750
Add Heightfield mask to GPUParticlesCollisionHeightField3D
2025-02-04 09:04:11 -06:00
b162c59097 Fix GPUParticlesCollisionHeightField3D adding collisions excluded by its layer_mask
Co-authored-by: Yahia Zakaria <yahiazakaria13@gmail.com>
2025-02-04 08:02:44 +02:00
f230b9cb12 Merge pull request #102261 from clayjohn/dummyrs-mesh-dependency
Track mesh dependencies in Dummy RenderingServer
2025-02-03 08:16:09 -06:00
53e6d30771 Fix crash when assigning wrong shader to particle process material 2025-02-01 15:12:02 +03:00
6611c863bd Use a smaller epsilon for omni and spot attenuation cutoff
We just want to avoid calculating shadows when the attenuation is zero, so we should use the smallest epsilon we can get away with
2025-01-31 17:08:23 -08:00
258d4d5c3d Track mesh dependencies in Dummy RenderingServer to properly resolve freeing MeshInstances 2025-01-31 12:57:10 -08:00
570e59df3d Fix shader uniforms has null as default value 2025-01-31 07:35:51 +03:00
ee4acfbfbf Merge pull request #95669 from kleonc/y_sort_fix_root_double_modulate
Fix Y-sorted root item having modulation applied twice
2025-01-29 17:45:20 -06:00
4b9f88280b Merge pull request #102122 from DarioSamo/default-sdfgi-fix
Fix default SDFGI variant not being compiled in time.
2025-01-29 17:45:17 -06:00
7e97ada3b7 Merge pull request #102125 from DarioSamo/ubershader-thread-priority
Mark pipeline compilation of ubershaders as high priority.
2025-01-29 17:45:16 -06:00
3ba6ac0f66 Merge pull request #102143 from MathdudeMan/shader-error
Fix: Mass property particle shader bug
2025-01-29 17:45:13 -06:00
0a9cd5ede9 2D: Fix clip children and rendering artefacts
Fixes both GLES3 and RendererRD implementations

Closes #102147
2025-01-30 07:19:47 +11:00
964cd6525e Fix: Mass property particle shader error 2025-01-28 21:00:26 -05:00
a013481b09 Merge pull request #102133 from DarioSamo/particles-clear-color-fix
Fix framebuffer clear for particle collider heightfield.
2025-01-28 16:08:59 -06:00
5c7fd16eea Fix framebuffer clear for particle collider heightfield. 2025-01-28 14:22:30 -03:00
5ac6bce58d Merge pull request #102105 from clayjohn/SDFGI-unflip-normal
Avoid flipping normal based on facing direction when calculating SDF
2025-01-28 09:03:34 -06:00
d0c29faa15 Mark pipeline compilation of ubershaders as high priority. 2025-01-28 11:40:05 -03:00
655e98b2ea Fix default SDFGI variant not being compiled in time. 2025-01-28 10:24:46 -03:00
24b502b13a Fix Y-sorted root item having modulation applied twice 2025-01-28 14:21:36 +01:00
a525e30c27 Avoid flipping normal based on facing direction when calculation SDF. This shader runs for multiple directions, so the flip direction won't be accurate and just creates bad normals 2025-01-27 16:48:29 -08:00
2510fefebd 2D: Fix rendering artefacts when using BackBufferCopy.
Fixes both GLES3 and RendererRD implementations
2025-01-25 10:22:07 +11:00
a7363946b2 Merge pull request #101911 from rburing/fti_2d_particles_on_target
`CPUParticles2D` - Add ability to follow physics interpolated target
2025-01-24 09:05:40 -06:00
56fc0fd175 CPUParticles2D - Add ability to follow physics interpolated target
Allows a non-interpolated particle system to closely follow an interpolated target without tracking ahead of the target, by performing fixed timestep interpolation on the particle system global transform, and using this for emission.

Co-authored-by: lawnjelly <lawnjelly@gmail.com>
2025-01-24 14:13:20 +01:00
663917449b 2D: Fix CanvasTexture rendering when updating channels 2025-01-24 07:01:37 +11:00
d08ff57148 Fix peter-panning with default spotlight 2025-01-22 17:05:04 +01:00