Commit graph

102 commits

Author SHA1 Message Date
Thaddeus Crews
e380a41752
Style: Add class_db.h includes explicitly 2026-02-26 15:50:28 -06: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
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
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
kobewi
6f86914f55 Cleanup _validate_property() implementations 2026-02-23 15:05:25 +01: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
Rémi Verschelde
63c78e684b
Merge pull request #114165 from KoBeWi/static
Use actual class names in resource type hints
2026-02-02 10:10:24 +01:00
Rémi Verschelde
429750f60b
Merge pull request #115093 from Ivorforce/hashmap-explicit-copy
Change copy constructors of `HashMap` and `AHashMap` from implicit to explicit
2026-01-31 22:50:51 +01:00
Lukas Tenbrink
1d840aae3a Remove sky.h include from environment.h, to speed up compile time. 2026-01-30 00:05:55 +01:00
kobewi
f7b9703cbd Use actual class names in resource type hints 2026-01-29 21:07:56 +01:00
Lukas Tenbrink
1825e89787 Change copy constructors of HashMap and AHashMap from implicit to explicit. 2026-01-21 13:01:23 +01:00
Hugo Locurcio
3e7eb5c9dc Tweak property hints for SoftBody3D mass and SkeletonModification2DJiggle
Masses in Godot are specified in kilograms.
This also fixes the SoftBody3D mass being limited to increments of 1 kg,
now allowing adjustments to the nearest gram.
2025-12-18 02:28:13 +01:00
Logan Detrick
42e60c38dc Remove unused private variables in godot/scene 2025-12-07 03:46:26 -08:00
David Snopek
308f23f21d Synchronize the names for RequiredParam<T> arguments in header files 2025-12-03 04:14:52 -06:00
David Snopek
fc92ce3e7f Use RequiredParam/RequiredResult in some high value places 2025-12-02 10:44:12 -06:00
Lukas Tenbrink
33689d7beb Remove transitive mesh.h, rendering_server.h and shader.h includes from node.h. 2025-10-08 12:16:52 +02:00
Aaron Franke
3d1c9fd5de
Move server files into their subfolders 2025-09-30 19:39:39 -07:00
Aaron Franke
9fbf5808a0
Rename server "free" functions to "free_rid" to match exposed API 2025-09-30 16:52:25 -07:00
lawnjelly
cbbc2eae0e Fix ancestry constructors
Some object constructors in 4.x were not initializing ancestry correctly for some types, this was producing casting failures.
2025-09-23 08:23:55 +01:00
Thaddeus Crews
035f5d3055
Merge pull request #110763 from Ivorforce/object-derives-from
Use `AncestralClass` to speed up `Object::cast_to` when possible.
2025-09-22 13:28:45 -05:00
Lukas Tenbrink
96619d46a1 Use AncestralClass to speed up Object::cast_to when possible. 2025-09-22 13:21:51 +02:00
kobewi
98a4b46b6a Add more PROPERTY_HINT_GROUP_ENABLE uses 2025-09-20 21:11:12 +02:00
Thaddeus Crews
149a4b4ca1
Merge pull request #107868 from lawnjelly/quick_ancestry4
Provide quick access to `Object` ancestry
2025-09-20 13:41:39 -05:00
Thaddeus Crews
2557b0da9f
Merge pull request #101285 from Nazarwadim/use_LocalVector_in_animation
Use `LocalVector` in `Animation`
2025-09-16 20:28:52 -05:00
Adam Simpkins
edfe631c7c
Create an undo/redo action when pinning a SoftBody3D point in the editor
Previously, if you pinned a point by clicking on one of the soft body
vertex handles, the scene was not marked as modified, and the action
could not be undone by hitting Ctrl + Z.

Co-authored-by: Tomasz Chabora <kobewi4e@gmail.com>
2025-08-25 17:07:23 +02:00
Mikael Hermansson
6c907c2d37 Fix move_and_slide forcing synchronization with physics thread
Co-authored-by: Ricardo Buring <ricardo.buring@gmail.com>
2025-08-14 18:58:36 +02:00
F3der1co
1ff94e782c increase damping coefficient editor range 2025-08-08 13:25:21 +02:00
clayjohn
6f60258545 Revert "SoftBody3D: Support physics Interpolation"
This reverts commit cc52fd777e.
2025-08-02 22:22:43 -07:00
lawnjelly
583c72f999 FTI - Change SceneTree global setting to static
Also fixup FTI configuration warnings so that they only output when the project is using FTI.
2025-06-23 10:19:24 +01:00
lawnjelly
14a814586a Provide quick access to Object ancestry 2025-06-23 07:11:11 +01:00
Nazarii
1964918e46 Use LocalVector in Animation 2025-06-18 18:37:55 +03:00
Rémi Verschelde
ae484828bb
Merge pull request #107408 from Ivorforce/node-path-string-explicit
Make conversions from `NodePath` to `String` explicit.
2025-06-12 22:49:03 +02:00
LuoZhihao
8ba4656ea3 Compile out editor-only logic within validate_property in games 2025-06-12 12:54:19 +08:00
Lukas Tenbrink
e2931a5c19 Make conversions from NodePath to String explicit. 2025-06-11 16:50:27 +02:00
Thaddeus Crews
1abf6e0ff9
Merge pull request #106863 from beicause/soft-body-3d-fti
SoftBody3D: Support physics Interpolation
2025-06-04 10:34:32 -05:00
LuoZhihao
cc52fd777e SoftBody3D: Support physics Interpolation 2025-06-01 23:56:08 +08:00
Thaddeus Crews
05ceab6b7b
Merge pull request #106321 from elzewyr/shrink-factor
SoftBody3D: Add a property for scaling rest lengths of edge constraints
2025-05-27 09:39:29 -05:00
Thaddeus Crews
de2cd663fd
Merge pull request #100463 from PiCode9560/softbody-apply-force-and-impulse
Add ability to apply forces and impulses to `SoftBody3D`
2025-05-26 11:24:45 -05:00
Thaddeus Crews
f3f76df0cd
Merge pull request #103504 from lawnjelly/fti_warn_physics_non_interp4
Physics Interpolation - Add editor configuration warnings
2025-05-26 11:24:39 -05:00
PiCode
fe3aaa2ae3 Add functions to apply impulse and force to SoftBody on GodotPhysics and JoltPhysics 2025-05-23 22:04:52 +03:00
Elzewyr
9f67bf96fa SoftBody3D: Add a property for scaling rest lengths of edge constraints 2025-05-16 18:38:00 +03:00
kobewi
34b485d62b Remove empty constructors and destructors from scene/ 2025-05-06 14:46:54 +02:00
funkysandwich
721b1a3d64 Fix AudioStreamPlayer3D's layer_mask property using the wrong property hint
Also remove unnecessary physics layer property hints from some bool properties on raycast and shapecast nodes
2025-05-05 10:58:46 -05:00
lawnjelly
a2b340a548 FTI - Add custom interpolation for wheels 2025-04-30 12:17:25 +01:00
Thaddeus Crews
b7d4426fff
Merge pull request #104269 from lawnjelly/fti_scene_tree4
Physics Interpolation - Move 3D FTI to `SceneTree`
2025-04-28 10:01:34 -05: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
lawnjelly
40c05c69f9 Physics Interpolation - Add editor configuration warnings
* For physics bodies that are on non-interpolated branches
2025-04-20 10:03:04 +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
Thaddeus Crews
94282d88f9
Core: Use Math namespace for constants 2025-04-10 16:29:30 -05:00
Thaddeus Crews
171187d1aa
Merge pull request #101011 from aaronfranke/limit-max-contacts-reported
Place a hard limit on the `max_contacts_reported` property in 2D/3D physics
2025-04-09 18:11:53 -05:00