Commit Graph

3585 Commits

Author SHA1 Message Date
Pāvels Nadtočajevs 586d613f43 Fix drawable texture access before null check. 2026-06-01 09:35:34 +03:00
Thaddeus Crews 243f3537ed Merge pull request #119639 from blueskythlikesclouds/adreno-disable-ubershader
Disable ubershaders on problematic Adreno compiler versions.
2026-05-25 11:19:00 -05:00
Thaddeus Crews 4354aa9806 Merge pull request #116203 from blueskythlikesclouds/shader-race-condition-fix
Fix `MaterialStorage::material_set_shader` race condition.
2026-05-25 11:18:59 -05:00
Thaddeus Crews 6c6d7c5ff6 Merge pull request #119587 from Calinou/taa-mobile-fix-jitter
Fix 3D rendering jittering when TAA is enabled in the Mobile renderer
2026-05-25 11:18:57 -05:00
Thaddeus Crews 12a102e93c Merge pull request #119401 from blueskythlikesclouds/rd-race-condition-fixes
Fix a few race conditions in RD.
2026-05-25 11:18:57 -05:00
Thaddeus Crews fa6cad230f Merge pull request #119665 from clayjohn/blit-screen-texture
Forbid using hint_screen_texture in unsupported shader types
2026-05-22 19:24:23 -05:00
Clay John 57ab62b421 Forbid using hint_screen_texture in unsupported shader types 2026-05-22 10:38:52 -07:00
Skyth c6987624ef Disable ubershaders on problematic Adreno compiler versions. 2026-05-21 22:13:32 +03:00
Hugo Locurcio eab6733f85 Fix 3D rendering jittering when TAA is enabled in the Mobile renderer
The Mobile renderer doesn't support TAA, but we still configured
the 3D buffers as if TAA was enabled after turning an error into
a warning previously.

This also adds a similar early return to screen-space AA when
on Compatibility to avoid unnecessary 3D buffer reconfiguration.
2026-05-21 03:37:26 +02:00
kleonc 7ec5fa2440 Fix y-sort modulation div by zero 2026-05-19 11:59:01 +02:00
Thaddeus Crews 1378c909f0 Merge pull request #117773 from Calinou/lightmapgi-fix-probe-interpolation-at-lightmap-edges
Fix LightmapGI probe interpolation at lightmap AABB edges
2026-05-14 09:06:52 -05:00
Thaddeus Crews ef7d768e65 Merge pull request #119375 from Chaosus/shader_fix_material_params
Fix shader crash when using parameter name identical to uniform name
2026-05-14 09:06:51 -05:00
Thaddeus Crews 1078619908 Merge pull request #119414 from clayjohn/legacy-fog-blend
Add project setting to disable new Volumetric fog blending behavior
2026-05-12 17:54:07 -05:00
Clay John c76223a35e Add project setting to disable new Volumetric fog blending behavior for existing projects that want to upgrade.
Setting is off by default, so its only intended for people who really need to rollback to the previous behavior.
2026-05-12 10:48:46 -07:00
Thaddeus Crews 872f2f073c Merge pull request #119337 from blueskythlikesclouds/sdfgi-barrier-fix
Fix undefined barrier usage in SDFGI preprocess shader.
2026-05-11 10:59:47 -05:00
Skyth 61c16d62c6 Fix a few race conditions in RD. 2026-05-11 15:33:48 +03:00
Chaosus 82ffafa399 Fix shader crash when using parameter name identical to uniform name 2026-05-11 11:57:18 +03:00
Skyth c22117dacd Fix null uniform set error when enabling SDFGI. 2026-05-08 17:28:22 +03:00
Skyth 0bba587614 Fix undefined barrier usage in SDFGI preprocess shader. 2026-05-08 17:10:58 +03:00
Thaddeus Crews aaaf76403e Merge pull request #119223 from Calinou/render-timestamp-add-setup-shadows
Add Setup Shadows render timestamp for the visual profiler
2026-05-07 16:22:28 -05:00
Thaddeus Crews ce26629ff5 Merge pull request #119230 from stuartcarnie/compute_barrier_before_end
Rendering: Remove `compute_list_add_barrier` before `compute_list_end`
2026-05-07 16:22:28 -05:00
Thaddeus Crews 96c9b3e8aa Merge pull request #119304 from stuartcarnie/fix_issue_118918
Rendering: Zero uninitialized InstanceData fields
2026-05-07 16:22:27 -05:00
Thaddeus Crews d51d1ec682 Merge pull request #119289 from Calinou/gpu-index-compatibility-warn-unsupported
Warn about `--gpu-index` CLI argument being unsupported in Compatibility
2026-05-07 11:13:31 -05:00
Stuart Carnie 64a1a66a14 Rendering: Zero double InstanceData fields
Root cause was unitinitialised stack variable.

I was able to reproduce by enabling this build-flag:

```
-ftrivial-auto-var-init=pattern
```

which initialises stack allocated variables with hostile values.

Closes #118918
2026-05-07 19:06:42 +10:00
Thaddeus Crews fddd45ea1c Merge pull request #119091 from ArchercatNEO/context-driver-surface-supports-hdr
HDR: Implement checking if surface supports HDR output.
2026-05-06 14:56:27 -05:00
ArchercatNEO 3f29efc8a2 HDR: Implement surface supports HDR output.
Previously the Wayland display server would attempt to enable
HDR output and try to detect if it failed afterwards which had some issues.
Now we can query the rendering driver for support and avoid ever enabling
HDR output when this would fail.
2026-05-06 19:51:54 +01:00
Hugo Locurcio a96279db3e Warn about --gpu-index CLI argument being unsupported in Compatibility
- Print a warning when `--gpu-index` is out of range in RenderingDevice-based
  renderers, since it falls back to automatic GPU selection.

The GPU selection logic is only available in RenderingDevice-based renderers.
2026-05-06 19:23:14 +02:00
Stuart Carnie 0b561521fe Rendering: Remove compute_list_add_barrier before compute_list_end
`compute_list_add_barrier` ends and begins a new compute list with the
same state, so calling this immediately before `compute_list_end` is
redundant, and ends up creating empty compute encoders in Metal.
2026-05-05 06:41:06 +10:00
Hugo Locurcio 376bea65e0 Add Setup Shadows render timestamp for the visual profiler
- Rename shadow timestamp to clarify it's for directional and spot shadows.
- Fix Render OmniLight Shadows timestamp being visible even when no
  omnilight shadows are being rendered.
2026-05-04 19:30:14 +02:00
Stuart Carnie 0043c950f6 Rendering: Fix priority sort table 2026-05-04 06:50:46 +10:00
Thaddeus Crews f059d64e3d Merge pull request #118968 from CookieBadger/area-light-lut-textures
Fix GPU validation errors due to area light LUT format
2026-04-30 10:58:09 -05:00
Thaddeus Crews 179899680b Merge pull request #118198 from viksl/volumetric-fog-nan-handling-reprojected
Filter and sanitize volumetric fog to stop invalid values flooding the screen with black pixels through temporal reprojection.
2026-04-30 10:58:06 -05:00
Skyth f379b84004 Fix material_set_shader race condition. 2026-04-29 17:31:24 +03:00
LiveTrower 936d67b7c7 Fix area light texture color conversion 2026-04-28 10:54:57 -06:00
Thaddeus Crews 393d854f7a Merge pull request #118962 from Chaosus/shader_fix_texture_query_lod
Prevent `textureQueryLod` function from usage in vertex shader
2026-04-28 09:02:53 -05:00
CookieBadger 7c532acc09 change LTC lookup table texture format to RGBAF and set p_8bit_dst to true in gaussian_blur 2026-04-27 21:35:46 +02:00
Thaddeus Crews 75444feae7 Merge pull request #118857 from LiveTrower/clearcoat-reflection-fixes
Fix and clean up clearcoat reflection probe process
2026-04-27 12:05:47 -05:00
Chaosus 618e959afc Prevent textureQueryLod function from usage in vertex shader 2026-04-26 13:39:00 +03:00
LiveTrower 4b94f459f4 Fix and cleanup clearcoat reflection probe process 2026-04-24 16:04:41 -06:00
Thaddeus Crews 4d794c4ffb Merge pull request #118629 from Kaleb-Reid/fix-bilinear-fallback
Fall back to bilinear scaling when setting FSR or MetalFX Temporal on Mobile
2026-04-24 15:43:31 -05:00
Kaleb Reid 57466fd247 Fall back to bilinear scaling when setting FSR or MetalFX Temporal on Mobile 2026-04-22 13:52:46 -07:00
LiveTrower 5dac818f77 Fix clearcoat intensity for area lights 2026-04-22 13:07:53 -06:00
Thaddeus Crews 0e25644655 Merge pull request #118796 from deralmas/gotta-go-wrap
Buildsystem: Simplify `format_buffer` utility method
2026-04-22 09:58:29 -05:00
Thaddeus Crews 835e2dcbba Merge pull request #118809 from blueskythlikesclouds/fix-clearcoat-half-ddx-ddy
Fix SPIR-V validation error in Mobile clearcoat code.
2026-04-21 16:46:14 -05:00
Thaddeus Crews dc12c5f48e Merge pull request #118752 from dsnopek/reflection-probe-rt-error
Fix `Parameter "rt" is null` when toggling `ReflectionProbe` visibility
2026-04-21 16:46:02 -05:00
Dery Almas e4dcf1d852 Buildsystem: Simplify format_buffer utility method
This method is used to generate headers for embedding files into the binary
(think about the new `#embed` feature in C23 and C++26).

While the stringification step itself was plenty fast, it then proceeded
to wrap everything using the `textwrap` module. `textwrap` is *very*
slow, as it's apparently optimized for human text.

This patch reimplements the wrapping logic using a simple regex,
resulting in a tremendous speed improvement (~6x), and switches to `map`
for the stringification itself (thanks Rémi!)

It also removes a (practically) unused argument, `initial_indent`.

The generated files are pretty much the same, with a tiny difference in
line length (for some reason the old logic overshot the requested line
length)
2026-04-21 23:18:42 +02:00
Thaddeus Crews 06fc4f8165 Merge pull request #113413 from Kaleb-Reid/fix-aa-bilinear-scaling
Fix screen-space AA when scaling using bilinear filtering
2026-04-21 08:48:00 -05:00
Skyth 52e8eb4bbb Fix SPIR-V validation error in Mobile clearcoat code. 2026-04-21 13:58:40 +03:00
David Snopek 0c00e99d39 Fix Parameter "rt" is null when toggling ReflectionProbe visibility 2026-04-19 08:45:54 -05:00
Kaleb Reid 08cb31b4d1 Fix screen-space AA when upscaling using bilinear filtering 2026-04-15 15:33:26 -07:00