From 9a613c6fd6958c790541297aac8adad5a8ecf346 Mon Sep 17 00:00:00 2001 From: ImperatorS79 Date: Fri, 27 Nov 2020 14:44:19 +0100 Subject: [PATCH] Fix ShaderNodes on macos --- src/ShaderNode/DataModels/BufferField.cpp | 2 +- src/ShaderNode/DataModels/Cast.inl | 1 + src/ShaderNode/DataTypes/VecData.hpp | 4 ++-- src/ShaderNode/ShaderGraph.cpp | 10 +++++----- src/ShaderNode/Widgets/MainWindow.cpp | 2 +- src/ShaderNode/Widgets/StructEditDialog.cpp | 2 +- src/ShaderNode/Widgets/StructMemberEditDialog.cpp | 2 +- 7 files changed, 12 insertions(+), 11 deletions(-) diff --git a/src/ShaderNode/DataModels/BufferField.cpp b/src/ShaderNode/DataModels/BufferField.cpp index 3f3986fb5..1c673e8ca 100644 --- a/src/ShaderNode/DataModels/BufferField.cpp +++ b/src/ShaderNode/DataModels/BufferField.cpp @@ -332,7 +332,7 @@ void BufferField::PopulateFieldList(std::size_t structIndex, const std::string& else if constexpr (std::is_same_v) PopulateFieldList(arg, prefix + member.name + "."); else - static_assert(AlwaysFalse::value, "non-exhaustive visitor"); + static_assert(Nz::AlwaysFalse::value, "non-exhaustive visitor"); }, member.type); } diff --git a/src/ShaderNode/DataModels/Cast.inl b/src/ShaderNode/DataModels/Cast.inl index cd96d6ccc..441ede3f5 100644 --- a/src/ShaderNode/DataModels/Cast.inl +++ b/src/ShaderNode/DataModels/Cast.inl @@ -2,6 +2,7 @@ #include #include #include +#include #include template diff --git a/src/ShaderNode/DataTypes/VecData.hpp b/src/ShaderNode/DataTypes/VecData.hpp index d80bff106..f6e1bfdd9 100644 --- a/src/ShaderNode/DataTypes/VecData.hpp +++ b/src/ShaderNode/DataTypes/VecData.hpp @@ -48,7 +48,7 @@ struct VecExpressionTypeHelper<4> static constexpr Nz::ShaderNodes::BasicType ExpressionType = Nz::ShaderNodes::BasicType::Float4; }; -template constexpr Nz::ShaderNodes::BasicType VecExpressionType = VecExpressionTypeHelper::template ExpressionType; +template constexpr Nz::ShaderNodes::BasicType VecExpressionType = VecExpressionTypeHelper::ExpressionType; struct VecTypeDummy {}; @@ -86,7 +86,7 @@ struct VecTypeHelper<4> using Type = Nz::Vector4f; }; -template using VecType = typename VecTypeHelper::template Type; +template using VecType = typename VecTypeHelper::Type; constexpr std::array s_vectorComponents = { 'X', 'Y', 'Z', 'W' }; diff --git a/src/ShaderNode/ShaderGraph.cpp b/src/ShaderNode/ShaderGraph.cpp index a1799df3b..cc5995d27 100644 --- a/src/ShaderNode/ShaderGraph.cpp +++ b/src/ShaderNode/ShaderGraph.cpp @@ -64,7 +64,7 @@ m_type(ShaderType::NotSet) { "position", PrimitiveType::Float3 }, { "normal", PrimitiveType::Float3 }, { "uv", PrimitiveType::Float2 }, - { "inner", 2 } + { "inner", 2u } } }); AddStruct("InnerStruct", { @@ -74,7 +74,7 @@ m_type(ShaderType::NotSet) }); AddStruct("OuterStruct", { { - { "a", 1 }, + { "a", 1u }, { "b", PrimitiveType::Float1 } } }); @@ -266,7 +266,7 @@ void ShaderGraph::Load(const QJsonObject& data) if (typeDocRef.isString()) memberInfo.type = DecodeEnum(typeDocRef.toString().toStdString()).value(); else - memberInfo.type = typeDocRef.toInt(); + memberInfo.type = static_cast(typeDocRef.toInt()); } } @@ -363,7 +363,7 @@ QJsonObject ShaderGraph::Save() else if constexpr (std::is_same_v) memberDoc["type"] = int(arg); else - static_assert(AlwaysFalse::value, "non-exhaustive visitor"); + static_assert(Nz::AlwaysFalse::value, "non-exhaustive visitor"); }, member.type); memberArray.append(std::move(memberDoc)); @@ -535,7 +535,7 @@ Nz::ShaderExpressionType ShaderGraph::ToShaderExpressionType(const std::variant< return s.name; } else - static_assert(AlwaysFalse::value, "non-exhaustive visitor"); + static_assert(Nz::AlwaysFalse::value, "non-exhaustive visitor"); }, type); }; diff --git a/src/ShaderNode/Widgets/MainWindow.cpp b/src/ShaderNode/Widgets/MainWindow.cpp index b88bef25f..b313ee083 100644 --- a/src/ShaderNode/Widgets/MainWindow.cpp +++ b/src/ShaderNode/Widgets/MainWindow.cpp @@ -269,7 +269,7 @@ Nz::ShaderAst MainWindow::ToShader() else if constexpr (std::is_same_v) member.type = m_shaderGraph.GetStruct(arg).name; else - static_assert(AlwaysFalse::value, "non-exhaustive visitor"); + static_assert(Nz::AlwaysFalse::value, "non-exhaustive visitor"); }, sMember.type); } diff --git a/src/ShaderNode/Widgets/StructEditDialog.cpp b/src/ShaderNode/Widgets/StructEditDialog.cpp index 320ad586a..6c10fa0d9 100644 --- a/src/ShaderNode/Widgets/StructEditDialog.cpp +++ b/src/ShaderNode/Widgets/StructEditDialog.cpp @@ -97,7 +97,7 @@ QString StructEditDialog::GetMemberName(const StructInfo::Member& member) else if constexpr (std::is_same_v) name += QString::fromStdString(m_shaderGraph.GetStruct(arg).name); else - static_assert(AlwaysFalse::value, "non-exhaustive visitor"); + static_assert(Nz::AlwaysFalse::value, "non-exhaustive visitor"); }, member.type); diff --git a/src/ShaderNode/Widgets/StructMemberEditDialog.cpp b/src/ShaderNode/Widgets/StructMemberEditDialog.cpp index 82bc4e1a2..dcf0d830f 100644 --- a/src/ShaderNode/Widgets/StructMemberEditDialog.cpp +++ b/src/ShaderNode/Widgets/StructMemberEditDialog.cpp @@ -50,7 +50,7 @@ StructMemberEditDialog(shaderGraph, parent) else if constexpr (std::is_same_v) m_typeList->setCurrentIndex(static_cast(PrimitiveTypeCount + arg)); else - static_assert(AlwaysFalse::value, "non-exhaustive visitor"); + static_assert(Nz::AlwaysFalse::value, "non-exhaustive visitor"); }, member.type); }