Commit graph

4849 commits

Author SHA1 Message Date
Thaddeus Crews
b597f93960
Merge pull request #115952 from Nintorch/remove-joypadsdl-singleton
Remove unused `JoypadSDL::singleton`
2026-02-06 08:17:59 -06:00
Thaddeus Crews
f6b89548a4
Merge pull request #115927 from Scrawach/fix-case-insensitive-warning-for-windows
Fix warnings relating to case mismatch in file path for windows
2026-02-06 08:17:53 -06:00
Nintorch
1469287ef7 Remove unused JoypadSDL::singleton 2026-02-06 16:44:46 +05:00
scrawach
576eb17e14 Fix warnings relating to case mismatch in file path for windows 2026-02-06 01:38:46 +03: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
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
Rémi Verschelde
805c9d4b18
Vulkan: Update VMA to 3.3.0 2026-02-04 11:22:17 +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
3a2865861d
Merge pull request #113873 from RyanVail/joycon-serial-number
Input: Add serial number to `joy_info`
2026-02-03 08:14:01 -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
ea6fec22ef
Input: Added serial number to joy_info
Co-Authored-By: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
Co-Authored-By: RyanVail <111651152+ryanvail@users.noreply.github.com>
2026-02-03 07:37:15 -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
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
Thaddeus Crews
5385a7ba38
Merge pull request #115504 from blueskythlikesclouds/d3d12-aniso-nearest-fix
Handle nearest filtering modes in D3D12 driver when anisotropy is enabled.
2026-01-30 09:32:09 -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
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
Skyth
2bd91c6646 Handle nearest filtering modes in D3D12 driver when anisotropy is enabled. 2026-01-28 13:18:18 +03:00
LiveTrower
60097eb3ce clearcoat fixes and improvements 2026-01-27 18:02:01 -06:00
Thaddeus Crews
77579f93e6
Merge pull request #111679 from Nintorch/joypad-motion-sensors
Add support for joypad motion sensors
2026-01-27 15:18:37 -06:00
Thaddeus Crews
2450bb0c75
Merge pull request #114449 from ndarilek/a11y-regions
GUI: Add accessibility region role for landmark navigation
2026-01-27 15:18:27 -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
Thaddeus Crews
ea1e6640f0
Merge pull request #115434 from syntaxerror247/landscape-or-portrait
Add device orientation change signal to DisplayServer
2026-01-27 15:18:22 -06:00
Thaddeus Crews
c161d13b1b
Merge pull request #115452 from Ivorforce/rendering-server-no-geometry
Reduce compile time by removing `geometry_3d.h` include from `rendering_server.h`
2026-01-27 15:18:19 -06:00
Anish Kumar
e2369a834b Add device orientation change signal in DisplayServer
This PR:
- Fixes the orientation detection logic on Android
- Adds an orientation_changed signal in DisplayServer

Co-Authored-By: bruvzg <7645683+bruvzg@users.noreply.github.com>
2026-01-27 23:35:44 +05:30
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
b40f4ae52f
Merge pull request #115218 from Nintorch/fix-joy-info-raw-name-utf8
Fix incorrect reading of joypad UTF8 `raw_name` in `Input.get_joy_info()`
2026-01-27 09:04:16 -06:00
Thaddeus Crews
ed0ae97d98
Merge pull request #114922 from DarioSamo/android-platform-gl3-fallback-fix
Fix fallback to OpenGL3 from Vulkan initialization on Android.
2026-01-27 09:04:14 -06:00
Thiago Lelles Fernandes
6ff5f449a9 Added support for the Home LED on NS Controllers
Changed the implementation

Instead of modifying the hint value, now it works like the PS4 ones, but using MONO instead of RGB.

NS Controllers LED Support Added
2026-01-26 22:20:49 -03:00
Thaddeus Crews
0c7bb27bcd
Merge pull request #114076 from blueskythlikesclouds/d3d12-reduce-unnecessary-calls
Reduce unnecessary calls in D3D12 driver.
2026-01-26 15:01:42 -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
cfc5ec93d4
Merge pull request #114767 from unixfan2/fix/114606-compat-wrong-texunit
Fix sky radiance texunit in compatibility renderer
2026-01-26 13:14:26 -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
Nintorch
a3eb202b25 Add support for joypad motion sensors 2026-01-26 15:49:55 +05:00
Lukas Tenbrink
63272b23ef Make LocalVector copy constructor explicit. 2026-01-23 20:52:03 +01:00
Nintorch
059cc936c4 Fix non-Xinput joypads having "xinput_index" 2026-01-22 11:15:04 +05:00
Nintorch
72ed330f98 Fix UTF8 joypad raw_name in get_joy_info() 2026-01-22 00:08:17 +05:00
Lukas Tenbrink
1825e89787 Change copy constructors of HashMap and AHashMap from implicit to explicit. 2026-01-21 13:01:23 +01:00
Bastiaan Olij
aac883849e Apply fixed size properly for mono/stereo rendering. 2026-01-20 23:19:45 +11:00
Nolan Darilek
d53ab67b83 GUI: Add accessibility region role for landmark navigation
Adds ROLE_REGION to allow controls to be marked as accessibility
regions/landmarks.

- Add `accessibility_region` property to Control
- Add ROLE_REGION to DisplayServer and AccessKit mapping
- Prevent Container/ScrollContainer from overriding region role
- Fix TabContainer to update accessibility when tabs change
- Mark editor docks, main screen, bottom panel, and scene tabs as regions
2026-01-19 08:12:33 -05:00
Dario
f714eaba0d Do not store SPIR-V in memory unless pipeline statistics are used. 2026-01-16 18:51:33 -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
Dario
542f8ddf22 Fix fallback to OpenGL3 from Vulkan initialization on Android. 2026-01-14 23:55:21 -03:00
Rémi Verschelde
0dd64f4224
Merge pull request #114851 from Nintorch/set-joy-light-return-type
Change return type for `Input.set_joy_light()` from `bool` to `void`
2026-01-13 22:20:50 +01:00
Ricardo Sanchez-Saez
4bf4d10f5e
Avoid warning when compiling on visionOS 26 SDK 2026-01-12 15:03:21 -08:00
Nintorch
22a4f9fd9c Refactor Input.set_joy_light() 2026-01-11 22:52:40 +05:00
Stuart Carnie
541f62617f Metal: Fix dynamic uniform buffer offset corruption when rebinding sets
When the same uniform set is bound multiple times within a render pass
(e.g., OPAQUE pass then ALPHA pass with different instance buffers),
the dynamic offset bits were being OR'd together, corrupting the packed
frame indices.

For example, if OPAQUE binds set 1 with frame_idx=1 (0x10) and ALPHA
binds set 1 with frame_idx=2 (0x20), the OR produces 0x30 instead of
the correct 0x20, causing the shader to read from the wrong buffer
offset.

This fix clears the relevant bits for each set being bound before
OR'ing the new values, ensuring only the latest frame indices are used.

Fixes rendering artifacts in the mobile renderer which uses two dynamic
uniforms (uniform buffer + storage buffer) in set 1, unlike the clustered
renderer which only has one.
2026-01-09 16:34:24 +11:00
Peter Friedrich
6f2eaf0f8e Fix sky radiance texunit in compatibility renderer (fixes #114606) 2026-01-08 23:32:15 +01:00
Rémi Verschelde
0449f4bce1
Merge pull request #114657 from DarioSamo/immutable-sampler-descriptor-fix
Always add Vulkan descriptor count for immutable samplers to descriptor pool.
2026-01-08 17:15:33 +01:00