1
0
Fork 0
Commit Graph

3330 Commits

Author SHA1 Message Date
Thaddeus Crews 2b7f39ea28
Merge pull request #110505 from Calinou/tweak-draw-command-labels
Tweak draw command label names for consistency
2025-09-30 20:10:37 -05:00
Aaron Franke 9fbf5808a0
Rename server "free" functions to "free_rid" to match exposed API 2025-09-30 16:52:25 -07:00
Thaddeus Crews f9694033a5
Merge pull request #107923 from clayjohn/RD-mat3x4
Use Mat3x4 for model and view transforms to save bandwidth and ALUs
2025-09-30 18:34:59 -05:00
Thaddeus Crews c28b6c2ced
Merge pull request #109186 from clayjohn/reflection-probe-size-update
Prompt editor restart when reflection probe size is updated
2025-09-30 18:34:57 -05:00
Thaddeus Crews 3997e77393
Merge pull request #111054 from Kaleb-Reid/fix-render-list
Sort render list correctly in RD renderers
2025-09-30 11:19:18 -05:00
Thaddeus Crews 21fd4faf1b
Merge pull request #107469 from Ivorforce/vector-localvector-explicit-span-conversions
Remove implicit conversions between `LocalVector` and `Vector`
2025-09-30 11:19:17 -05:00
clayjohn aa8bc0b56d Prompt editor restart when reflection probe size is updated
Also formally deprecate the RS function for updating an individual probes size. The functionality was removed in 4.0, but the function itself was mistakenly left exposed.
2025-09-29 18:35:34 -07:00
Kaleb Reid 5021b3e6e5 Sort render list correctly in RD renderers 2025-09-29 17:22:26 -07:00
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
clayjohn 14b60f2264 Optimize vertex shader using mat3x4 to reduce bandwidth, load/store operations and ALUs 2025-09-26 23:20:08 -07: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
Kaleb Reid e5cd234ef7 Use correct scaling type when falling back to bilinear 2025-09-18 13:58:02 -07: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
Lukas Tenbrink abe3b481ae Make conversions from `LocalVector` to `Vector` explicit. 2025-09-16 21:41:28 +02: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 204e310914
Tweak draw command label names for consistency
- Use Title Case for all labels, and add hyphens where relevant.
- Mention Roughness in SSR Filter's label name, as it's only enabled
  when the SSR roughness quality is not set to Disabled.
2025-09-14 01:23:47 +02: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
Rudolph Bester 56e04635a7 Minor Optimization to Occlusion Culling 2025-08-14 20:00:58 +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
Florent Guiocheau 199161f023 Fix spotlight's shadow with volumetric fog 2025-08-13 09:28:06 +02:00
devloglogan fb829bdd08 Fix mobile renderer motion vectors regression 2025-08-12 16:45:31 -05:00
Pāvels Nadtočajevs c3cc1ba8e4
Improve shader overloaded function error reporting. 2025-08-12 16:58:43 +03:00
Thaddeus Crews ca452113d4
Merge pull request #109437 from bruvzg/msdf_no_t
Use MSDF instead of MTSDF for font rendering.
2025-08-11 09:55:28 -05:00
Pāvels Nadtočajevs 86e61a311f
Use MSDF instead of MTSDF for font rendering.
Co-authored-by: K. S. Ernest (iFire) Lee <ernest.lee@chibifire.com>
2025-08-09 10:41:16 +03:00
Stuart Carnie c8b5982d0f Metal: Ensure correct output texture format selection 2025-08-08 12:50:16 +10:00
Dario 517b42e7dd Add ubershader support to material and SDF variants in Forward+. 2025-08-07 14:40:14 -03:00
Thaddeus Crews 87bb5ab681
Merge pull request #108919 from KeyboardDanni/d3d12_init_shader_model_check
D3D12: Fix shader model check, initialization error handling
2025-08-01 11:45:19 -05:00
Thaddeus Crews 5787f6fb6a
Merge pull request #108044 from apples/107935-stencil-fixes
Fix opaque stencil rendering
2025-07-31 10:39:08 -05:00
Riley Willows fbe2710843
Add and enable default textures for other samplers 2025-07-31 00:08:43 +01:00
Thaddeus Crews cfc58710b7
Merge pull request #108697 from clayjohn/pump-task
Ensure that threads only process one pump task
2025-07-30 09:03:42 -05:00
clayjohn 782b9e328c Ensure that threads only process one pump task.
This is necessary because we will always deadlock if a thread takes on multiple pump tasks since pump tasks never return.

This means when using separate threads for certain systems (like physics or rendering), we need to be sure that there are enough threads to have at least one per system (to ensure forward progress).
2025-07-29 07:15:34 -07:00
Danni bf6629a005 D3D12: Fix shader model check, initialization error handling 2025-07-28 20:35:45 -04:00
David Snopek a590be0cb2 OpenGL: Fix crash with "Thread Model" set to "Separate" 2025-07-28 13:02:46 -05:00
Thaddeus Crews ebe2b44ca9
Merge pull request #108940 from DarioSamo/transfer-alignment-lcm
Compute texture alignment for transfers using the LCM instead.
2025-07-25 11:08:13 -05:00
Dario b962b38e74 Check for Vulkan Memory Model support and make it a variant. 2025-07-25 09:24:58 -03:00
Thaddeus Crews 967e2d499a
Merge pull request #108761 from allenwp/108757-fix-mobile-hdr2d-debanding
Fix debanding for Mobile rendering method with HDR 2D.
2025-07-24 20:49:43 -05:00
Allen Pestaluky a033656eda Fix debanding for Mobile rendering method with HDR 2D. 2025-07-24 16:11:49 -04:00
Dario 4af0734a77 Compute texture alignment for transfers using the LCM instead. 2025-07-24 14:08:45 -03:00
Pāvels Nadtočajevs 9c325d0f91
Remove selective shader baking. 2025-07-23 23:02:43 +03:00
Juan Manuel Costello 5dc25db6da Fix lightmap dynamic objects with physical lights 2025-07-17 20:58:03 -03:00
clayjohn a8efa55bed Add depth resolve to the mobile renderer 2025-07-16 20:37:39 -07:00
clayjohn 17b9469bac Never overwrite motion vectors in the transparent pass 2025-07-16 04:58:39 -07:00
kobewi d591bcc09c Remove unnecessary cpp files 2025-07-15 15:19:23 +02:00
Thaddeus Crews 723e82bba9
Merge pull request #108568 from beicause/RD-uniform_type-check
RenderingDevice: Add `uniform_type` check to avoid crash
2025-07-14 10:30:38 -05:00
Thaddeus Crews eb0caa6029
Merge pull request #108510 from bruvzg/bake_no_atomic
[macOS] Selectively bake "no image atomics" shader variants.
2025-07-14 10:30:36 -05:00
Thaddeus Crews 6bc7fcb7af
Merge pull request #108567 from beicause/multimesh-null-checks
Add some multimesh null checks to avoid crash
2025-07-14 10:30:35 -05:00
Thaddeus Crews 35a2d7843e
Merge pull request #104302 from brennennen/reflection_probe_count_error_check
Add error check for reflection probe invalid atlas index.
2025-07-14 10:30:31 -05:00
Thaddeus Crews 2be2cbb720
Merge pull request #107782 from allenwp/vulkan-nonlinear-color-correction-dithering
Always perform color correction and debanding on nonlinear sRGB values.
2025-07-14 10:30:28 -05:00
LuoZhihao 8ad3072a6a RenderingDevice: Add `uniform_type` check to avoid crash 2025-07-13 10:27:16 +08:00
LuoZhihao 5352638f95 Add some multimesh null checks to avoid crash 2025-07-13 10:09:36 +08:00
Pāvels Nadtočajevs 87e91f7c7a
[macOS] Selectively bake "no image atomics" shader variants. 2025-07-12 21:05:48 +03:00
brennen 2583aa4a68 Add error check for reflection probe invalid atlas index. 2025-07-10 19:03:21 -05:00
Pāvels Nadtočajevs a8873727ac
[macOS] Selectively bake specific shader variants for MoltenVK. 2025-07-09 20:09:56 +03:00
Thaddeus Crews d7cc121e64
Merge pull request #108347 from Rudolph-B/Issue-106184
Fix underculling of occulusion culling
2025-07-09 11:33:21 -05:00
Thaddeus Crews bfb379b766
Merge pull request #108378 from Mingxi-Z/fix/clearcoat-nan-issue
Fix division by zero in clearcoat specular BRDF
2025-07-09 11:33:21 -05:00
Thaddeus Crews 9d5513e5e6
Merge pull request #108085 from Chaosus/shader_fix_overloads
Fix shader function overloads with incorrect order
2025-07-09 11:33:19 -05:00
Allen Pestaluky a1591512f8 Always perform color correction and debanding on nonlinear sRGB values.
Fixes #107730

Co-authored-by: LuoZhihao <luo_zhihao@outlook.com>
2025-07-08 13:44:53 -04:00
Rudolph Bester a54df7fdb7 Move occlusion culling back to being based on euclidian distance but with some distance calculation using double precision 2025-07-08 13:38:36 +02:00
retrotails a5e681df77 Fix crash when creating voxel GI data 2025-07-07 23:26:56 -04:00
Mingxi Zhang 2096e4c007 Fix division by zero in clearcoat
Prevents the clearcoat model from generating NaN values at grazing angles
2025-07-08 01:58:37 +00:00
Chaosus 00a755f609 Fix shader function overloads with incorrect order 2025-07-05 09:50:55 +03:00
Stuart Carnie 5230f6c60c Apple: Use image atomic operations on supported Apple hardware
Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
2025-07-05 05:59:00 +10:00
Apples 62a5cd90a7 Fix opaque stencil rendering 2025-07-02 21:49:19 -05:00
Thaddeus Crews e750950dc6
Merge pull request #107568 from Rudolph-B/Issue-92708
Fix floating point precision errors when setting particle trail length
2025-07-01 17:57:58 -05:00
lawnjelly 02b444a988 FTI - Fix `MultiMesh` init and stable behaviour 2025-06-29 15:58:15 +01:00
BlueCube3310 16b9ee6f50 Image: Implement 16-bit unorm and uint formats 2025-06-28 00:30:52 +02:00
Thaddeus Crews cef8eb1a65
Merge pull request #108015 from DarioSamo/vvl-errors
Fix VVL errors by changing `frag_color` to FP32 and dFdx/y.
2025-06-27 09:39:54 -05:00
Thaddeus Crews 110eb1884c
Merge pull request #107724 from Chaosus/shader_fix_ternary_samplers
Prevent ternary expression with a sampler types in shaders
2025-06-27 09:39:53 -05:00
Dario 4921a3e711 Fix VVL errors by changing frag_color to FP32 and dFdx/y. 2025-06-26 13:42:17 -03:00
Thaddeus Crews 05640191e7
Merge pull request #107928 from Kaleb-Reid/scatter-no-LIGHTX
Always send lights to sky shader if using sun scatter
2025-06-24 18:34:31 -05:00
Thaddeus Crews 5b01921c07
Merge pull request #107944 from KoBeWi/PNAMING_everything
Mark GDScript and shader warnings for translation
2025-06-24 18:34:27 -05:00
Thaddeus Crews 01410f19f8
Merge pull request #107876 from clayjohn/vs-data-issues
Fix a few improper memory accesses in the clustered forward vertex shader
2025-06-24 18:34:25 -05:00
Kaleb Reid e659daf6e0 Always send lights to sky shader if using sun scatter 2025-06-24 14:24:49 -07:00
kobewi 015cc38912 Mark GDScript and shader warnings for translation 2025-06-24 23:11:56 +02:00
celyk 7f9b8dae4f Use double emulation on modelview 2025-06-24 15:37:18 +10:00
LuoZhihao ea75954575 Vulkan Mobile: Fix writing vertex color in spatial shader 2025-06-23 21:30:48 +08:00
clayjohn b4adaa291a Fix a few improper memory accesses in the clustered forward vertex shader
draw_call.instance_index should not be used directly since it doesn't take into account auto-batching

scene_data_block.data should not be used directly in the vertex shader since it can change between frames and impact motion vector generation

IN_SHADOW_PASS can only be accessed inside functions, so it needs to be a global and not a constant
2025-06-22 23:41:03 -07:00
Mingxi Zhang de2aa1bc4d Fix: Ensure sky orientation is set when reflection uses sky 2025-06-22 23:50:39 +08:00
Chaosus d3792efa89 Prevent ternary expression with a sampler types in shaders 2025-06-21 15:52:33 +03:00
Lukas Tenbrink 28fd557c58 Add missing `vpv.push_back(pv);` in `render_target_get_sdf_texture`. 2025-06-20 14:46:03 +02:00
Thaddeus Crews c9511255de
Merge pull request #107684 from dsnopek/revert-shadow-normal-bias-relative
Revert "Use lower shadow normal bias for distant directional shadow splits"
2025-06-19 09:53:54 -05:00
David Snopek 4cc1d0ba67 Revert "Use lower shadow normal bias for distant directional shadow splits"
This reverts commit dfc05caf06.
2025-06-18 18:14:22 -05:00
Thaddeus Crews 8f6597ad41
Merge pull request #107625 from beicause/forward-plus-fix-light-shader-builtins
Forward+: Fix builtins in light shader
2025-06-18 18:14:05 -05:00
Sch1nken a9ac00f8f7 Added multimesh physics interpolation for 2D transforms (MultiMeshInstance2D)
Replicated MultimeshInstance3D behaviour to MultiMeshInstance2D and added mesh_storage for 2D transform

Also call VisualInstance::_physics_interpolated_changed()

Use Node instead of VisualInstance. Addded comment

Fixed typo :)

Using CanvasItem instead of Node now. Made CanvasItem::_physics_interpolated_changed() protected
2025-06-18 16:04:51 +02:00
Lukas Tenbrink 2b36c79f7b Use `Span<uint8_t>` in `RenderingDevice` allocation APIs to avoid intermediary arrays on calls. 2025-06-18 12:31:48 +02:00
LuoZhihao 8a2fd98004 Forward+: Fix builtins in light shader 2025-06-17 20:14:53 +08:00
Rudolph Bester 3c5d4a2410 Fix floating point precision errors when setting particle trail length 2025-06-15 20:38:50 +02:00
devloglogan 36128bfc29 Check render target validity before getting motion vector texture in mobile renderer 2025-06-13 18:52:02 -05:00
Rémi Verschelde 3b2b0157ff
Merge pull request #107475 from beicause/fix-global-shader-texture-uniform
Fix global shader texture uniform
2025-06-13 15:54:09 +02:00
LuoZhihao 7419e4429d Fix global shader texture uniform 2025-06-13 13:24:38 +08:00
Rémi Verschelde 6eb6e3e6e0
Merge pull request #107457 from akien-mga/improve-error-message-call-single-argument
Improve error messages for method calls expecting only 1 argument
2025-06-12 22:49:36 +02:00
Rémi Verschelde 5507b3aa80
Merge pull request #107451 from NetroScript/fix-vrs-attachment
Fix the VRS attachment being incorrectly added to `color_attachments`
2025-06-12 22:49:24 +02:00
Rémi Verschelde 9eda3c682d
Merge pull request #107404 from beicause/mobile-spatial-light-shader-builtins
Vulkan Mobile: Fix reading builtins in `light()` of spatial shader
2025-06-12 22:48:58 +02:00
Rémi Verschelde 1a64b6b5b6
Merge pull request #106913 from Ivorforce/string-resize-uninitialized
Rename `String::resize` to `resize_uninitialized`
2025-06-12 22:48:45 +02:00
Rémi Verschelde d1083c9722
Improve error messages for method calls expecting only 1 argument 2025-06-12 17:02:59 +02:00
NetroScript 66d68707d3
Fix the VRS attachment being incorrectly added to color_attachments 2025-06-12 13:38:18 +02:00
Rémi Verschelde da05a6b775
Merge pull request #106907 from SpockBauru/fix-mobile-lightmap-instances
Vulkan Mobile: Fix lightmap instances count
2025-06-12 11:56:32 +02:00
Rémi Verschelde 0497ae9947
Merge pull request #80710 from apples/7174-apples-stencil
Add stencil support to spatial materials
2025-06-12 01:15:35 +02:00
Dario 8804c88443 Change all interpolators to FP32 in mobile renderer. 2025-06-11 15:36:22 -03:00
Lukas Tenbrink b13a0e1834 Rename `String::resize` to `resize_uninitialized`, to better communicate to callers that new characters must be initialized. 2025-06-11 18:13:02 +02:00
Apples d674c9e289 Add stencil support for spatial materials 2025-06-11 09:59:10 -05:00
LuoZhihao 2a1d2afaca Vulkan Mobile: Fix reading builtins in `light()` of spatial shader 2025-06-11 21:32:59 +08:00
Rémi Verschelde a1ef1130ad
Merge pull request #107364 from DarioSamo/adreno-fix-interpolators
Upgrade normal interpolators to FP32 to fix Adreno.
2025-06-10 17:56:29 +02:00
Dario e53b67df03 Upgrade normal interpolators to FP32 to fix Adreno. 2025-06-10 12:26:58 -03:00
David Snopek 951ca21f02 Vulkan Mobile: Fix crash from shader compilation with `USE_RADIANCE_CUBEMAP_ARRAY` 2025-06-10 09:19:32 -05:00
Rémi Verschelde 40b251ba8e
Merge pull request #103899 from Ivorforce/idiomatic-template-vargs
Use idiomatic templating vargs in a few places to reduce code.
2025-06-10 12:29:40 +02:00
Thaddeus Crews fc523ec5f6
Merge pull request #107230 from dsnopek/rd-depth-image-swizzle
RendererRD: Fix swizzle on depth formats
2025-06-09 17:08:49 -05:00
Thaddeus Crews 7584546399
Merge pull request #101941 from dsnopek/opengl-global-uniform-sampler2darray
Fix wrong default texture for global uniforms of type `sampler2DArray`
2025-06-09 17:08:47 -05:00
SpockBauru fe1d499aa4 Mobile: Fix lightmap instances count 2025-06-09 17:58:17 -03:00
Dario 46277836a6 Optimize Mobile renderer by using FP16 explicitly. 2025-06-09 14:39:35 -03:00
Lukas Tenbrink df7dab4946 Use idiomatic templating vargs in a few places to reduce code. 2025-06-08 12:24:07 +02:00
SaracenOne 761d5474dc Shader compilation fix:
Fix shader compilation crash on custom shaders
using VIEW_INDEX on Vulkan Clustered Forward
renderer.
2025-06-08 03:29:47 +01:00
David Snopek 316b9aa6d2 RendererRD: Fix swizzle on depth formats 2025-06-06 16:30:17 -05:00
Rémi Verschelde 26df04377e
Merge pull request #107210 from dsnopek/vulkan-mobile-fix-missing-view-index
Fix crash when using `VIEW_INDEX` in shader with Vulkan mobile renderer
2025-06-06 17:38:23 +02:00
Rémi Verschelde a29e66eba4
Merge pull request #107169 from clayjohn/rd-texture-layers-crash
Avoid crash when texture layers is greater than 1 and format is not an ARRAY type
2025-06-06 17:37:39 +02:00
Rémi Verschelde e6d0b32566
Merge pull request #106673 from retrotails/master
Fix light range in VoxelGI
2025-06-06 17:37:09 +02:00
Apples 7574a5dbb3 Add depth function for spatial materials 2025-06-06 09:21:19 -05:00
David Snopek 56c2ce00d6 Fix crash when using `VIEW_INDEX` in shader with Vulkan mobile renderer 2025-06-06 07:03:35 -05:00
clayjohn cc9aedd898 Avoid crash when texture layers is greater than 1 and format is not an ARRAY type 2025-06-05 10:21:19 -07:00
David Snopek fa30719814 Fix wrong default texture for global uniforms of type `sampler2DArray` 2025-06-05 11:12:03 -05:00
Rémi Verschelde 37982d4a01
Merge pull request #107116 from beicause/expose-mesh-surface-update-index-buffer
Expose `RS.mesh_surface_update_index_region`
2025-06-05 17:24:54 +02:00
LuoZhihao 63c124fa45 Expose `RS.mesh_surface_update_index_region`
And `mesh_surface_get_format_index_stride`
2025-06-05 19:35:59 +08:00
Rémi Verschelde 1e9200d065
Merge pull request #107099 from Kaleb-Reid/fix-sun-scatter
Increase directional light energy in sky for fog sun scatter
2025-06-05 13:13:40 +02:00
Rémi Verschelde 088ef7b6f6
Merge pull request #100283 from devloglogan/vk-motion-vectors
Implement motion vectors in mobile renderer
2025-06-05 13:10:20 +02:00
Kaleb Reid bac9427325 Fix sky energy in fog sun scatter + colour space discrepancy in compatibility 2025-06-04 13:59:53 -07:00
Aaron Franke 5777a88b76
Support 64-bit sizes in Compression 2025-06-03 00:03:01 -07:00
Thaddeus Crews 7a3d2f6779
Merge pull request #106606 from aaronfranke/pow2_64
Add 64-bit versions of core power of 2 functions
2025-06-02 18:51:56 -05:00
Thaddeus Crews 167a9e33d3
Merge pull request #106880 from dsnopek/meta-depth-api-nonhacks
Minor rendering and XR changes to allow Meta enivornment depth API to work entirely from GDExtension
2025-06-02 18:51:19 -05:00
Aaron Franke f6f1df7d73
Add 64-bit versions of core power of 2 functions 2025-06-01 23:11:12 -07:00
K. S. Ernest (iFire) Lee bc2bf7de74 Avoid -Wmissing-declarations warning in RenderingShaderContainer 2025-05-31 14:01:30 -07:00
devloglogan 3b70fbdc3c Implement motion vectors in mobile renderer 2025-05-30 13:09:54 -05:00
Stuart Carnie 06ebcc911d Metal: Fix multi-view support
Introduced in #102552
2025-05-29 11:30:26 +10:00
Thaddeus Crews de37627404
Merge pull request #102552 from DarioSamo/shader-baker
Add shader baker to project exporter.
2025-05-28 17:09:38 -05:00
Thaddeus Crews 90c75d02dd
Merge pull request #106732 from stuartcarnie/rd_reduce_allocations
Renderer: Eliminate `String` allocations for all labels in the renderer
2025-05-28 09:47:43 -05:00
Thaddeus Crews 7830c5fadc
Merge pull request #106844 from LiveTrower/dfg-reconstruction
Fix missing ibl reconstruction from DFG multiscattering
2025-05-28 09:47:41 -05:00
Thaddeus Crews 601a3c5e8a
Merge pull request #106411 from SpockBauru/fix-reflectionprobe-reflectionmask-mobile
Fix Reflection Mask not working on Mobile
2025-05-28 09:47:37 -05:00
Thaddeus Crews 8c6a88cda6
Merge pull request #106781 from max99x/fix-shader-crash
Fix shader compiler crash when parsing case labels with non-existent vars.
2025-05-28 09:47:36 -05:00
Stuart Carnie 7d93119353 Renderer: Eliminates `String` allocations for all labels in the renderer
Uses `Span<char>` to avoid additional allocations in the graph.
2025-05-28 06:01:35 +10:00
David Snopek 0fd0feb772 Minor rendering and XR changes to allow Meta enivornment depth API to work entirely from GDExtension 2025-05-27 13:06:31 -05:00
Dario 5a30a7e7cd Add shader baker to project exporter.
Metal Support contributed by Migeran (https://migeran.com) and Stuart Carnie.

Co-authored-by: Stuart Carnie <stuart.carnie@gmail.com>
Co-authored-by: Gergely Kis <gergely.kis@migeran.com>
2025-05-27 12:45:27 -03:00
SpockBauru 23e6d7bfc7 Fix Reflection Mask not working on Mobile 2025-05-26 13:37:18 -03:00
Lukas Tenbrink 4cb8a0c77e Add `resize_initialized` and `resize_uninitialized` to `Vector`. These functions serve as replacements for `resize`, to make sure the caller understands whether elements need to be initialized 'by hand' after the call. 2025-05-26 18:35:41 +02:00
Thaddeus Crews 50aa801351
Merge pull request #106731 from stuartcarnie/metal_fx_temporal_no_mobile
Metal: Disable MetalFX Temporal for `mobile` rendering method
2025-05-26 11:24:43 -05:00
Thaddeus Crews e89c4b0f9f
Merge pull request #102330 from RGDTAB/add_partial_smaa
Add SMAA 1x to screenspace AA options
2025-05-26 11:24:35 -05:00
Alfonso Grimaldo e1e1933244
fix missing ibl reconstruction from dfg multiscattering 2025-05-24 20:10:02 -06:00
Max Shawabkeh d042763750 Fix shader compiler crash when parsing case labels with non-existent vars. 2025-05-24 13:19:35 -07:00
Stuart Carnie fbe560a97c Metal: Disable MetalFX Temporal for `mobile` rendering method
It isn't supported, as `mobile` can't provide motion vectors. We can
revisit once it is supported via #100283.
2025-05-24 06:48:05 +10:00
BlueCube3310 546b40eee2 Mobile: Move _setup_lightmaps before _fill_render_list 2025-05-23 14:28:45 +02:00
Thaddeus Crews 452dc667fb
Merge pull request #106592 from beicause/shader-fix-editor-mat-default
Shader: Fix the default behavior when mat uniforms are null
2025-05-22 12:15:08 -05:00
Raymond DiDonato 6b99608950 Add SMAA 1x 2025-05-21 15:02:09 -04:00
clayjohn 9a1def8da1 Add new StandardMaterial properties to allow users to control FPS-style objects (hands, weapons, tools close to the camera)
Add new shader built in Z_CLIP_SCALE to easily adjust clipping distance to avoid clipping walls etc.

Add fov_override to StandardMaterial3D to easily have a custom FOV for FPS objects

Add IN_SHADOW_PASS built-in to shaders for tweaking materials without impacting shadow maps
2025-05-21 10:16:05 -03:00
retrotails ba06234309 Fix light range in voxel GI 2025-05-21 06:49:35 -04:00
LuoZhihao 4621d3e1f4 Shader: Fix the default behavior when mat uniforms are null 2025-05-21 13:28:39 +08:00
Rémi Verschelde 25a3c27c41
Merge pull request #105628 from rsanchezsaez/apple/ios-visionos-4.5
Native visionOS platform support
2025-05-20 23:09:07 +02:00
Thaddeus Crews a12e9d5c31
Merge pull request #106493 from DarioSamo/mobile-scs-permutations
Reduce amount of permutations in mobile shader.
2025-05-20 11:37:26 -05:00
BlueCube3310 67a2c69c78 Mobile: Disable subpass post-processing when using FXAA 2025-05-20 13:21:59 +02:00