Stuart Carnie
65e8b0951b
Renderer: Move reflect_spirv to RenderingShaderContainer
...
This change introduces a new protected type, `ReflectedShaderStage` to
`RenderingShaderContainer` that derived types use to access SPIR-V and
the reflected module, `SpvReflectShaderModule` allowing implementations
to use the reflection information to compile their platform-specific
module.
* Fixes memory leak in `reflect_spirv` that would not deallocate the
`SpvReflectShaderModule` if an error occurred.
* Removes unnecessary allocation when creating `SpvReflectShaderModule`
by passing `NO_COPY` flag to `spvReflectCreateShaderModule2`
constructor function.
* Replaces `VectorView` with `Span` for consistency
* Fixes unnecessary allocations in D3D12 shader container in
`_convert_spirv_to_nir` and `_convert_spirv_to_dxil` which implicitly
converted the old `VectorView` to a `Vector`
2025-09-30 06:40:14 +10:00
Edward Moulsdale
e366471fdc
Add GDSOFTCLASS to deeper inheritors of Object
2025-09-24 19:15:56 +01:00
Thaddeus Crews
daa1fc97dd
Merge pull request #107547 from beicause/shader-compiler-print-content-verbose
...
ShaderCompiler: Optimize compilation error printing
2025-09-24 09:59:14 -05:00
Thaddeus Crews
7b8073d122
Merge pull request #107763 from Ivorforce/missing-vpv
...
Add missing `vpv.push_back(pv);` in `render_target_get_sdf_texture`.
2025-09-24 09:59:11 -05:00
Thaddeus Crews
c62356fcaa
Merge pull request #85080 from Cykyrios/draw-ellipse
...
Add methods to draw ellipses
2025-09-23 12:08:51 -05:00
Thaddeus Crews
75f0f3dc55
Merge pull request #110550 from WesleyClements/master
...
Fix `TileMapLayer` tiles displaying incorrectly with y_sort based on visibility layer
2025-09-23 12:08:50 -05:00
Thaddeus Crews
cd3a6c88fd
Merge pull request #106200 from BlueCube3310/image-16-u16
...
Image: Implement 16-bit unorm and uint formats
2025-09-23 12:08:46 -05:00
Thaddeus Crews
cede7c8aa7
Merge pull request #109401 from DarioSamo/ubershader-for-sdf-and-material
...
Add ubershader support to material and SDF variants in Forward+.
2025-09-22 21:01:00 -05:00
Wesley Clements
89503e387a
fixed tile map tiles displaying incorrectly based on visibility layer
2025-09-21 19:03:21 -04:00
Edward Moulsdale
12e97610a8
Add GDSOFTCLASS to six inheritors of Object
2025-09-21 16:22:29 +01:00
Cykyrios
9f7c3d00dd
Add methods to draw ellipses
2025-09-19 10:45:16 +02:00
Thaddeus Crews
f8dedf68e2
Merge pull request #105254 from Ivorforce/no-get-internal-ptr
...
Delete `VariantGetInternalPtr` and `VariantImplicitConvert`, replace with `VariantInternalAccessor`
2025-09-18 21:02:28 -05:00
Thaddeus Crews
62273fa10b
Merge pull request #110627 from clayjohn/RD-intel-mac-sky-check
...
Move check for sky cubemap array back into the SkyRD initializer
2025-09-18 21:02:24 -05:00
Lukas Tenbrink
f81287d765
Introduce VariantImplicitConvert<> template for types that can be implicitly converted to and from Variant.
...
De-duplicate a lot of `VariantGetInternalPtr`, `VariantInternalAccessor`, `VariantInitializer` and `VariantDefaultInitializer`.
2025-09-19 00:20:07 +02:00
clayjohn
fc951855ed
Move check for sky cubemap array back into the SkyRD initializer so it is set before being used.
...
Previously it was moved out of this function becuase we relied on RenderingServer::get_video_adapter_name which wasn't available yet.
However, that was unnecessary since it is just a wrapper around RenderingDevice::get_device_name() which is available.
2025-09-17 11:41:56 -07:00
Thaddeus Crews
aa294bb3c8
Merge pull request #110360 from zorbathut/pr/memorybarrierrename
...
Rename RDD::MemoryBarrier to avoid conflicts with the Windows headers.
2025-09-17 11:34:15 -05:00
Thaddeus Crews
8c7c96e2c4
Merge pull request #108636 from clayjohn/MSAA-depth-mobile
...
Add depth resolve to the mobile renderer
2025-09-17 11:34:13 -05:00
Thaddeus Crews
e721af5775
Merge pull request #110330 from DarioSamo/reflection-probe-size-leak
...
Fix reflection probes not recreating downsampled textures when mode changes.
2025-09-17 11:34:12 -05:00
Thaddeus Crews
e504943212
Merge pull request #110184 from Namey5/vertex-lighting-issue
...
Fix rounding error in clustered vertex light culling
2025-09-17 11:34:11 -05:00
Thaddeus Crews
6efa557e9b
Merge pull request #109567 from Flarkk/fix_spotlight_fog
...
Fix spotlight's shadow peter-panning with volumetric fog
2025-09-16 11:44:55 -05:00
Thaddeus Crews
853884ba05
Merge pull request #109143 from sievaxx/more_sampler_default_texs
...
Add and enable default textures for other samplers
2025-09-16 11:44:51 -05:00
Thaddeus Crews
27a3f0eb8d
Merge pull request #108206 from Calinou/transparent-viewport-no-ssr-sss-dof
...
Disable unsupported SSR, SSS, DoF on transparent viewports
2025-09-16 11:44:48 -05:00
Hugo Locurcio
1c62ba40b7
Disable unsupported SSR, SSS, DoF on transparent viewports
...
For technical reasons, transparent viewports cannot support
screen-space reflections, subsurface scattering and depth of field.
Previously, enabling any of these would turn transparent viewports
invisible.
2025-09-11 14:59:07 +02:00
Ben Rog-Wilhelm
e5ab5acd95
Rename RDD::MemoryBarrier to avoid conflicts with the Windows headers.
2025-09-10 05:19:36 -05:00
clayjohn
0576b12699
Increase precision of SpotLight attenuation calculation to avoid driver bug on Intel devices
2025-09-09 13:18:55 -07:00
Dario
7b923609c2
Fix reflection probes not recreating downsampled textures when mode changes.
2025-09-08 15:54:37 -03:00
Luo Zhihao
5f737952fd
ShaderCompiler: Optimize compilation error printing
2025-09-04 16:51:17 +08:00
Dario
8c4180adf4
Add GENERAL resource usage to the render graph. Fixes texture initialization in D3D12.
2025-09-02 15:18:47 -03:00
Clay John
0f0bb7d225
Merge pull request #110025 from DarioSamo/fix-shader-debug-info-take-two
...
Fix --generate-spirv-debug-info regression (alternate take)
2025-09-01 19:37:27 -07:00
Alex Threlfo
60a7bed19c
Fix rounding error in clustered vertex light culling
2025-09-02 11:33:38 +10:00
Thaddeus Crews
b919b19f48
Merge pull request #110174 from clayjohn/RD-shader-cache
...
Avoid attempting to load from shader cache when both the user-dir and res-dir are invalid
2025-09-01 19:09:55 -05:00
clayjohn
d90332aa0f
Avoid attempting to load from shader cache when both the user-dir and res-dir are invalid
2025-09-01 12:25:23 -07:00
Pāvels Nadtočajevs
f766e401db
[MSDF] Fix outline bleed out at small sizes.
2025-08-31 23:35:33 +03:00
Dario
e137c882c0
Disable smolv and change the shader hash when SPIR-V debug info is enabled.
2025-08-28 14:17:58 -03:00
Thaddeus Crews
b86d05e7f8
Merge pull request #109993 from bruvzg/upscale_gl_check
...
Check renderer type when setting 3D upscaling mode.
2025-08-27 13:39:41 -05:00
Pāvels Nadtočajevs
adce527880
Check renderer type when setting 3D upscaling mode.
2025-08-27 07:48:55 +03:00
Thaddeus Crews
aa0c7bb840
Merge pull request #109970 from allenwp/add-debanding-smaa-before-spatial-upscaler
...
Add debanding to SMAA and apply debanding before spatial upscalers.
2025-08-26 19:01:11 -05:00
Thaddeus Crews
27b0135264
Merge pull request #109995 from clayjohn/texture-error
...
Handle the case where VRS is a two byte per pixel format when creating default VRS texture
2025-08-26 19:01:10 -05:00
clayjohn
b0d7a241b2
Handle the case where VRS is a two byte per pixel format when creating default VRS texture
2025-08-26 12:22:23 -07:00
clayjohn
4b84207d2f
Use vertex shader workaround for Mali GXX GPUs for glow shader
...
We applied this same workaround to the tonemap shader and DoF, but didn't apply it to glow since the bug didn't manifest on our test devices.
2025-08-26 11:31:22 -07:00
Allen Pestaluky
5a3e69d16e
Add debanding to SMAA and apply debanding before spatial upscalers.
2025-08-25 16:55:36 -04:00
Thaddeus Crews
1d386b5f7d
Merge pull request #109882 from precup/shader-cache-return
...
Treat missing variants as normal cache misses during shader cache lookup
2025-08-24 11:04:32 -05:00
Stuart Carnie
90c9134875
Metal: Read gl_ViewIndex for multi-view subpasses
...
This is necessary to ensure the SpvCapabilityMultiView is included in
the SPIR-V, informing downstream transpilers, like Metal, that it should
enable multi-view capabilities in the generated Metal shader source.
2025-08-23 09:12:17 +10:00
Mike Precup
277693ba81
Treat missing variants as normal cache misses during shader cache lookup
2025-08-22 11:48:43 -07:00
Thaddeus Crews
c7a07610e9
Merge pull request #109591 from mihe/no-async-physics-while-processing
...
Pause physics command queue during physics processing
2025-08-21 18:39:36 -05:00
Thaddeus Crews
4f393e0c3c
Merge pull request #109644 from RandomShaper/fix_dupe_tex2darr
...
Fix material removal clearing all instances of shared texture arrays
2025-08-20 12:07:14 -05:00
Pāvels Nadtočajevs
6a3941b5d9
Fix MSDF outline size clamping.
2025-08-19 08:28:33 +03:00
Pedro J. Estébanez
919006eb35
Fix material removal clearing all instances of shared texture arrays
2025-08-18 12:21:15 +02:00
Thaddeus Crews
6f298b6642
Merge pull request #109548 from bruvzg/shader_x
...
Improve shader overloaded function error reporting.
2025-08-14 09:28:01 -05:00
Mikael Hermansson
70979ae8bd
Pause physics command queue during physics processing
2025-08-14 15:54:59 +02:00