From c3b2c55d5153e165f04e9c1923371f218c8d1c3d Mon Sep 17 00:00:00 2001 From: Wojciech Figat Date: Thu, 19 May 2022 12:00:12 +0200 Subject: [PATCH] Fix normal map when importing materials for model files --- Source/Engine/ContentImporters/CreateMaterial.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Source/Engine/ContentImporters/CreateMaterial.cpp b/Source/Engine/ContentImporters/CreateMaterial.cpp index 36caacb23..1dd5e7f05 100644 --- a/Source/Engine/ContentImporters/CreateMaterial.cpp +++ b/Source/Engine/ContentImporters/CreateMaterial.cpp @@ -61,13 +61,13 @@ namespace return &node; } - ShaderGraphNode<>* AddTextureNode(MaterialLayer* layer, const Guid& textureId) + ShaderGraphNode<>* AddTextureNode(MaterialLayer* layer, const Guid& textureId, bool normalMap = false) { if (!textureId.IsValid()) return nullptr; auto& node = layer->Graph.Nodes.AddOne(); node.ID = layer->Graph.Nodes.Count(); - node.Type = GRAPH_NODE_MAKE_TYPE(5, 1); + node.Type = GRAPH_NODE_MAKE_TYPE(5, normalMap ? 4 : 1); node.Boxes.Resize(7); node.Boxes[0] = MaterialGraphBox(&node, 0, VariantType::Vector2); // UVs node.Boxes[6] = MaterialGraphBox(&node, 6, VariantType::Object); // Texture Reference @@ -178,7 +178,7 @@ CreateAssetResult CreateMaterial::Create(CreateAssetContext& context) CONNECT(layer->Root->Boxes[static_cast(MaterialGraphBoxes::Emissive)], emissiveColor->Boxes[0]); SET_POS(emissiveColor, Vector2(-493.5272f, -2.926111f)); } - auto normalMap = AddTextureNode(layer, options.Normals.Texture); + auto normalMap = AddTextureNode(layer, options.Normals.Texture, true); if (normalMap) { CONNECT(layer->Root->Boxes[static_cast(MaterialGraphBoxes::Normal)], normalMap->Boxes[1]);