Rémi Verschelde
f1d63278d7
Remove unused includes in servers with clangd-tidy
2026-03-10 21:42: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
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
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
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
Hugo Locurcio
2cf7af9149
Make all unsupported renderer message features consistently warnings
...
Previously, some messages indicating a lack of support were errors
instead of warnings. Some messages were also not shown when running
a release export template.
- Use "renderer" terminology consistently instead of "rendering method".
2025-12-01 17:38:12 +01:00
Lukas Tenbrink
c3747884da
Add some important profiling hooks.
2025-11-08 00:08:48 +01:00
Mounir Tohami
9894256e3a
More XR disable for Viewport and export.
2025-10-06 20:15:07 +03:00
Kaleb Reid
e5cd234ef7
Use correct scaling type when falling back to bilinear
2025-09-18 13:58:02 -07:00
Pāvels Nadtočajevs
adce527880
Check renderer type when setting 3D upscaling mode.
2025-08-27 07:48:55 +03:00
Stuart Carnie
c8b5982d0f
Metal: Ensure correct output texture format selection
2025-08-08 12:50:16 +10:00
Allen Pestaluky
a1591512f8
Always perform color correction and debanding on nonlinear sRGB values.
...
Fixes #107730
Co-authored-by: LuoZhihao <luo_zhihao@outlook.com>
2025-07-08 13:44:53 -04:00
Thaddeus Crews
167a9e33d3
Merge pull request #106880 from dsnopek/meta-depth-api-nonhacks
...
Minor rendering and XR changes to allow Meta enivornment depth API to work entirely from GDExtension
2025-06-02 18:51:19 -05:00
David Snopek
0fd0feb772
Minor rendering and XR changes to allow Meta enivornment depth API to work entirely from GDExtension
2025-05-27 13:06:31 -05:00
Thaddeus Crews
50aa801351
Merge pull request #106731 from stuartcarnie/metal_fx_temporal_no_mobile
...
Metal: Disable MetalFX Temporal for `mobile` rendering method
2025-05-26 11:24:43 -05:00
Stuart Carnie
fbe560a97c
Metal: Disable MetalFX Temporal for mobile rendering method
...
It isn't supported, as `mobile` can't provide motion vectors. We can
revisit once it is supported via #100283 .
2025-05-24 06:48:05 +10:00
Raymond DiDonato
6b99608950
Add SMAA 1x
2025-05-21 15:02:09 -04:00
lawnjelly
f8f350a32a
Add GLOBAL_GET cached macros.
...
GLOBAL_GET is an expensive operation which should not be used each frame / tick.
This PR adds macros which do a cheaper revision check, and only call the expensive GLOBAL_GET when project settings have changed.
Co-authored-by: Lukas Tenbrink <lukas.tenbrink@gmail.com>
2025-04-30 15:08:50 +01:00
Thaddeus Crews
ad40939b6f
Core: Replace C math headers with C++ equivalents
...
- Minor restructuring to ensure `math_funcs.h` is the central point for math functions
2025-04-16 15:49:02 -05:00
kobewi
10f6c01b9c
Remove ABS in favor of Math::abs
2025-03-19 13:52:40 +01:00
Stuart Carnie
5e1fe8040a
rendering: compositor has is_opengl API; minor optimisations
2025-03-13 15:41:44 +11:00
Stuart Carnie
f31ddce6d1
MetalFX: change fallback behaviour
...
Closes #103782
2025-03-08 15:35:45 +11:00
Michael Alexsander
aea559b39a
Allow to compile the engine without XR support
2025-02-25 17:07:21 -03:00
Rémi Verschelde
3014eec40d
Merge pull request #99407 from devloglogan/rec-resolution
...
Allow using custom `Rect2i` for rendering with OpenXR
2025-01-10 23:05:46 +01:00
devloglogan
e7f6b7ea0b
Allow using custom Rect2i for rendering with OpenXR
2025-01-09 09:46:15 -06:00
Stuart Carnie
abd0e6990c
Renderer: minor optimisation when running gl_compatibility mode
2025-01-08 09:43:35 -07:00
Rémi Verschelde
0f76ee4688
Merge pull request #101110 from clayjohn/light2d-rect-fix
...
Update Light2D `rect_cache` even when not using shadows.
2025-01-06 22:49:01 +01:00
Stuart Carnie
11dc4f2e5e
Metal: Add MetalFX upscaling support
...
Co-authored-by: Hugo Locurcio <hugo.locurcio@hugo.pro>
2025-01-06 06:03:18 -07:00
clayjohn
7e8facc526
Update Light2D rect_cache even when not using shadows.
...
This also cleans up how the rect_cache is updated to make the steps more clear
2025-01-03 16:17:58 -08:00
clayjohn
30801af298
Properly transform light rect and occluder rect to perform light2d culling in canvas space
2024-12-20 16:58:02 -07:00
Rémi Verschelde
190ae9f9dc
Merge pull request #100302 from clayjohn/light2d-optimize
...
Optimize PointLight2D shadow rendering by reducing draw calls and RD state changes
2024-12-17 22:59:54 +01:00
clayjohn
7c61252dd7
Optimize PointLight2D shadow rendering by reducing draw calls and RD state changes.
...
This dramatically reduces the CPU time spent on rendering shadows for PointLight2Ds
2024-12-17 07:41:09 -08:00
Rémi Verschelde
d60c0e21a6
Merge pull request #88313 from wagnerfs/run-time-anisotropic-filtering
...
Allow changing the anisotropic filter level at run-time per Viewport
2024-12-17 16:18:38 +01:00
devloglogan
3deb5884d7
Renderer agnostic motion vector rendering/OpenXR changes
2024-12-10 15:59:17 -06:00
Wagner
6995b6a03e
Allow changing the anisotropic filter level at run-time per Viewport
2024-11-30 00:50:45 -03:00
Alvin Wong
1bd66af54c
Apply snap 2D transforms to pixel to viewport
...
We shall not leave the viewport transform to be rounded by the code for
rounding canvas items. Since the viewport transform is inverse to the
camera transform, we get incorrect rounding at the halfway point that
misaligns the viewport and the canvas item which the camera is
following.
Instead, reintroduce viewport rounding, but do it in a way that matches
the rounding of canvas items. Also take into account the half-pixel
offset of the centre point when viewport dimension is not divisible by
two. For `CanvasLayer`s that follows viewport, take into account the
scale when rounding. Overall this should work better compared to the
rounding in Godot 4.2 (and earlier).
2024-09-23 20:34:11 +08:00
Stuart Carnie
5cfacc8767
[Editor,Servers]: Minor optimizations
2024-09-12 06:22:04 +10:00
Rémi Verschelde
f4037d6f6c
Merge pull request #92496 from clayjohn/HDR-2D-sRGB
...
Ensure MovieWriter output is in gamma space when using HDR 2D
2024-08-19 12:08:40 +02:00
Bastiaan Olij
1eb0039b6e
Fix regression around OpenGL swapchain optimisation for OpenXR
2024-07-29 12:46:58 +10:00
jsjtxietian
46ed290fef
Add warning when use FSR1 on renderer other than forward plus
2024-07-18 12:10:18 +08:00
clayjohn
fa3e00e2c4
Ensure Motion Vectors are enabled by particles and skeletons when using the Motion Vector debug draw option
2024-06-11 12:46:56 -07:00
clayjohn
3b9d074fd7
Ensure MovieWriter output is in gamma space when using HDR 2D
2024-05-28 15:30:13 -07:00