Commit Graph

3411 Commits

Author SHA1 Message Date
Thaddeus Crews 7dae5da198 Style: Convert *.gen.inc to *.gen.h 2026-02-05 19:47:56 -06:00
Stuart Carnie b815c88dec Metal: Refactor for future Metal 4, switch to C++; fix dynamic uniforms 2026-02-06 07:07:10 +11:00
Thaddeus Crews 2b44ed5299 Merge pull request #115865 from blueskythlikesclouds/transfer-worker-race-condition
Fix transfer worker race condition.
2026-02-05 09:32:39 -06:00
Thaddeus Crews 7e91c61fec Merge pull request #115874 from clayjohn/sky-crash
Avoid reading from sky pointer when rendering background without sky
2026-02-05 09:32:29 -06:00
Thaddeus Crews 79eb6694a1 Merge pull request #112381 from Ivorforce/no-right-align
Don't right-align escaped newlines (e.g. for `#define`)
2026-02-05 09:18:36 -06:00
Lukas Tenbrink c5df0cb82b Don't right-align escaped newlines, e.g. for #define. This has previously led to long diffs in the commit history. 2026-02-04 19:31:28 +01:00
clayjohn da7540f3f1 Avoid reading from sky pointer when rendering background without sky 2026-02-04 09:44:15 -08:00
Skyth de7fcfaf3b Fix transfer worker race condition. 2026-02-04 16:15:41 +03:00
Dario 703b3f3dc2 Add structure padding where necessary for push constants.
Co-authored-by: Skyth <19259897+blueskythlikesclouds@users.noreply.github.com>
2026-02-04 12:12:19 +01:00
Rémi Verschelde d2ed1773fc Vulkan: Update all components to Vulkan SDK 1.4.335.0
VulkanMemoryAllocator not updated as it's not versioned together with the SDK, and it
often requires more work.

SPIRV-Reflect: Fix reflection code and remove Godot's SC parsing patch.

Co-authored-by: Dario <dariosamo@gmail.com>
2026-02-04 11:22:17 +01:00
Thaddeus Crews 4cce65bea6 Merge pull request #114678 from Image-unavailable/culling-wars-pr
Make directional lights' tighter shadow caster culling truly tight (implement per-cascade culling)
2026-02-03 18:06:49 -06:00
Thaddeus Crews 0a843c13f8 Merge pull request #111464 from LiveTrower/clearcoat-improvements
Clearcoat improvements and fixes
2026-02-03 08:14:00 -06:00
Thaddeus Crews c4e9378020 Merge pull request #107234 from jon1solution/select-near-lights-gles3-mobile
Select relevant 3D lights per mesh on GLES3 and Mobile renderers
2026-02-03 08:13:57 -06:00
jon1solution 979d3e58d0 Keeping the top N lights per mesh in the culling phase.
Previously, each mesh was paired up with the first N of each Omni- and Spot-lights.
Now each light is scored based on its distance to the mesh, energy, and range.
The new code uses a heap to track the best N lights (of each type) for predictability.
2026-02-02 08:59:30 -08:00
Skyth 482d9313a2 Fix accidental write-combined memory reads in canvas renderer. 2026-02-02 15:55:12 +03:00
Rémi Verschelde 429750f60b Merge pull request #115093 from Ivorforce/hashmap-explicit-copy
Change copy constructors of `HashMap` and `AHashMap` from implicit to explicit
2026-01-31 22:50:51 +01:00
Rémi Verschelde 2db61bc397 Merge pull request #114732 from AR-DEV-1/auto-exposure-notification-update
Update the notification for Auto-exposure
2026-01-31 22:50:45 +01:00
Thaddeus Crews 6d67a99925 Merge pull request #115606 from clayjohn/sky-border-fix
Ensure that uv border size is passed in to sky rendering functions
2026-01-30 09:32:13 -06:00
Thaddeus Crews fbbb8a921b Merge pull request #115309 from Ivorforce/localvector-explicit-copy
Change copy constructor of `LocalVector` from implicit to explicit
2026-01-30 09:32:07 -06:00
Thaddeus Crews fd6e80d4e9 Merge pull request #105701 from ColinSORourke/DrawableTexture
Implement DrawableTextures
2026-01-30 09:32:05 -06:00
Clay John b4b20e95ed Ensure that uv border size is passed in to sky rendering functions both when rendering the octmap and when rendering the sky as a background 2026-01-29 14:14:49 -08:00
Colin O'Rourke 63f6e3691c DrawableTextures
Implementing DrawableTextures based on: https://github.com/godotengine/godot-proposals/issues/7379
2026-01-29 01:16:06 -08:00
Thaddeus Crews 135cd6eea0 Merge pull request #115530 from clayjohn/render-target-discard
Remove `is_discardable` flag on render target
2026-01-28 17:58:14 -06:00
Image-unavailable a17e172549 Make directional lights' tighter shadowcaster culling truly tight (implement per-cascade culling) 2026-01-29 00:07:53 +01:00
Clay John 3cf0881c36 Remove is_discardable flag on render target since it is not needed and creates issues on NVidia devices 2026-01-28 11:08:40 -08:00
Thaddeus Crews ef313ecc46 Merge pull request #115177 from blueskythlikesclouds/unique-buffers-per-pass
Give every pass its own unique environment uniform buffer.
2026-01-28 12:27:13 -06:00
Nintorch eb019511ed Optimize files that #include input.h header 2026-01-28 14:21:00 +05:00
LiveTrower 60097eb3ce clearcoat fixes and improvements 2026-01-27 18:02:01 -06:00
Thaddeus Crews 75cd151cb0 Merge pull request #113781 from clayjohn/rd-discardable
Mark more textures as discardable
2026-01-27 15:18:31 -06:00
Thaddeus Crews 04a2ae7ed4 Merge pull request #99119 from Fahien/fahien/raytracing-base
Vulkan raytracing plumbing
2026-01-27 15:18:24 -06:00
Lukas Tenbrink c56c297cee Remove geometry_3d include from rendering_server.h, to reduce compile time.
Change `Geometry3D` from class to namespace.
2026-01-27 18:12:38 +01:00
Antonio Caggiano 27e4f24800 raytracing: Initial Vulkan support
- Vulkan implementations in `RenderingDeviceDriverVulkan`.
- Raytracing instruction list in `RenderingDeviceGraph`.
- Functions to create acceleration structures and raytracing pipelines
  in `RenderingDevice`.
- Raygen, Miss, and ClosestHit shader stages support.
- GDScript bindings.
- Update classes documentation.
- Unimplemented placeholders for Metal and D3D12.
- Build acceleration structure command.
- Expose a shader preprocessor define.
- Align build scratch address.
- Create STB after creating the pipeline.
- Separate acceleration structure barriers.
- Use transforms in TLAS instances.
- AnyHit and Intersection stages.
- Optionally set acceleration structure build input buffer usage.
- Introduce instances buffer.
- Move scratch buffers to RenderingDevice.
- Rename AccelerationStructureGeometryBits.
- Use regular buffer creation and free routines for scratch buffer.
- Store trackers in acceleration structures.
- Bump Shader SPIR-V version to 1.4
- Add Position attribute location in blas_create.
- Encapsulate MoltenVK check in preprocessor macro.
- Split SUPPORTS_RAYTRACING for pipeline and query.
2026-01-27 16:17:45 +01:00
Thaddeus Crews b3af0f641a Merge pull request #114821 from rsanchezsaez/apple/override-improvements
AppleEmbedded: `renderer_compositor_rd.h` override improvements
2026-01-26 15:01:37 -06:00
Thaddeus Crews b268b1013d Merge pull request #115292 from luzader/patch-1
Use sky's corrected camera projection for `combined_reprojection`
2026-01-26 13:14:28 -06:00
Thaddeus Crews 4738ce72e3 Merge pull request #115026 from rothej/fix-94567-fog-shader-compilation-with-fog-disabled
Fix shader compilation error when writing to `FOG` when `render_mode fog_disabled`
2026-01-26 13:14:27 -06:00
Thaddeus Crews 0f8a1c9db2 Merge pull request #115147 from BastiaanOlij/fix_multiview_fixed_size
Apply fixed size properly for mono/stereo rendering.
2026-01-26 13:14:23 -06:00
Thaddeus Crews 3dc64a564b Merge pull request #115124 from blueskythlikesclouds/2x-msaa-pick-first
Pick the sample closer to the camera when resolving 2x MSAA.
2026-01-26 13:14:20 -06:00
Lukas Tenbrink 63272b23ef Make LocalVector copy constructor explicit. 2026-01-23 20:52:03 +01:00
Dario c2b068d08c Fix stale reference bug in FramebufferCache. 2026-01-23 10:43:09 -03:00
Zac Luzader 56e646c217 Use sky's corrected camera projection for combined_reprojection 2026-01-22 19:26:17 -07:00
Lukas Tenbrink 1825e89787 Change copy constructors of HashMap and AHashMap from implicit to explicit. 2026-01-21 13:01:23 +01:00
Skyth 1d9910cac4 Give every pass its own unique environment uniform buffer. 2026-01-20 19:24:20 +03:00
Bastiaan Olij aac883849e Apply fixed size properly for mono/stereo rendering. 2026-01-20 23:19:45 +11:00
Clay John c5d21df245 Increase precision of ninepatch source rect to ensure pixel perfect alignment 2026-01-19 14:52:56 -08:00
Skyth f975cfe037 Pick the sample closer to the camera when resolving 2x MSAA. 2026-01-19 22:02:57 +03:00
Joshua Rothe 7a2f188382 Fixing shader compilation error when writing to FOG when render_mode fog_disabled.
Always declares FOG variable regardless of fog state. Previously, only declared
fog if FOG_DISABLED was undefined. This caused errors if the code tried to
write to fog later. Exists as a dummy variable when unused.

Signed-off-by: Joshua Rothe <joshrothe@gmail.com>
2026-01-16 02:12:52 -07:00
Skyth 329a9f1fb2 Fix buffers in D3D12 not getting cleared with the right usage. 2026-01-15 14:50:51 +03:00
Rémi Verschelde 4db916dac6 Merge pull request #114908 from clayjohn/RD-env-roughness
Overhaul compute shader based environment roughness calculation to improve performance and quality
2026-01-13 22:20:59 +01:00
Rémi Verschelde 427eab91a2 Merge pull request #114907 from clayjohn/RD-env-filter
Fix downsampled radiance map generation
2026-01-13 22:20:55 +01:00
clayjohn e33515c2e6 Overhaul compute shader based environment roughness calculation to improve performance and quality 2026-01-12 22:07:56 -08:00