Commit Graph

4893 Commits

Author SHA1 Message Date
Rémi Verschelde f1ce0e6510 Merge pull request #106814 from stuartcarnie/rendering/hdr-output
Apple: Support output to EDR (HDR) displays
2026-03-02 12:35:22 +01:00
StarryWorm 357fa00a4a rm class_db.h from resource.h 2026-02-27 19:08:29 -05:00
Thaddeus Crews e42575d23f Merge pull request #113956 from allenwp/colour/remove-LinearToSRGB-clamping
Remove clamping from LinearToSRGB visual shader node.
2026-02-27 08:49:33 -06:00
Thaddeus Crews e380a41752 Style: Add class_db.h includes explicitly 2026-02-26 15:50:28 -06:00
Stuart Carnie d5504ffc69 feat: Add EDR support to Metal and all Apple platforms 2026-02-27 05:23:56 +11:00
Allen Pestaluky dce001aee7 Remove clamping from LinearToSRGB visual shader node. 2026-02-26 11:49:26 -05:00
Skyth b394ca0a7a Upgrade D3D12MA. 2026-02-26 14:25:45 +03:00
Rémi Verschelde e3b60a1530 Move RenderingMethod::RenderInfo to RenderingServerTypes
Also move RS::scaling_3d_mode_type to RenderingServerEnums.
2026-02-25 20:17:28 +01:00
Rémi Verschelde 671864fb05 Decouple TextureStorage from RenderingServer
By moving RS::TextureDetect(Roughness)Callback and RS::TextureInfo
to RenderingServerTypes.
2026-02-25 20:17:28 +01:00
Rémi Verschelde cb9b4cff90 Decouple MeshStorage from RenderingServer
By moving RS::SurfaceData and RS::MeshInfo to RenderingServerTypes.

This notably allows removing RS dependency from `mesh.h`.
2026-02-25 20:17:28 +01:00
Rémi Verschelde a85df7cc73 Minimize includes in renderer_compositor.h 2026-02-25 20:17:27 +01:00
Rémi Verschelde 0ce92073ae Move RS::ShaderNativeSourceCode to RenderingServerTypes to reduce dependencies on RS
On my machine, this reduces incremental compilation time after an edit of
`rendering_server.h` by 1s, and paves the way for more decoupling in
rendering code.
2026-02-25 20:17:27 +01:00
Rémi Verschelde f0a448540e Misc dependency improvements for files depending on rendering_server.h
On my machine, this reduces incremental compilation time after an edit of
`rendering_server.h` by 3s.
2026-02-25 20:17:27 +01:00
Rémi Verschelde 25bfae8ff9 Remove RenderingServer::map_scaling_option_to_stretch_mode and cleanup boot splash code
Removes RS as a dependency in `project_settings.cpp` (which was a bug,
`core` shouldn't include `servers`). This doesn't have a big impact on
incremental rebuild time by itself.

Also move helper `get_splash_stretched_screen_rect` to RenderingServerTypes.
2026-02-25 20:17:27 +01:00
Rémi Verschelde a3cb56dd38 Decouple RenderingServer from XR/OpenXR headers
Move BlitToScreen to RenderingServerTypes.
2026-02-25 20:17:23 +01:00
Rémi Verschelde f5a290ac46 Move RenderingServer enums to a dedicated RenderingServerEnums (RSE) namespace
A number of headers in the codebase included `rendering_server.h` just for
some enum definitions. This means that any change to `rendering_server.h` or
one of its dependencies would trigger a massive incremental rebuild.

With this change, we decouple a number of classes from `rendering_server.h`,
greatly speeding up incremental rebuilds for that area.

On my machine, this reduces incremental compilation time after an edit of
`rendering_server.h` by 60s (from 2m57s).
2026-02-25 19:43:03 +01:00
Thaddeus Crews 637ae4c514 Merge pull request #114336 from LunaCapra/bent-normals-compatibility
Add bent normal map support for the compatibility renderer
2026-02-25 11:25:10 -06:00
Pāvels Nadtočajevs d09f6d879a Fix UTF-8 handling in GLES3 shaders. 2026-02-25 15:08:53 +02:00
Thaddeus Crews 582a4f0d5a Merge pull request #115520 from Calinou/codestyle-tweak-opengl-glow-enum-name
Rename glow structs in Compatibility renderer to match code style guidelines
2026-02-23 11:58:56 -06:00
Rémi Verschelde cd650f2336 GLES3: Move some static utils to new RasterizerUtilGLES3
This helps remove dependencies on RasterizerGLES3 in many files, which is
useful as RasterizerGLES3 basically includes everything, so it brings a lot
of transient includes.
2026-02-20 11:29:39 +01:00
Rémi Verschelde 13bb08286e GLES3: Remove unnecessary includes 2026-02-20 11:29:38 +01:00
Rémi Verschelde 715748bab4 GLES3: Tidy up includes for consistency 2026-02-20 11:20:44 +01:00
Rémi Verschelde db77a462b4 Merge pull request #116395 from bruvzg/ios_sc
[iOS] Add UIScene lifecycle events.
2026-02-20 11:16:44 +01:00
Rémi Verschelde 4654dbb0ac Merge pull request #115565 from bruvzg/ac_inv
[Accessibility] Handle adapter activation/deactivation.
2026-02-20 11:16:31 +01:00
Thaddeus Crews 5e10528397 Merge pull request #114895 from Nintorch/is-joy-vibrating
Add support for joypad vibration checking
2026-02-19 20:29:13 -06:00
Nintorch c83c672d61 Add support for joypad vibration checking 2026-02-19 21:34:06 +05:00
Thaddeus Crews 4d4f7291ed Merge pull request #116355 from blueskythlikesclouds/get-total-memory-optimization
Optimize `get_total_memory_used` in D3D12 and Vulkan.
2026-02-18 12:04:33 -06:00
Thaddeus Crews afa6d6071b Merge pull request #114316 from Nintorch/sdl-joypad-ios-visionos
Add support for SDL3 joystick input driver for iOS
2026-02-18 12:04:32 -06:00
Thaddeus Crews 15558cb886 Merge pull request #108111 from Repiteo/core/sanitizer-restructure
Core: Restructure sanitizers
2026-02-18 12:04:30 -06:00
Nintorch 73fcc0d645 Add SDL joystick input for iOS 2026-02-18 20:37:22 +05:00
Pāvels Nadtočajevs 876dcc8a5d [Accessibility] Handle adapter activation/deactivation. 2026-02-18 16:54:40 +02:00
Rémi Verschelde ad4b910a10 Minimize include dependencies of display_server.h
- Removes `native_menu.h` dependency from `display_server.h`.
  It's now forward-declared in all DisplayServer implementations and should
  be included in the .cpp's.
- Removes some unused `rb_set.h` and `rb_map.h` dependencies, which leads to
  having to include them explicitly in half the scene and editor codebase...
  which shows how much we depend on `display_server.h`.
- Forward-declare `input_event.h`, so now we need only `keyboard.h`.
2026-02-17 19:45:31 +01:00
Thaddeus Crews fa56f71ddd Merge pull request #107452 from Ivorforce/bit-math-header
Move binary math functions to `Math` namespace in `math_funcs_binary.h`
2026-02-17 09:28:31 -06:00
Lukas Tenbrink 0ea5ece984 Move binary math functions to Math namespace in math_funcs_binary header. 2026-02-17 12:24:35 +01:00
Pāvels Nadtočajevs b03f0a9e24 [iOS] Add UIScene lifecycle events. 2026-02-17 09:46:04 +02:00
Stuart Carnie 8f7f7b2703 Metal: Various fixes
- Handle border colour availability check with fallback
- Update patch for metal-cpp to add APIs used by Godot
- Fix segfault when freeing MDImmediateLibrary shaders that are still
  in flight
- Change MTL::Texture::allocatedBytes call to safe, for visionOS
2026-02-17 06:15:48 +11:00
Skyth 8ed849e416 Optimize get_total_memory_used in D3D12 and Vulkan. 2026-02-16 17:13:06 +03:00
Thaddeus Crews 2d5b30c476 Merge pull request #115963 from blueskythlikesclouds/reduce-includes-to-rd
Reduce includes to rendering device.
2026-02-12 08:19:16 -06:00
Josh Jones b8389cc76b Support output to HDR monitors
Co-authored-by: Alvin Wong <alvinhochun@gmail.com>
Co-authored-by: Allen Pestaluky <allenpestaluky@gmail.com>
2026-02-11 22:13:26 -07:00
Skyth 8fbf2f1e14 Reduce includes to rendering device.
Co-authored-by: Lukas Tenbrink <lukas.tenbrink@gmail.com>
2026-02-10 16:58:50 +03:00
Johan Aires Rastén 2acdfdbbbc Print file path when failing to load dynamic library 2026-02-10 13:34:26 +01:00
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