Rémi Verschelde
f1d63278d7
Remove unused includes in servers with clangd-tidy
2026-03-10 21:42:23 +01:00
mxtherfxcker
d5ebd33d72
Fix SDFGI ignoring visual layers of geometry instances
2026-03-06 12:35:16 -06: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
StarryWorm
357fa00a4a
rm class_db.h from resource.h
2026-02-27 19:08:29 -05: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
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
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
4cce65bea6
Merge pull request #114678 from Image-unavailable/culling-wars-pr
...
Make directional lights' tighter shadow caster culling truly tight (implement per-cascade culling)
2026-02-03 18:06:49 -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
Image-unavailable
a17e172549
Make directional lights' tighter shadowcaster culling truly tight (implement per-cascade culling)
2026-01-29 00:07:53 +01:00
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
Dario
c78c3ba894
Rewrite Radiance and Reflection probes to use Octahedral maps.
...
Co-authored-by: clayjohn <claynjohn@gmail.com>
2025-12-02 17:48:12 -08:00
Karl Office
7a49918c89
fix: set visible layers in multiview camera
2025-10-13 17:31:01 +02:00
Rudolph Bester
56e04635a7
Minor Optimization to Occlusion Culling
2025-08-14 20:00:58 +02:00
SpockBauru
23e6d7bfc7
Fix Reflection Mask not working on Mobile
2025-05-26 13:37:18 -03:00
clayjohn
305216f558
Overhaul the cull mask internals for Lights, Decals, and Particle Colliders
...
Properly pair and unpair instances based on cull mask to avoid any unnecessary processing and to ensure that changing the cull_mask and layer_mask actually updates culling behavior
2025-05-08 21:39:12 -07:00
lawnjelly
ae04a3a5dd
Physics Interpolation - Move 3D FTI to SceneTree
...
Moves 3D interpolation from server to the client code (`SceneTree`).
Complete rework of 3D physics interpolation, but using the same user API.
2025-04-26 14:13:30 +01:00
Ansraer
a4a5f4ed01
allow moving meshes without motion vectors
2025-04-25 14:25:06 +02:00
Yufeng Ying
4f4031a675
Replace size() == 0 with is_empty().
2025-04-02 19:18:43 +08:00
kobewi
10f6c01b9c
Remove ABS in favor of Math::abs
2025-03-19 13:52:40 +01:00
Michael Alexsander
aea559b39a
Allow to compile the engine without XR support
2025-02-25 17:07:21 -03:00
Rémi Verschelde
c695eb9159
Merge pull request #101952 from Flarkk/fix_spotlight_peterpanning_regression
...
Fix shadow peter-panning with default spotlight
2025-02-07 01:39:15 +01:00
Rudolph Bester
b162c59097
Fix GPUParticlesCollisionHeightField3D adding collisions excluded by its layer_mask
...
Co-authored-by: Yahia Zakaria <yahiazakaria13@gmail.com>
2025-02-04 08:02:44 +02:00
Florent Guiocheau
d08ff57148
Fix peter-panning with default spotlight
2025-01-22 17:05:04 +01:00
Florent Guiocheau
c9632d0eb6
Fix regression with shadows when light range is 0 or close
2024-12-28 11:40:54 +01:00
Yufeng Ying
e88e30c273
Remove unused headers in servers.
...
Co-authored-by: bruvzg <7645683+bruvzg@users.noreply.github.com>
2024-12-20 18:51:01 +08:00
Thaddeus Crews
d3e5b62ea2
Merge pull request #99230 from paddy-exe/instance_uniforms_compatability_renderer
...
Implement 2D instance uniforms
2024-12-19 19:59:37 -06:00
kobewi
ceefc0d38a
Implement 2D instance shader parameters
...
Co-authored-by: kobewi <kobewi4e@gmail.com>
Co-authored-by: yesfish <huwpascoe@users.noreply.github.com>
Co-authored-by: Álex Román Núñez <eirexe123@gmail.com>
2024-12-17 23:59:16 +01:00
Alex Threlfo
34ebec3748
fix: crash in scenes with more than 8 shadowed directional lights
2024-12-15 19:13:07 +11:00
Rémi Verschelde
ffe53cba3c
Merge pull request #100374 from hpvb/fix-rendering-ubsan
...
Fix ubsan reported errors in rendering
2024-12-14 18:25:46 +01:00
Rémi Verschelde
e271b2ca08
Merge pull request #99145 from dsnopek/xr-lock-camera
...
XR: Allow locking the camera to the `XROrigin3D` for benchmarking or automated testing
2024-12-14 18:25:21 +01:00
Thaddeus Crews
dc5f1b7a28
Merge pull request #100319 from Flarkk/fix_light_shadow_range
...
Fix shadows of long range `OmniLight3D` and `SpotLight3D`
2024-12-13 16:19:39 -06:00
HP van Braam
062d74bb9c
Fix ubsan reported errors in rendering
...
This allows the TPS demo to run without an ubsan reports from any of the
rendering code.
2024-12-13 21:27:37 +01:00
Florent Guiocheau
5125adf40b
Fix large range point lights shadows
2024-12-12 15:37:38 +01:00
clayjohn
9320865796
Avoid calculating dynamic lights when lights are baked into LightmapGI using the static bake mode
2024-12-06 10:17:44 -08:00
rune-scape
d58b2e879f
Get rid of easily removable uses of const_cast
2024-12-01 17:50:13 -08:00
David House
7e3d480087
Created static method and moved _particles_set_view_axis over to it to allow calling on render thread.
2024-11-16 13:26:26 -06:00
David Snopek
d6a4fe6c05
XR: Allow locking the camera to the XROrigin3D for benchmarking or automated testing
2024-11-12 15:06:27 -06:00
Thaddeus Crews
88d9903f6d
Merge pull request #86138 from EnlightenedOne/master
...
Fix Frustum Sky projection translation logic shearing
2024-11-04 21:52:07 -06:00
EnlightenedOne
1d141ab32a
Fix Frustum Sky projection translation logic, all pipelines, fixes 63863
2024-11-02 21:34:55 +00:00
Thaddeus Crews
cfc05c5e0f
Merge pull request #85338 from EMBYRDEV/shadow-caster-mask
...
Add `shadow_caster_mask` to Light3D.
2024-10-24 13:22:59 -05:00
m-pranav-r
fcea158927
Fixed light culling mask behavior in Mobile and Compat renderers
2024-10-23 08:38:56 +05:30
yesfish
274076c5be
Lightmap Dynamic Bugfix
2024-10-17 16:27:30 +01:00
Dario
e2c6daf7ef
Implement asynchronous transfer queues, thread guards on RenderingDevice. Add ubershaders and rework pipeline caches for Forward+ and Mobile.
...
- Implements asynchronous transfer queues from PR #87590 .
- Adds ubershaders that can run with specialization constants specified as push constants.
- Pipelines with specialization constants can compile in the background.
- Added monitoring for pipeline compilations.
- Materials and shaders can now be created asynchronously on background threads.
- Meshes that are loaded on background threads can also compile pipelines as part of the loading process.
2024-10-02 15:11:58 -03:00
Hugo Locurcio
0eb06da057
Jitter shadow map dithering pattern across frames when TAA is enabled
...
This improves shadow quality by reducing the visibility of the noisy
pattern caused by dithering.
This jittering also applies when FSR2 is enabled, as it provides its own
form of temporal antialiasing.
Co-authored-by: Clay John <claynjohn@gmail.com>
2024-09-24 15:52:07 -07:00