summaryrefslogtreecommitdiff
path: root/editor/plugins/visual_shader_editor_plugin.cpp
diff options
context:
space:
mode:
authorChaosus <chaosus89@gmail.com>2019-04-24 11:23:01 +0300
committerChaosus <chaosus89@gmail.com>2019-04-24 12:47:54 +0300
commit3a3df84d3b67e3dd74271c1cf870d153b4aa345e (patch)
tree81905b34375aef9a65204cc4a18f8b1bb4b69248 /editor/plugins/visual_shader_editor_plugin.cpp
parent93e7eb0ddbbe5bff9129a5486c5490834cb0f36e (diff)
Fix connection lines glitch in visual shaders
Diffstat (limited to 'editor/plugins/visual_shader_editor_plugin.cpp')
-rw-r--r--editor/plugins/visual_shader_editor_plugin.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/editor/plugins/visual_shader_editor_plugin.cpp b/editor/plugins/visual_shader_editor_plugin.cpp
index 7e48d054ad..a732231e17 100644
--- a/editor/plugins/visual_shader_editor_plugin.cpp
+++ b/editor/plugins/visual_shader_editor_plugin.cpp
@@ -351,7 +351,6 @@ void VisualShaderEditor::_update_graph() {
Ref<VisualShaderNode> vsnode = visual_shader->get_node(type, nodes[n_i]);
GraphNode *node = memnew(GraphNode);
- graph->add_child(node);
/*if (!vsnode->is_connected("changed", this, "_node_changed")) {
vsnode->connect("changed", this, "_node_changed", varray(vsnode->get_instance_id()), CONNECT_DEFERRED);
@@ -374,6 +373,8 @@ void VisualShaderEditor::_update_graph() {
Ref<VisualShaderNodeUniform> uniform = vsnode;
if (uniform.is_valid()) {
+ graph->add_child(node);
+
LineEdit *uniform_name = memnew(LineEdit);
uniform_name->set_text(uniform->get_uniform_name());
node->add_child(uniform_name);
@@ -537,6 +538,10 @@ void VisualShaderEditor::_update_graph() {
error_label->set_text(error);
node->add_child(error_label);
}
+
+ if (!uniform.is_valid()) {
+ graph->add_child(node);
+ }
}
for (List<VisualShader::Connection>::Element *E = connections.front(); E; E = E->next()) {