Commit graph

4897 commits

Author SHA1 Message Date
Rémi Verschelde
a447ac95ec
Move DisplayServer enums and typedefs to DisplayServerEnums
This will allow decoupling `display_server.h` from a number of headers in the
codebase which only require those enums and not all the DisplayServer API.
2026-03-03 12:44:02 +01:00
Thaddeus Crews
1ae6976471
Merge pull request #110083 from WhalesState/gles3-texture-repeat
Fix texture repeat mode for GLES3 renderer.
2026-03-02 15:54:01 -06:00
Pāvels Nadtočajevs
1306221592
Move accessibility methods/enums from DisplayServer to the AccessibilityServer dedicated singleton. 2026-03-02 13:48:29 +02:00
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
Mounir Tohami
c0a648de76 Fix textures repeat mode for GLES3 renderer.
Co-authored-by: kleonc <9283098+kleonc@users.noreply.github.com>
2026-03-01 06:57:34 +02: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