Commit graph

13470 commits

Author SHA1 Message Date
kit
1800c4782f Fix no GDScript build fails due to no class_db.h 2026-03-05 16:46:23 -05:00
Rémi Verschelde
2dd1f4ef60
Decouple node.h from scene_tree.h, minimize its other includes 2026-03-05 13:54:46 +01:00
Rémi Verschelde
18edfa5245
Explicitly include scene_tree.h where used
Pre-requisite before removing `scene_tree.h` from `node.h`
which has cascading consequences on most of the codebase.
2026-03-05 10:43:25 +01:00
Thaddeus Crews
fe6f78a4c7
Merge pull request #117036 from YeldhamDev/tile_grid_focus_out
Stop drag actions in the `TileMapLayer` and `GridMap` editors when focus is lost
2026-03-04 21:03:51 -06:00
StarryWorm
3cb2d376f8 Get rid of all unnecessary class_db.h includers 2026-03-04 17:40:05 -05:00
Thaddeus Crews
c53c5a1f49
Merge pull request #116565 from YeldhamDev/you_unspin_me_round_round
Make possible to undo rotation of selected `GridMap` cells.
2026-03-04 14:32:42 -06:00
Thaddeus Crews
0aacb28576
Merge pull request #116900 from IceflowRE/translation_1
Add add_submenu_node_item to POT generation
2026-03-04 14:32:39 -06:00
Thaddeus Crews
5134bdb39e
Merge pull request #115842 from Arbee4ever/lsp-log-startup-errors
LSP: log startup Errors
2026-03-04 14:32:35 -06:00
Thaddeus Crews
66a96d92c6
Merge pull request #116749 from Jesusemora/testing-changes
Add automatic smoothing for CSG nodes
2026-03-04 14:32:27 -06:00
Jesusemora
6114c6a266 autosmooth
added properties

update inspector

UX improvements

and minor optimizations

deg_to_rad

moved methods

move variables

performance and cleanup

Faster

Compare the angles/smooth of faces instead of vertices, skipping for loop.
Using a LocalVector instead of Vector, this simplifies the code while making it faster, and I don't think we need COW.

all done and working

Optimizations and cleanup

Clarifying and expanding the description of autosmooth and smoothing_angle properties.
Optimizations to skip steps in the loops:
Split loops to be able to skip vertices better and replace division with multiplication.
Suggestions for future changes.
Skip loop if smoothing_angle is lower than 0.1, as a more performant alternative to default smoothing.
Do not compare vertices that belong to the same triangle.
Remove has_smooth. Use a check at the start of the loop instead. This allows us to skip faces.
Perform normalize() at the end of the loop as we don't need the normal of the vertex afterwards, as we use the normal of the face for smoothing.  This way we skip normalizing flat faces.
If one vertex of a triangle is connected to the current vertex, the other 2 can never physically connect, so we skip them (break;). This isn't as reliable but it could add a slight performance increase.
I calculate a decrease of at least 80% of calculations in the for loops compared to the previous code.

Co-Authored-By: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
2026-03-04 15:30:33 -03:00
Pāvels Nadtočajevs
b83ca97659
[TextServer] Remove GDExtension build support. 2026-03-04 19:34:46 +02:00
Thaddeus Crews
7438a39a13
Merge pull request #114324 from m4gr3d/support_composition_layers_anywhere_in_tree
Support composition layers anywhere in the tree
2026-03-04 11:20:32 -06:00
Thaddeus Crews
371282b28e
Merge pull request #92984 from adamscott/reveal-me
Customize the file manager label for each platform
2026-03-04 11:20:31 -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
727b06a79f
Move ProcessID typedef out of OS
This allows decoupling a number of files from `os.h`.
2026-03-04 15:00:45 +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
Michael Alexsander
bbacc674b8
Stop drag actions in the TileMapLayer and GridMap editors when focus is lost 2026-03-03 16:13:40 -03: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
22e44501fa
Merge pull request #116597 from Akosmo/improve-audio-docs-3
Improve docs for ResourceImporterMP3 and ResourceImporterOggVorbis
2026-03-02 15:54:00 -06:00
Thaddeus Crews
d89e19f556
Merge pull request #116683 from YeldhamDev/grid_map_rotation_fix
Fix wrong rotation of cells while being pasted in the `GridMap` editor
2026-03-02 15:53:55 -06:00
Thaddeus Crews
524d230927
Merge pull request #116546 from YeldhamDev/where_did_that_cell_go
Fix undoing `GridMap` move operations resulting in deleted cells
2026-03-02 15:53:54 -06:00
Parritz
45b60c0351
Editor: Fix CSG gizmo selection inside CSGCombiners 2026-03-02 15:52:30 -06:00
Adam Scott
f441172719
Customize the file manager for each platform 2026-03-02 09:42:13 -05:00
Rémi Verschelde
6ca3b16daf
Merge pull request #116205 from Akosmo/improve-audio-docs-2
Add missing info to some AudioStream docs
2026-03-02 12:35:31 +01:00
arbee4ever
1cf8691438 LSP: log startup Errors 2026-03-01 09:56:49 +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
Iceflower
c921ad1eec
Add add_submenu_node_item to POT generation 2026-02-28 20:18:22 +01:00
Akosmo
57da2733bc Improve docs for ResourceImporterMP3 and ResourceImporterOggVorbis 2026-02-28 13:35:02 -03:00
Akosmo
6b8eb8ebf1 Add missing info to some AudioStream docs 2026-02-28 12:04:08 -03:00
StarryWorm
357fa00a4a rm class_db.h from resource.h 2026-02-27 19:08:29 -05:00
Thaddeus Crews
39bf77ddd1
OpenXR: Limit Windows includes to COM interface 2026-02-27 15:43:38 -06:00
Thaddeus Crews
95535167b3
Merge pull request #116778 from YeldhamDev/orbiting_around_the_world
Fix `GridMap` editor pasting when orbiting using the "Alt" key
2026-02-27 08:49:39 -06:00
Fredia Huya-Kouadio
b389d580ac Support composition layers anywhere in the tree 2026-02-26 21:54:26 -08:00
Thaddeus Crews
abdde1b69d
Core: Remove class_db.h include from ref_counted.h 2026-02-26 18:14:23 -06:00
Thaddeus Crews
f630133a01
Merge pull request #116826 from Repiteo/style/class-db-explicit-include
Style: Add `class_db.h` includes explicitly
2026-02-26 16:18:45 -06:00
Thaddeus Crews
4b70daceba
Merge pull request #116795 from bruvzg/ts_rs
Remove direct `RenderingServer` dependency from `TextServer`.
2026-02-26 16:18:37 -06:00
Thaddeus Crews
e380a41752
Style: Add class_db.h includes explicitly 2026-02-26 15:50:28 -06:00
Michael Alexsander
8882d0efb9
Fix GridMap editor pasting when orbiting using the "Alt" key 2026-02-26 18:10:07 -03:00
Thaddeus Crews
fc572669de
Merge pull request #116555 from YeldhamDev/gridmap_editor_touchups
Fix some UI issues with the `GridMap` editor
2026-02-26 08:15:19 -06:00
Thaddeus Crews
5a5a806eaf
Merge pull request #116768 from mihe/jolt/tidying-up
Tidy some things up in `modules/jolt_physics`
2026-02-26 08:15:17 -06:00
Pāvels Nadtočajevs
9036ab6a6a
Remove direct RenderingServer dependency from TextServer. 2026-02-26 10:25:59 +02:00
Michael Alexsander
683950826b
Fix some UI issues with the GridMap editor 2026-02-25 21:37:36 -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
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
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
a79323e3ec
Merge pull request #116766 from mihe/jolt/share-temp-allocator
Share one `JoltTempAllocator` instance across all `JoltSpace3D`
2026-02-25 11:25:06 -06:00
Mikael Hermansson
72494ba3bc Tidy some things up in modules/jolt_physics 2026-02-25 17:39:37 +01:00