From e342c88e64b47f3f8b65fd01e55e477896f2fcf9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A9r=C3=B4me=20Leclercq?= Date: Sun, 19 Jul 2020 21:08:25 +0200 Subject: [PATCH] ShaderNodes/InputValue: Fix output type when using Float1 --- src/ShaderNode/DataModels/InputValue.cpp | 18 ++++++++++++++---- src/ShaderNode/DataModels/InputValue.inl | 1 - 2 files changed, 14 insertions(+), 5 deletions(-) diff --git a/src/ShaderNode/DataModels/InputValue.cpp b/src/ShaderNode/DataModels/InputValue.cpp index f9337f262..1b33a8c9b 100644 --- a/src/ShaderNode/DataModels/InputValue.cpp +++ b/src/ShaderNode/DataModels/InputValue.cpp @@ -1,5 +1,5 @@ -#include #include +#include #include #include #include @@ -170,10 +170,20 @@ std::shared_ptr InputValue::outData(QtNodes::PortIndex port) const auto& inputEntry = graph.GetInput(*m_currentInputIndex); const auto& preview = graph.GetPreviewModel(); - auto vecData = std::make_shared(GetComponentCount(inputEntry.type)); - vecData->preview = preview.GetPreview(inputEntry.role, inputEntry.roleIndex); + if (inputEntry.type == PrimitiveType::Float1) + { + auto fData = std::make_shared(); + fData->preview = preview.GetPreview(inputEntry.role, inputEntry.roleIndex); - return vecData; + return fData; + } + else + { + auto vecData = std::make_shared(GetComponentCount(inputEntry.type)); + vecData->preview = preview.GetPreview(inputEntry.role, inputEntry.roleIndex); + + return vecData; + } } QtNodes::NodeValidationState InputValue::validationState() const diff --git a/src/ShaderNode/DataModels/InputValue.inl b/src/ShaderNode/DataModels/InputValue.inl index 344e3db41..ec5e2f581 100644 --- a/src/ShaderNode/DataModels/InputValue.inl +++ b/src/ShaderNode/DataModels/InputValue.inl @@ -1,2 +1 @@ #include -#include