Explorar o código

Register tangents rule for mesh groups, so users can add it to the scene settings

Signed-off-by: Benjamin Jillich <[email protected]>
Benjamin Jillich %!s(int64=4) %!d(string=hai) anos
pai
achega
fe661bc159

+ 1 - 2
Code/Tools/SceneAPI/SceneCore/DataTypes/GraphData/IMeshVertexTangentData.h

@@ -25,8 +25,7 @@ namespace AZ
             enum class TangentSpace
             {
                 FromSourceScene = 0,
-                MikkT           = 1,
-                EMotionFX       = 2
+                MikkT           = 1
             };
 
             enum class BitangentMethod

+ 0 - 1
Code/Tools/SceneAPI/SceneData/GraphData/MeshVertexBitangentData.cpp

@@ -34,7 +34,6 @@ namespace AZ
                         ->Method("GetBitangent", &MeshVertexBitangentData::GetBitangent)
                         ->Method("GetBitangentSetIndex", &MeshVertexBitangentData::GetBitangentSetIndex)
                         ->Method("GetTangentSpace", &MeshVertexBitangentData::GetTangentSpace)
-                        ->Enum<(int)SceneAPI::DataTypes::TangentSpace::EMotionFX>("EMotionFX")
                         ->Enum<(int)SceneAPI::DataTypes::TangentSpace::FromSourceScene>("FromSourceScene")
                         ->Enum<(int)SceneAPI::DataTypes::TangentSpace::MikkT>("MikkT");
                 }

+ 0 - 1
Code/Tools/SceneAPI/SceneData/GraphData/MeshVertexTangentData.cpp

@@ -34,7 +34,6 @@ namespace AZ
                         ->Method("GetTangent", &MeshVertexTangentData::GetTangent)
                         ->Method("GetTangentSetIndex", &MeshVertexTangentData::GetTangentSetIndex)
                         ->Method("GetTangentSpace", &MeshVertexTangentData::GetTangentSpace)
-                        ->Enum<(int)SceneAPI::DataTypes::TangentSpace::EMotionFX>("EMotionFX")
                         ->Enum<(int)SceneAPI::DataTypes::TangentSpace::FromSourceScene>("FromSourceScene")
                         ->Enum<(int)SceneAPI::DataTypes::TangentSpace::MikkT>("MikkT");
                 }

+ 5 - 0
Code/Tools/SceneAPI/SceneData/ManifestMetaInfoHandler.cpp

@@ -23,6 +23,7 @@
 #include <SceneAPI/SceneData/Rules/MaterialRule.h>
 #include <SceneAPI/SceneData/Rules/StaticMeshAdvancedRule.h>
 #include <SceneAPI/SceneData/Rules/SkeletonProxyRule.h>
+#include <SceneAPI/SceneData/Rules/TangentsRule.h>
 #include <SceneAPI/SceneData/Rules/SkinMeshAdvancedRule.h>
 #include <SceneAPI/SceneData/Rules/SkinRule.h>
 #include <SceneAPI/SceneData/Rules/CoordinateSystemRule.h>
@@ -82,6 +83,10 @@ namespace AZ
                     {
                         modifiers.push_back(azrtti_typeid<CoordinateSystemRule>());
                     }
+                    if (existingRules.find(SceneData::TangentsRule::TYPEINFO_Uuid()) == existingRules.end())
+                    {
+                        modifiers.push_back(SceneData::TangentsRule::TYPEINFO_Uuid());
+                    }
                 }
                 else if (target.RTTI_IsTypeOf(DataTypes::ISkinGroup::TYPEINFO_Uuid()))
                 {