From f478340376267f1623f7138fe2b06024d050687c Mon Sep 17 00:00:00 2001 From: amzn-mike <80125227+amzn-mike@users.noreply.github.com> Date: Wed, 12 May 2021 16:04:25 -0500 Subject: [PATCH 1/8] Data driven asset importer. Need to fix reflection --- AssetImporterSettings.json | 7 +++ .../FbxImportRequestHandler.cpp | 60 +++++++++++++++++-- .../FbxSceneBuilder/FbxImportRequestHandler.h | 16 ++++- 3 files changed, 78 insertions(+), 5 deletions(-) create mode 100644 AssetImporterSettings.json diff --git a/AssetImporterSettings.json b/AssetImporterSettings.json new file mode 100644 index 0000000000..134484cf8d --- /dev/null +++ b/AssetImporterSettings.json @@ -0,0 +1,7 @@ +{ + "SupportedFileTypeExtensions" : [ + ".fbx", + ".stl", + ".stp" + ] +} \ No newline at end of file diff --git a/Code/Tools/SceneAPI/FbxSceneBuilder/FbxImportRequestHandler.cpp b/Code/Tools/SceneAPI/FbxSceneBuilder/FbxImportRequestHandler.cpp index 155209f1b5..2210abfaf7 100644 --- a/Code/Tools/SceneAPI/FbxSceneBuilder/FbxImportRequestHandler.cpp +++ b/Code/Tools/SceneAPI/FbxSceneBuilder/FbxImportRequestHandler.cpp @@ -10,7 +10,14 @@ * */ +#include +#include +#include +#include #include +#include +#include +#include #include #include #include @@ -23,10 +30,47 @@ namespace AZ { namespace FbxSceneImporter { - const char* FbxImportRequestHandler::s_extension = ".fbx"; + AssetImporterSettings::AssetImporterSettings() + { + // Default supported extension in case the settings file isn't found + m_supportedFileTypeExtensions.emplace(".fbx"); + } + + void AssetImporterSettings::Reflect(AZ::ReflectContext* context) + { + if (auto serializeContext = azrtti_cast(context); serializeContext) + { + serializeContext->Class() + ->Version(1) + ->Field("SupportedFileTypeExtensions", &AssetImporterSettings::m_supportedFileTypeExtensions); + } + } void FbxImportRequestHandler::Activate() { + // Attempt to load the Slice Builder Settings file + AZ::IO::LocalFileIO localFileIO; + + // This will point to @assets@/SettingsFilename, which loads from the cache + // We don't really want this but it works for now + // Trying to use AzToolsFramework::AssetSystemRequestBus::Events::GetSourceInfoBySourcePath at this point + // would fail because components seem to activate before the AP has populated its file list + AZ::IO::Path sliceBuilderSettingsIoPath(SettingsFilename); + auto result = AzFramework::FileFunc::ReadJsonFile(sliceBuilderSettingsIoPath, &localFileIO); + if (result.IsSuccess()) + { + AZ::JsonSerializationResult::ResultCode serializationResult = + AZ::JsonSerialization::Load(m_settings, result.GetValue()); + if (serializationResult.GetProcessing() == AZ::JsonSerializationResult::Processing::Halted) + { + AZ_Warning("", false, "Error in Asset Importer Settings file.\nUsing default settings."); + } + } + else + { + AZ_Warning("", false, "Failed to load Asset Importer Settings file.\nUsing default settings."); + } + BusConnect(); } @@ -37,21 +81,29 @@ namespace AZ void FbxImportRequestHandler::Reflect(ReflectContext* context) { + AssetImporterSettings::Reflect(context); + SerializeContext* serializeContext = azrtti_cast(context); if (serializeContext) { - serializeContext->Class()->Version(1); + serializeContext->Class()->Version(1)->Attribute( + AZ::Edit::Attributes::SystemComponentTags, + AZStd::vector({AssetBuilderSDK::ComponentTags::AssetBuilder})); + } } void FbxImportRequestHandler::GetSupportedFileExtensions(AZStd::unordered_set& extensions) { - extensions.insert(s_extension); + extensions.insert(m_settings.m_supportedFileTypeExtensions.begin(), m_settings.m_supportedFileTypeExtensions.end()); } Events::LoadingResult FbxImportRequestHandler::LoadAsset(Containers::Scene& scene, const AZStd::string& path, const Uuid& guid, [[maybe_unused]] RequestingApplication requester) { - if (!AzFramework::StringFunc::Path::IsExtension(path.c_str(), s_extension)) + AZStd::string extension; + AzFramework::StringFunc::Path::GetExtension(path.c_str(), extension); + + if (!m_settings.m_supportedFileTypeExtensions.contains(extension)) { return Events::LoadingResult::Ignored; } diff --git a/Code/Tools/SceneAPI/FbxSceneBuilder/FbxImportRequestHandler.h b/Code/Tools/SceneAPI/FbxSceneBuilder/FbxImportRequestHandler.h index 8b33051f1e..3ef2823e24 100644 --- a/Code/Tools/SceneAPI/FbxSceneBuilder/FbxImportRequestHandler.h +++ b/Code/Tools/SceneAPI/FbxSceneBuilder/FbxImportRequestHandler.h @@ -21,6 +21,17 @@ namespace AZ { namespace FbxSceneImporter { + struct AssetImporterSettings + { + AZ_TYPE_INFO(AssetImporterSettings, "{8BB6C7AD-BF99-44DC-9DA1-E7AD3F03DC10}"); + + AssetImporterSettings(); + + static void Reflect(AZ::ReflectContext* context); + + AZStd::unordered_set m_supportedFileTypeExtensions; + }; + class FbxImportRequestHandler : public SceneCore::BehaviorComponent , public Events::AssetImportRequestBus::Handler @@ -39,7 +50,10 @@ namespace AZ RequestingApplication requester) override; private: - static const char* s_extension; + + AssetImporterSettings m_settings; + + static constexpr const char* SettingsFilename = "AssetImporterSettings.json"; }; } // namespace FbxSceneImporter } // namespace SceneAPI From 2b538c9921ce2be2ee4fc9c9877c1dd0272c8f58 Mon Sep 17 00:00:00 2001 From: amzn-mike <80125227+amzn-mike@users.noreply.github.com> Date: Thu, 13 May 2021 09:47:21 -0500 Subject: [PATCH 2/8] Switch to using settings registry # Conflicts: # Assets/Engine/Registry/assetimporter.setreg --- AssetImporterSettings.json | 7 ---- .../SceneAPI/FbxSceneBuilder/DllMain.cpp | 6 +--- .../FbxImportRequestHandler.cpp | 35 +++++-------------- .../FbxSceneBuilder/FbxImportRequestHandler.h | 6 ++-- .../SceneBuilder/SceneBuilderComponent.cpp | 6 +++- .../SceneBuilder/SceneBuilderComponent.h | 2 ++ Registry/assetimporter.setreg | 17 +++++++++ 7 files changed, 37 insertions(+), 42 deletions(-) delete mode 100644 AssetImporterSettings.json create mode 100644 Registry/assetimporter.setreg diff --git a/AssetImporterSettings.json b/AssetImporterSettings.json deleted file mode 100644 index 134484cf8d..0000000000 --- a/AssetImporterSettings.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "SupportedFileTypeExtensions" : [ - ".fbx", - ".stl", - ".stp" - ] -} \ No newline at end of file diff --git a/Code/Tools/SceneAPI/FbxSceneBuilder/DllMain.cpp b/Code/Tools/SceneAPI/FbxSceneBuilder/DllMain.cpp index 3dc14814de..d3d7b38663 100644 --- a/Code/Tools/SceneAPI/FbxSceneBuilder/DllMain.cpp +++ b/Code/Tools/SceneAPI/FbxSceneBuilder/DllMain.cpp @@ -46,11 +46,6 @@ namespace AZ // Currently it's still needed to explicitly create an instance of this instead of letting // it be a normal component. This is because ResourceCompilerScene needs to return // the list of available extensions before it can start the application. - if (!g_fbxImporter) - { - g_fbxImporter = aznew AZ::SceneAPI::FbxSceneImporter::FbxImportRequestHandler(); - g_fbxImporter->Activate(); - } } void Reflect(AZ::SerializeContext* /*context*/) @@ -64,6 +59,7 @@ namespace AZ { // Global importer and behavior g_componentDescriptors.push_back(FbxSceneBuilder::FbxImporter::CreateDescriptor()); + g_componentDescriptors.push_back(FbxSceneImporter::FbxImportRequestHandler::CreateDescriptor()); // Node and attribute importers g_componentDescriptors.push_back(AssImpBitangentStreamImporter::CreateDescriptor()); diff --git a/Code/Tools/SceneAPI/FbxSceneBuilder/FbxImportRequestHandler.cpp b/Code/Tools/SceneAPI/FbxSceneBuilder/FbxImportRequestHandler.cpp index 2210abfaf7..d3962cce60 100644 --- a/Code/Tools/SceneAPI/FbxSceneBuilder/FbxImportRequestHandler.cpp +++ b/Code/Tools/SceneAPI/FbxSceneBuilder/FbxImportRequestHandler.cpp @@ -30,12 +30,6 @@ namespace AZ { namespace FbxSceneImporter { - AssetImporterSettings::AssetImporterSettings() - { - // Default supported extension in case the settings file isn't found - m_supportedFileTypeExtensions.emplace(".fbx"); - } - void AssetImporterSettings::Reflect(AZ::ReflectContext* context) { if (auto serializeContext = azrtti_cast(context); serializeContext) @@ -48,27 +42,11 @@ namespace AZ void FbxImportRequestHandler::Activate() { - // Attempt to load the Slice Builder Settings file - AZ::IO::LocalFileIO localFileIO; - - // This will point to @assets@/SettingsFilename, which loads from the cache - // We don't really want this but it works for now - // Trying to use AzToolsFramework::AssetSystemRequestBus::Events::GetSourceInfoBySourcePath at this point - // would fail because components seem to activate before the AP has populated its file list - AZ::IO::Path sliceBuilderSettingsIoPath(SettingsFilename); - auto result = AzFramework::FileFunc::ReadJsonFile(sliceBuilderSettingsIoPath, &localFileIO); - if (result.IsSuccess()) + auto settingsRegistry = AZ::SettingsRegistry::Get(); + + if (settingsRegistry) { - AZ::JsonSerializationResult::ResultCode serializationResult = - AZ::JsonSerialization::Load(m_settings, result.GetValue()); - if (serializationResult.GetProcessing() == AZ::JsonSerializationResult::Processing::Halted) - { - AZ_Warning("", false, "Error in Asset Importer Settings file.\nUsing default settings."); - } - } - else - { - AZ_Warning("", false, "Failed to load Asset Importer Settings file.\nUsing default settings."); + settingsRegistry->GetObject(m_settings, "/O3DE/SceneAPI/AssetImporter"); } BusConnect(); @@ -125,6 +103,11 @@ namespace AZ return Events::LoadingResult::AssetFailure; } } + + void FbxImportRequestHandler::GetProvidedServices(ComponentDescriptor::DependencyArrayType& provided) + { + provided.emplace_back(AZ_CRC_CE("AssetImportRequestHandler")); + } } // namespace Import } // namespace SceneAPI } // namespace AZ diff --git a/Code/Tools/SceneAPI/FbxSceneBuilder/FbxImportRequestHandler.h b/Code/Tools/SceneAPI/FbxSceneBuilder/FbxImportRequestHandler.h index 3ef2823e24..99d2061229 100644 --- a/Code/Tools/SceneAPI/FbxSceneBuilder/FbxImportRequestHandler.h +++ b/Code/Tools/SceneAPI/FbxSceneBuilder/FbxImportRequestHandler.h @@ -24,9 +24,7 @@ namespace AZ struct AssetImporterSettings { AZ_TYPE_INFO(AssetImporterSettings, "{8BB6C7AD-BF99-44DC-9DA1-E7AD3F03DC10}"); - - AssetImporterSettings(); - + static void Reflect(AZ::ReflectContext* context); AZStd::unordered_set m_supportedFileTypeExtensions; @@ -49,6 +47,8 @@ namespace AZ Events::LoadingResult LoadAsset(Containers::Scene& scene, const AZStd::string& path, const Uuid& guid, RequestingApplication requester) override; + static void GetProvidedServices(ComponentDescriptor::DependencyArrayType& provided); + private: AssetImporterSettings m_settings; diff --git a/Gems/SceneProcessing/Code/Source/SceneBuilder/SceneBuilderComponent.cpp b/Gems/SceneProcessing/Code/Source/SceneBuilder/SceneBuilderComponent.cpp index e71a5207d0..25faca3667 100644 --- a/Gems/SceneProcessing/Code/Source/SceneBuilder/SceneBuilderComponent.cpp +++ b/Gems/SceneProcessing/Code/Source/SceneBuilder/SceneBuilderComponent.cpp @@ -72,6 +72,11 @@ namespace SceneBuilder m_sceneBuilder.BusDisconnect(); } + void BuilderPluginComponent::GetRequiredServices(AZ::ComponentDescriptor::DependencyArrayType& required) + { + required.emplace_back(AZ_CRC_CE("AssetImportRequestHandler")); + } + void BuilderPluginComponent::Reflect(AZ::ReflectContext* context) { AZ::SerializeContext* serializeContext = azrtti_cast(context); @@ -81,5 +86,4 @@ namespace SceneBuilder ->Attribute(AZ::Edit::Attributes::SystemComponentTags, AZStd::vector({ AssetBuilderSDK::ComponentTags::AssetBuilder })); } } - } // namespace SceneBuilder diff --git a/Gems/SceneProcessing/Code/Source/SceneBuilder/SceneBuilderComponent.h b/Gems/SceneProcessing/Code/Source/SceneBuilder/SceneBuilderComponent.h index c1fc6ebb36..aed5e1b026 100644 --- a/Gems/SceneProcessing/Code/Source/SceneBuilder/SceneBuilderComponent.h +++ b/Gems/SceneProcessing/Code/Source/SceneBuilder/SceneBuilderComponent.h @@ -32,6 +32,8 @@ namespace SceneBuilder void Activate() override; void Deactivate() override; + static void GetRequiredServices(AZ::ComponentDescriptor::DependencyArrayType& required); + private: SceneBuilderWorker m_sceneBuilder; }; diff --git a/Registry/assetimporter.setreg b/Registry/assetimporter.setreg new file mode 100644 index 0000000000..e0b0f00f6c --- /dev/null +++ b/Registry/assetimporter.setreg @@ -0,0 +1,17 @@ +{ + "O3DE": + { + "SceneAPI": + { + "AssetImporter": + { + "SupportedFileTypeExtensions": + [ + ".fbx", + ".stl", + ".stp" + ] + } + } + } +} \ No newline at end of file From 81067e38c9e6b6f489457baa0b5108f02ae7b397 Mon Sep 17 00:00:00 2001 From: amzn-mike <80125227+amzn-mike@users.noreply.github.com> Date: Thu, 13 May 2021 17:39:27 -0500 Subject: [PATCH 3/8] Remove stp --- Registry/assetimporter.setreg | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/Registry/assetimporter.setreg b/Registry/assetimporter.setreg index e0b0f00f6c..bd7c4d0705 100644 --- a/Registry/assetimporter.setreg +++ b/Registry/assetimporter.setreg @@ -8,8 +8,7 @@ "SupportedFileTypeExtensions": [ ".fbx", - ".stl", - ".stp" + ".stl" ] } } From b7891f4fb6e3fa5a596d5acd436fc9de12446588 Mon Sep 17 00:00:00 2001 From: amzn-mike <80125227+amzn-mike@users.noreply.github.com> Date: Thu, 13 May 2021 18:43:51 -0500 Subject: [PATCH 4/8] Code cleanup --- Code/Tools/SceneAPI/FbxSceneBuilder/DllMain.cpp | 7 ------- .../FbxSceneBuilder/FbxImportRequestHandler.cpp | 11 ++++------- 2 files changed, 4 insertions(+), 14 deletions(-) diff --git a/Code/Tools/SceneAPI/FbxSceneBuilder/DllMain.cpp b/Code/Tools/SceneAPI/FbxSceneBuilder/DllMain.cpp index d3d7b38663..5ffe916d23 100644 --- a/Code/Tools/SceneAPI/FbxSceneBuilder/DllMain.cpp +++ b/Code/Tools/SceneAPI/FbxSceneBuilder/DllMain.cpp @@ -41,13 +41,6 @@ namespace AZ static AZ::SceneAPI::FbxSceneImporter::FbxImportRequestHandler* g_fbxImporter = nullptr; static AZStd::vector g_componentDescriptors; - void Initialize() - { - // Currently it's still needed to explicitly create an instance of this instead of letting - // it be a normal component. This is because ResourceCompilerScene needs to return - // the list of available extensions before it can start the application. - } - void Reflect(AZ::SerializeContext* /*context*/) { // Descriptor registration is done in Reflect instead of Initialize because the ResourceCompilerScene initializes the libraries before diff --git a/Code/Tools/SceneAPI/FbxSceneBuilder/FbxImportRequestHandler.cpp b/Code/Tools/SceneAPI/FbxSceneBuilder/FbxImportRequestHandler.cpp index d3962cce60..65bb8de4c7 100644 --- a/Code/Tools/SceneAPI/FbxSceneBuilder/FbxImportRequestHandler.cpp +++ b/Code/Tools/SceneAPI/FbxSceneBuilder/FbxImportRequestHandler.cpp @@ -10,19 +10,16 @@ * */ -#include #include -#include #include #include #include -#include -#include -#include +#include +#include +#include #include #include #include -#include namespace AZ { @@ -79,7 +76,7 @@ namespace AZ Events::LoadingResult FbxImportRequestHandler::LoadAsset(Containers::Scene& scene, const AZStd::string& path, const Uuid& guid, [[maybe_unused]] RequestingApplication requester) { AZStd::string extension; - AzFramework::StringFunc::Path::GetExtension(path.c_str(), extension); + StringFunc::Path::GetExtension(path.c_str(), extension); if (!m_settings.m_supportedFileTypeExtensions.contains(extension)) { From ba4439c397ef8b2b3203b482f5a0fd56ebf88713 Mon Sep 17 00:00:00 2001 From: amzn-mike <80125227+amzn-mike@users.noreply.github.com> Date: Thu, 13 May 2021 19:52:00 -0500 Subject: [PATCH 5/8] Remove call to deleted init function --- Code/Tools/SceneAPI/FbxSceneBuilder/DllMain.cpp | 1 - 1 file changed, 1 deletion(-) diff --git a/Code/Tools/SceneAPI/FbxSceneBuilder/DllMain.cpp b/Code/Tools/SceneAPI/FbxSceneBuilder/DllMain.cpp index 5ffe916d23..d2818f3653 100644 --- a/Code/Tools/SceneAPI/FbxSceneBuilder/DllMain.cpp +++ b/Code/Tools/SceneAPI/FbxSceneBuilder/DllMain.cpp @@ -114,7 +114,6 @@ namespace AZ extern "C" AZ_DLL_EXPORT void InitializeDynamicModule(void* env) { AZ::Environment::Attach(static_cast(env)); - AZ::SceneAPI::FbxSceneBuilder::Initialize(); } extern "C" AZ_DLL_EXPORT void Reflect(AZ::SerializeContext* context) { From 3e0ce61d0003a9ad618607364d6403be80afb507 Mon Sep 17 00:00:00 2001 From: amzn-mike <80125227+amzn-mike@users.noreply.github.com> Date: Mon, 17 May 2021 08:24:02 -0500 Subject: [PATCH 6/8] Rename setreg file to sceneassetimporter --- Registry/{assetimporter.setreg => sceneassetimporter.setreg} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename Registry/{assetimporter.setreg => sceneassetimporter.setreg} (100%) diff --git a/Registry/assetimporter.setreg b/Registry/sceneassetimporter.setreg similarity index 100% rename from Registry/assetimporter.setreg rename to Registry/sceneassetimporter.setreg From ee4e9af46521fe06a08f910b0086790042fff8af Mon Sep 17 00:00:00 2001 From: amzn-mike <80125227+amzn-mike@users.noreply.github.com> Date: Mon, 17 May 2021 08:27:04 -0500 Subject: [PATCH 7/8] Rename AssetImporterSettings to SceneImporterSettings --- .../SceneAPI/FbxSceneBuilder/FbxImportRequestHandler.cpp | 8 ++++---- .../SceneAPI/FbxSceneBuilder/FbxImportRequestHandler.h | 6 +++--- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/Code/Tools/SceneAPI/FbxSceneBuilder/FbxImportRequestHandler.cpp b/Code/Tools/SceneAPI/FbxSceneBuilder/FbxImportRequestHandler.cpp index 65bb8de4c7..52ab184f66 100644 --- a/Code/Tools/SceneAPI/FbxSceneBuilder/FbxImportRequestHandler.cpp +++ b/Code/Tools/SceneAPI/FbxSceneBuilder/FbxImportRequestHandler.cpp @@ -27,13 +27,13 @@ namespace AZ { namespace FbxSceneImporter { - void AssetImporterSettings::Reflect(AZ::ReflectContext* context) + void SceneImporterSettings::Reflect(AZ::ReflectContext* context) { if (auto serializeContext = azrtti_cast(context); serializeContext) { - serializeContext->Class() + serializeContext->Class() ->Version(1) - ->Field("SupportedFileTypeExtensions", &AssetImporterSettings::m_supportedFileTypeExtensions); + ->Field("SupportedFileTypeExtensions", &SceneImporterSettings::m_supportedFileTypeExtensions); } } @@ -56,7 +56,7 @@ namespace AZ void FbxImportRequestHandler::Reflect(ReflectContext* context) { - AssetImporterSettings::Reflect(context); + SceneImporterSettings::Reflect(context); SerializeContext* serializeContext = azrtti_cast(context); if (serializeContext) diff --git a/Code/Tools/SceneAPI/FbxSceneBuilder/FbxImportRequestHandler.h b/Code/Tools/SceneAPI/FbxSceneBuilder/FbxImportRequestHandler.h index 99d2061229..f68b56314b 100644 --- a/Code/Tools/SceneAPI/FbxSceneBuilder/FbxImportRequestHandler.h +++ b/Code/Tools/SceneAPI/FbxSceneBuilder/FbxImportRequestHandler.h @@ -21,9 +21,9 @@ namespace AZ { namespace FbxSceneImporter { - struct AssetImporterSettings + struct SceneImporterSettings { - AZ_TYPE_INFO(AssetImporterSettings, "{8BB6C7AD-BF99-44DC-9DA1-E7AD3F03DC10}"); + AZ_TYPE_INFO(SceneImporterSettings, "{8BB6C7AD-BF99-44DC-9DA1-E7AD3F03DC10}"); static void Reflect(AZ::ReflectContext* context); @@ -51,7 +51,7 @@ namespace AZ private: - AssetImporterSettings m_settings; + SceneImporterSettings m_settings; static constexpr const char* SettingsFilename = "AssetImporterSettings.json"; }; From ca94c59e28d16704564ec97f1cbadb62b0845e23 Mon Sep 17 00:00:00 2001 From: amzn-mike <80125227+amzn-mike@users.noreply.github.com> Date: Wed, 19 May 2021 23:22:44 -0500 Subject: [PATCH 8/8] Switch FbxImportRequestHandler to inherit from AZ::Component instead of BehaviorComponent Previously FbxImportRequestHandler used to be activated as part of DllMain init and never had CreateDescriptor called, which meant reflect was not called. BehaviorComponents get created and Activated as part of special SceneCore logic. Since this component now needs to be activated as part of the normal flow, reflecting it caused it to be picked up by the SceneCore activate logic, causing it to be created/activated twice --- .../SceneAPI/FbxSceneBuilder/FbxImportRequestHandler.cpp | 2 +- Code/Tools/SceneAPI/FbxSceneBuilder/FbxImportRequestHandler.h | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Code/Tools/SceneAPI/FbxSceneBuilder/FbxImportRequestHandler.cpp b/Code/Tools/SceneAPI/FbxSceneBuilder/FbxImportRequestHandler.cpp index 52ab184f66..a43f1e16b8 100644 --- a/Code/Tools/SceneAPI/FbxSceneBuilder/FbxImportRequestHandler.cpp +++ b/Code/Tools/SceneAPI/FbxSceneBuilder/FbxImportRequestHandler.cpp @@ -61,7 +61,7 @@ namespace AZ SerializeContext* serializeContext = azrtti_cast(context); if (serializeContext) { - serializeContext->Class()->Version(1)->Attribute( + serializeContext->Class()->Version(1)->Attribute( AZ::Edit::Attributes::SystemComponentTags, AZStd::vector({AssetBuilderSDK::ComponentTags::AssetBuilder})); diff --git a/Code/Tools/SceneAPI/FbxSceneBuilder/FbxImportRequestHandler.h b/Code/Tools/SceneAPI/FbxSceneBuilder/FbxImportRequestHandler.h index f68b56314b..12c7c6f877 100644 --- a/Code/Tools/SceneAPI/FbxSceneBuilder/FbxImportRequestHandler.h +++ b/Code/Tools/SceneAPI/FbxSceneBuilder/FbxImportRequestHandler.h @@ -31,11 +31,11 @@ namespace AZ }; class FbxImportRequestHandler - : public SceneCore::BehaviorComponent + : public AZ::Component , public Events::AssetImportRequestBus::Handler { public: - AZ_COMPONENT(FbxImportRequestHandler, "{9F4B189C-0A96-4F44-A5F0-E087FF1561F8}", SceneCore::BehaviorComponent); + AZ_COMPONENT(FbxImportRequestHandler, "{9F4B189C-0A96-4F44-A5F0-E087FF1561F8}"); ~FbxImportRequestHandler() override = default;