Commit Graph

3468 Commits

Author SHA1 Message Date
Rémi Verschelde e015e8bde4 Remove unused includes in core with clangd-tidy 2026-03-11 06:41:36 +01:00
Rémi Verschelde f1d63278d7 Remove unused includes in servers with clangd-tidy 2026-03-10 21:42:23 +01:00
Yyf2333 282e4544b0 Split VariantCaster from binder_common.h 2026-03-10 17:59:33 +08:00
Thaddeus Crews cc970e91e5 Merge pull request #116888 from Chaosus/shader_fix_struct
Allow using a struct name as a variable name in shaders
2026-03-09 15:18:11 -05:00
mxtherfxcker d5ebd33d72 Fix SDFGI ignoring visual layers of geometry instances 2026-03-06 12:35:16 -06:00
StarryWorm 3cb2d376f8 Get rid of all unnecessary class_db.h includers 2026-03-04 17:40:05 -05:00
Thaddeus Crews 4296a0c158 Merge pull request #116752 from BastiaanOlij/cleanup_is_frustum
Clean up `is_frustum` projection code
2026-03-04 14:32:33 -06:00
Rémi Verschelde eabb9a63d4 Rename callable_method_pointer.h to callable_mp.h and include it explicitly
This allows removing it from `class_db.h`, significantly reducing the amount of files
that include it transitively.

Also includes some include cleanup in `control.h` and `rich_text_label.h` done while
ensure they don't depend on `callable_mp`.
2026-03-04 16:23:23 +01:00
Rémi Verschelde 765362b033 Explicitly include core/config/engine.h where used 2026-03-04 10:17:10 +01:00
Rémi Verschelde f332faf46b Explicitly include core/os/os.h where used 2026-03-04 09:54:10 +01:00
Rémi Verschelde 8c0f175c94 Decouple RenderingServer from as much of the codebase as possible
Notably decouples it from:
- AccessibilityServer
- DisplayServer
- Viewport
- Window
2026-03-03 12:48:07 +01:00
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 1aaea38e7f Merge pull request #111573 from StarryWorm/rm-class_db.h-from-resource.h
Core: remove `class_db.h` include from `resource.h`
2026-02-28 13:55:24 -06:00
Chaosus 9c3e52f38e Allow using a struct name as a variable name in shaders 2026-02-28 15:08:00 +03:00
StarryWorm 357fa00a4a rm class_db.h from resource.h 2026-02-27 19:08:29 -05:00
Thaddeus Crews dd150a3823 Merge pull request #116413 from Chaosus/shader_fix_completion
Fixes for completion of shader preprocessor defines
2026-02-27 15:44:40 -06: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
DDarby-Lewis bf326793ba Editor additions for MipMaps and rd_textures 2026-02-27 08:38:13 -06:00
Thaddeus Crews e380a41752 Style: Add class_db.h includes explicitly 2026-02-26 15:50:28 -06:00
Allen Pestaluky dce001aee7 Remove clamping from LinearToSRGB visual shader node. 2026-02-26 11:49:26 -05:00
Thaddeus Crews 861d74c09d Merge pull request #115799 from BastiaanOlij/add_view_count_to_viewport
Add view count support to Viewport
2026-02-26 08:15:13 -06:00
Bastiaan Olij f3a815238b Add view count support to Viewport 2026-02-26 12:37:21 +11: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 462f31801d Decouple RasterizerDummy from RenderingServer and DisplayServer
Also move some Extension classes to a separate file to avoid including gdvirtual
unnecessarily.
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 b144637ae1 Decouple RenderingServer from ServersDebugger
This one doesn't seem to have much impact on incremental rebuild time
after a change in `rendering_server.h`, but might still be worth it to
prevent future heavier coupling.
2026-02-25 19:43:04 +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 2adf91e71f Merge pull request #114890 from allenwp/fix-spatial-scaler-debanding
Fix viewport debanding not working with spatial scalers.
2026-02-25 11:25:09 -06:00
Thaddeus Crews e8c69d4108 Merge pull request #116720 from allenwp/fix-reinhard-agx-mobile-subpass
Fix Reinhard and AgX tonemapper in Mobile renderer when using subpass.
2026-02-25 09:27:47 -06:00
Thaddeus Crews c521ed8f71 Merge pull request #116519 from celyk/fix-omni-projector
Clamp uv coordinates of omni light projector
2026-02-25 09:27:38 -06:00
Bastiaan Olij 2c49923c39 Cleanup projection code so we don't need our frustum override in the renderer 2026-02-25 21:16:38 +11:00
Allen Pestaluky 662770a33d Fix Reinhard and AgX tonemapper in Mobile renderer when using subpass. 2026-02-24 10:58:08 -05:00
Frank Becker dc67bdaab4 Fix LCD batching flag for StyleBoxTexture 2026-02-22 19:59:09 -08:00
Chaosus cd5f2aa923 Fixes for completion of shader preprocessor defines 2026-02-22 10:26:03 +03:00
Lukas Tenbrink e9465cd380 Move variant pools to their own compile unit. 2026-02-21 13:24:17 +01:00
celyk d2933f04b7 Clamp uv coordinates of omni light projector 2026-02-21 11:06:27 +11: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
Lukas Tenbrink 0ea5ece984 Move binary math functions to Math namespace in math_funcs_binary header. 2026-02-17 12:24:35 +01:00
Antonio Caggiano ba71e30579 Tie scratch buffers to acceleration structures
The scratch buffer is never exposed to the user, it is only used
internally and it is managed by the acceleration structure itself.
2026-02-16 11:00:28 +01: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
Thaddeus Crews 40448082ab Merge pull request #115728 from Chaosus/shader_fix_builtin_func_mismatch
Fix GDShader min/max functions return value type mismatch
2026-02-11 10:27:09 -06:00
Thaddeus Crews 487896096c Merge pull request #116155 from clayjohn/sky-radiance-seam
Add compatibility fallback to textureLod when reading from RADIANCE
2026-02-11 10:27:06 -06:00
Clay John 69a923e340 Add compatibility fallback to textureLod when reading from RADIANCE
This is needed due to the discontinuity in the seam of the octahedral coordinates
2026-02-10 16:00:30 -08:00