Fix python fbx tests (#2171)

* Update fbx test dbgsg files

Remove rc products from fbx test expected output
Update warning counts for 2 of the tests - these are due to missing material properties
Add SkipAtomOutput setting to disable atom material and mesh processing in scene as these pull in a lot of external dependencies to Process
Removed BlendShapeData and MeshData debug output of positions/normals/faces
Updated ManifestImportRequestHandler to remove warning about Joining 2 absolute paths
Updated AssImpMaterialImporter to use new GenerateRelativeSourcePath API to fix issue where relative path generation failed with tmp project directories

Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>

* Add comment for setting

Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>

* Add override dbgsg file to python test

The mesh optimizer specifically avoids creating optimized nodes for nodes that are not selected, resulting in a different scene graph that requires a different dbgsg file to compare with

Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>

* Replace hardcoded passing of specific registry setting to instead pass all registry settings to AssetBuilder

Signed-off-by: amzn-mike <80125227+amzn-mike@users.noreply.github.com>
This commit is contained in:
amzn-mike
2021-07-20 08:48:35 -05:00
committed by GitHub
parent 7c796d9bf0
commit fc75dd5fda
18 changed files with 1293 additions and 135432 deletions
@@ -30,6 +30,7 @@
#include <Atom/RPI.Edit/Material/MaterialConverterBus.h>
#include <Atom/RPI.Reflect/Material/MaterialAsset.h>
#include <AzCore/Settings/SettingsRegistry.h>
namespace AZ
{
@@ -79,7 +80,10 @@ namespace AZ
jobDependency.m_platformIdentifier = platformIdentifier;
jobDependency.m_type = AssetBuilderSDK::JobDependencyType::Order;
jobDependencyList.push_back(jobDependency);
if (!materialTypeSource.m_sourceFileDependencyPath.empty())
{
jobDependencyList.push_back(jobDependency);
}
}
void MaterialAssetBuilderComponent::Reflect(ReflectContext* context)
@@ -104,6 +108,15 @@ namespace AZ
MaterialAssetBuilderComponent::MaterialAssetBuilderComponent()
{
// This setting disables material output (for automated testing purposes) to allow an FBX file to be processed without including
// the dozens of dependencies required to process a material.
auto settingsRegistry = AZ::SettingsRegistry::Get();
bool skipAtomOutput = false;
if (settingsRegistry && settingsRegistry->Get(skipAtomOutput, "/O3DE/SceneAPI/AssetImporter/SkipAtomOutput") && skipAtomOutput)
{
return;
}
BindToCall(&MaterialAssetBuilderComponent::BuildMaterials);
}