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