1
0
mirror of https://github.com/godotengine/godot.git synced 2025-11-04 12:00:25 +00:00
Commit Graph

241 Commits

Author SHA1 Message Date
Thaddeus Crews
acdb8667b5 Core: Sidestep GCC false-positive 2025-10-17 18:57:34 -05:00
Yufeng Ying
7d3c25d083 Remove callable_bind.h from object.h 2025-10-14 16:24:05 +08:00
Thaddeus Crews
16a11ac88b Merge pull request #111358 from Ivorforce/no-variant-hasher
Remove `VariantHasher` and `VariantComparator` in favour of specialising `HashMapHasherDefault` and `HashMapComparatorDefault`.
2025-10-10 10:26:12 -05:00
Lukas Tenbrink
207e8c1b92 Remove compositor.h include from world_3d.h. 2025-10-08 11:25:23 +02:00
Lukas Tenbrink
d2ee378d1c Remove VariantHasher and VariantComparator in favour of specializing HashMapHasherDefault and HashMapComparatorDefault. 2025-10-07 13:47:39 +02:00
Thaddeus Crews
30a0a41982 Merge pull request #111274 from chocola-mint/include-optimization-logger
Remove `file_access.h` and `script_backtrace.h` includes from `logger.h`.
2025-10-06 09:06:32 -05:00
Juan
faddd60c40 Add unique Node IDs to support base and instantiated scene refactorings
The main goal of this PR is to safeguard when a base or instantiated scene changes (nodes renamed, moved or readded),
that the hierarchy is still maintained and the node and its overridden properties can be preserved.

What it does:
* Implements unique node IDs.
* These IDs act as a fallback to names when saving.
* The IDs are **USED AS A FALLBACK**, so they are just an addition. It should not break any current existing scene.
* If a scene renames or moves a node, inherited or instantiated scenes will no longer lose reference to it.

Unlike the previous approach, this one is intended to be a fallback, only used if the node is not found.
This makes it safer to implement and ensure that, at worst case, we fail to find the node, but nothing breaks.
2025-10-06 12:55:38 +02:00
chocola-mint
ead282ff13 Remove file_access.h and script_backtrace.h includes from logger.h. 2025-10-05 17:49:23 +09:00
Thaddeus Crews
685c7e92e5 Merge pull request #100437 from KoBeWi/ruaninstancequestionmark
Add `is_instance()` helper method to Node
2025-09-23 12:08:48 -05:00
Aaron Franke
84eb90b790 Allow attaching scripts to nodes with previously-non-abstract scripts 2025-08-27 11:14:59 -07:00
kobewi
11adf408ab Add is_instance() helper method to Node 2025-07-08 20:42:52 +02:00
Mikael Hermansson
af94831ab2 Fix typed collections using same reference across scene instances 2025-07-02 23:45:25 +02:00
Thaddeus Crews
ffc267b44f Merge pull request #92280 from dalexeev/editor-fix-built-in-script-documentation
Editor: Fix documentation for built-in scripts
2025-06-18 18:14:09 -05:00
Pedro J. Estébanez
c854462ac5 Fix resources wrongly duplicated upon instantiating inherited scenes 2025-06-06 17:45:45 +02:00
Rindbee
5e2396e001 Add a flag to make the connection automatically emit the source object.
Mainly used to improve the connection dialog.

Not implemented in `emit_signalp()`, append the source object when a PackScene is instantiated.
2025-05-27 20:19:03 +08:00
Danil Alexeev
0a07ae7bf1 Editor: Fix documentation for built-in scripts 2025-05-05 21:26:30 +03:00
A Thousand Ships
889410dcda Add String::replace_char(s) methods for performance and convenience 2025-04-10 13:08:45 +02:00
Yufeng Ying
bbc380b07e Do not iterate Dictionary with get_key_at_index. 2025-04-07 21:54:13 +08:00
Thaddeus Crews
5edb235018 CI: Bump various pre-commit hooks 2025-04-07 08:23:35 -05:00
Aaron Franke
2800948d61 Organize ifdefs for disabling navigation, physics, and XR 2025-04-02 08:24:24 -07:00
kobewi
bc9d0c7835 Add templated version of ObjectDB::get_instance() 2025-03-27 15:43:23 +01:00
Mikael Hermansson
a71f670d7d Bind SceneState methods get_path and get_base_scene_state 2025-03-14 13:04:26 +01:00
A Thousand Ships
466590d0ec Use get_slicec instead of get_slice for single character splitters 2025-03-08 20:36:37 +01:00
Rémi Verschelde
dbdd8a2db9 PackedScene: Use ObjectID for DeferredNodePathProperties base
Help do proper error handling and avoid a crash.

Works around #103263.
2025-02-26 14:40:14 +01:00
A Thousand Ships
a1846b27ea Improve use of Ref.is_null/valid
Use `is_null` over `!is_valid` and vice versa.
2024-12-23 16:35:02 -05:00
Yufeng Ying
73d85f46c9 Remove unused headers in scene.
Co-authored-by: Thaddeus Crews <repiteo@outlook.com>

Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
2024-12-24 00:40:09 +08:00
Rémi Verschelde
2153a60425 Revert "Avoid duplicating signals from scene instances into packed scenes"
This partially reverts commit 8a42e3d3ef.

Comment improvements and the test case were kept, with one part commented out.
2024-12-10 10:42:58 +01:00
cixil
8a42e3d3ef Avoid duplicating signals from scene instances into packed scenes 2024-11-29 18:29:08 +01:00
A Thousand Ships
68f638cf02 Use (r)find_char instead of (r)find for single characters 2024-11-17 10:02:18 +01:00
Thaddeus Crews
925b690c98 Core: Integrate Ref::instantiate where possible 2024-11-10 12:41:26 -06:00
nikitalita
95d2909474 Fix missing resource properties being dropped on save 2024-11-05 11:53:29 -06:00
Raffaele Picca
1df0159b36 Added a more detailed error message when instatiating a scene with missing export properties. 2024-09-16 16:08:55 +02:00
Rémi Verschelde
7a4c03418a Merge pull request #96144 from SaracenOne/reimport_owner_instance
Make reimported models reimport their owner.
2024-09-08 23:21:32 +02:00
Saracen
86ce15fb7a Make reimported models reimport their owner.
Changes the behaviour of the scene hot-reload system
so that if the scene which needs to be reimported is
owned by another instance, reload that instance instead.
2024-09-08 03:12:47 +01:00
Thaddeus Crews
9853a69144 Implement typed dictionaries 2024-09-04 10:27:26 -05:00
BlueCube3310
6412cdf27d Fix saving subresources of nodes 2024-08-28 12:37:10 +02:00
Rémi Verschelde
78935cad95 Merge pull request #94954 from raulsntos/mark-internal-properties
Mark underscored properties as internal
2024-08-28 00:12:42 +02:00
Raul Santos
7a20ba9b63 Mark underscored properties as internal
These properties look like they were intended to be internal but they were missing the `PROPERTY_USAGE_INTERNAL` flag.

- `PackedScene::_bundled`
- `PortableCompressedTexture2D::_data`
- `ImporterMesh::_data`
2024-07-30 18:50:00 +02:00
kobewi
5636518358 Allow live reloading of built-in scripts 2024-07-06 23:43:37 +02:00
kobewi
b83c64faac Speed up scene group scanning for text scenes 2024-06-29 21:30:38 +02:00
kobewi
be111004dd Fix default NodePaths saved in scene 2024-06-03 13:10:23 +02:00
Adriano Orioli
edd2e6e37f make InstancePlaceholder in charge of node reference resolution 2024-05-28 11:51:49 +02:00
kobewi
413c11357d Use Core/Scene stringnames consistently 2024-05-13 23:41:07 +02:00
kobewi
a262d2d881 Add shorthand for using singleton string names 2024-05-11 18:53:08 +02:00
Rémi Verschelde
29607924bd Merge pull request #88741 from adamscott/fix-shared-variables-of-inherited-scenes-redux
Fix shared exported variables of inherited scenes
2024-05-07 16:49:20 +02:00
Aaron Franke
6aac3e4a16 Disable all 3D nodes, physics, and resources when compiling without 3D 2024-03-11 01:00:55 -07:00
Rémi Verschelde
1d6403323f Merge pull request #88426 from Rindbee/fix-inherited-scenes-produce-errors
Fix inherited scenes produce errors in editor when `editable_children` is true
2024-03-10 21:12:54 +01:00
风青山
4d57da4d01 Fix inherited scenes produce errors in editor when "editable_children" is true
Since the same argument is used, `SceneState::get_node_deferred_nodepath_properties()`
should use similar logic to `SceneState::get_property_value()`.

Make `SceneState::get_property_value()` to return whether the property is deferred.
2024-03-10 07:37:47 +08:00
Rémi Verschelde
172b254687 Merge pull request #88664 from RandomShaper/res_load_modes
Enhance cache modes in resource loading
2024-02-29 13:54:07 +01:00
Rémi Verschelde
440fe26338 Merge pull request #87268 from Wyxaldir/master
Fix for `resource_local_to_scene` in arrays.
2024-02-29 13:53:49 +01:00