diff options
author | RĂ©mi Verschelde <remi@verschelde.fr> | 2021-07-07 12:44:08 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-07-07 12:44:08 +0200 |
commit | 7428c076247254c215b984410816148a6515e471 (patch) | |
tree | 5b3bf3671080275c226776ec6073b8386c365602 /editor/plugins | |
parent | 82d4a8903be0e68dfd1ea758e4ac625585ac6312 (diff) | |
parent | 99909cb4f72d3689d23becd12e0f6d18f98c11f4 (diff) |
Merge pull request #50236 from Calinou/editor-preview-sun-sky-add-root-node
Add a root Node3D automatically if absent when adding preview sun and sky
Diffstat (limited to 'editor/plugins')
-rw-r--r-- | editor/plugins/node_3d_editor_plugin.cpp | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/editor/plugins/node_3d_editor_plugin.cpp b/editor/plugins/node_3d_editor_plugin.cpp index 213003654f..a7177faafa 100644 --- a/editor/plugins/node_3d_editor_plugin.cpp +++ b/editor/plugins/node_3d_editor_plugin.cpp @@ -6223,8 +6223,9 @@ void Node3DEditor::_add_sun_to_scene() { Node *base = get_tree()->get_edited_scene_root(); if (!base) { - EditorNode::get_singleton()->show_warning(TTR("A root node is needed for this operation")); - return; + // Create a root node so we can add child nodes to it. + EditorNode::get_singleton()->get_scene_tree_dock()->add_root_node(memnew(Node3D)); + base = get_tree()->get_edited_scene_root(); } ERR_FAIL_COND(!base); Node *new_sun = preview_sun->duplicate(); @@ -6241,8 +6242,9 @@ void Node3DEditor::_add_environment_to_scene() { Node *base = get_tree()->get_edited_scene_root(); if (!base) { - EditorNode::get_singleton()->show_warning(TTR("A root node is needed for this operation")); - return; + // Create a root node so we can add child nodes to it. + EditorNode::get_singleton()->get_scene_tree_dock()->add_root_node(memnew(Node3D)); + base = get_tree()->get_edited_scene_root(); } ERR_FAIL_COND(!base); |