Age | Commit message (Collapse) | Author |
|
|
|
|
|
* `_gui_input`, `_input`, `_unhandled_input` and `_unhandled_key_input` are now regular C++ virutal functions.
* Everything else converted to GDVIRTUAL
* BIND_VMETHOD is gone, always use the new syntax from now on.
Creating `_gui_input` method and using the binder to register events will no longer work, simply override the virtual function now.
|
|
|
|
|
|
|
|
|
|
Optimize NodePath update when renaming or deleting nodes in the editor
|
|
|
|
Assign value to property by dropping to scene tree
|
|
|
|
* Added a new macro SNAME() that constructs and caches a local stringname.
* Subsequent usages use the cached version.
* Since these use a global static variable, a second refcounter of static usages need to be kept for cleanup time.
* Replaced all theme usages by this new macro.
* Replace all signal emission usages by this new macro.
* Replace all call_deferred usages by this new macro.
This is part of ongoing work to optimize GUI and the editor.
|
|
|
|
Fixes for multi-node editing interactions.
|
|
Now the process uses a Map to lookup node pointers instead of iterating
over all modified node paths in a list and comparing them for each
property to check.
The process also avoids checking properties with empty node paths and
does an early exit on deleted nodes to avoid checking the node and its
descendants.
Also made a minor change in NodePath::rel_path_to() to avoid resizing a
Vector many times for long paths (with copy-on-write each time). Now
it's down to 2 resize calls in any case.
|
|
|
|
This makes for a smoother prototyping process compared to displaying
an error message.
|
|
Added r_ prefix for reference arguments that can be modified.
|
|
NodePath properly updated in the editor in more cases when nodes are moved or renamed
|
|
Fix more cases of node path needing an update when nodes are renamed or
moved in the editor.
Built-in node properties:
Before, node paths were checked only for script export variables. Now
all properties are checked from the node, which includes built-in node
properties.
Allows proper node path updates for nodes like remote transform, physics
joints, etc.
Arrays and dictionaries:
Node paths nested in array and dictionary properties are now also
updated in the editor.
Also update the documentation to be clear about node path update in the
editor and at runtime.
Co-authored-by: latorril <latorril@gmail.com>
|
|
|
|
1. When having 2 nodes selected, deselecting one in the ScemeTreeDock would keep the inspector in MultiNodeEdit rather than editing the one remaining node directly. This is now fixed. Closes #49451
2. In the Node3D editor, Shift-Selecting a region (drag selecting) would *deselect* nodes which were already selected, and select ones which were not, essentially inverting the selection. This is now fixed - shift-drag-selecting will only add nodes to the selection. To deselect, individual nodes can be clicked on. I am not sure if there is an issue open for this - it was a bug I found while testing other changes.
3. Other minor code cleanup.
|
|
from Multiple Selection"
|
|
|
|
|
|
|
|
Adds command+shift+a shortcut to instance a scene
|
|
Removes an extra separator when Scene Tree Editing is disabled. Discussed in #48518
|
|
Fixes #48514 by moving the visibility of these buttons into their own if statement that depends on if scene tree editing is allowed. Previously it was under the script editing setting which is unexpected as it works with nodes and the scene tree.
|
|
-Enable the trails and set the length in seconds
-Provide a mesh with a skeleton and a skin
-Or, alternatively use one of the built-in TubeTrailMesh/RibbonTrailMesh
-Works deterministically
-Fixed particle collisions (were broken)
-Not working in 2D yet (that will happen next)
|
|
|
|
|
|
|
|
|
|
Rename Array.invert() to Array.reverse()
|
|
Adds another key shortcut to instance a scene in the scentree dock. Complements ctrl+a to add a node.
|
|
|
|
See https://github.com/godotengine/godot-proposals/issues/2433.
|
|
Does the same internally for List and Vector<>, which includes all
PackedArray types.
|
|
Support for duplication of nested instanced scenes
|
|
|
|
Allow to create a node at specific position
|
|
Node::duplicate_from_editor, which is also used by "Duplicate" function of the SceneTreeDock
- Removed Node::duplicate_and_reown method as it is not used anymore
|
|
|
|
|
|
Remove Merge From Scene
|
|
|
|
|
|
Yet another node copy-paste PR
|
|
|