GHI-7125 : Tangent generation updates (#7252)
* Add a settings registry setting for choosing the default tangent generation method. Add another setting that will force scenes to fail to process if they are impacted by GHI-7125. Fix a bug where assets that return a Failure state from the TangentGenerateComponent will still successfully process. Signed-off-by: Tommy Walton <waltont@amazon.com> * Update with minor pr feedback Signed-off-by: Tommy Walton <waltont@amazon.com> * Update Gems/SceneProcessing/Code/Source/Generation/Components/TangentGenerator/TangentGenerateComponent.cpp Use the AZ_STRING_FORMAT and AZ_STRING_ARG macros for printing a string_view Co-authored-by: Chris Burel <burelc@amazon.com> Signed-off-by: Tommy Walton <waltont@amazon.com> Co-authored-by: Chris Burel <burelc@amazon.com> Signed-off-by: Tommy Walton <waltont@amazon.com>
This commit is contained in:
+12
-2
@@ -58,9 +58,19 @@ namespace AZ::SceneGenerationComponents
|
||||
void FindBlendShapes(
|
||||
AZ::SceneAPI::Containers::SceneGraph& graph, const AZ::SceneAPI::Containers::SceneGraph::NodeIndex& nodeIndex,
|
||||
AZStd::vector<AZ::SceneData::GraphData::BlendShapeData*>& outBlendShapes) const;
|
||||
bool GenerateTangentsForMesh(AZ::SceneAPI::Containers::Scene& scene, const AZ::SceneAPI::Containers::SceneGraph::NodeIndex& nodeIndex, AZ::SceneAPI::DataTypes::IMeshData* meshData);
|
||||
void UpdateFbxTangentWValues(AZ::SceneAPI::Containers::SceneGraph& graph, const AZ::SceneAPI::Containers::SceneGraph::NodeIndex& nodeIndex, const AZ::SceneAPI::DataTypes::IMeshData* meshData);
|
||||
bool GenerateTangentsForMesh(
|
||||
AZ::SceneAPI::Containers::Scene& scene,
|
||||
const AZ::SceneAPI::Containers::SceneGraph::NodeIndex& nodeIndex,
|
||||
AZ::SceneAPI::DataTypes::IMeshData* meshData,
|
||||
AZ::SceneAPI::DataTypes::TangentGenerationMethod defaultGenerationMethod);
|
||||
bool UpdateFbxTangentWValues(
|
||||
AZ::SceneAPI::Containers::SceneGraph& graph,
|
||||
const AZ::SceneAPI::Containers::SceneGraph::NodeIndex& nodeIndex,
|
||||
const AZ::SceneAPI::DataTypes::IMeshData* meshData,
|
||||
bool deubgBitangentFlip);
|
||||
const AZ::SceneAPI::SceneData::TangentsRule* GetTangentRule(const AZ::SceneAPI::Containers::Scene& scene) const;
|
||||
void GetRegistrySettings(
|
||||
AZ::SceneAPI::DataTypes::TangentGenerationMethod& defaultTangentGenrationMethod, bool& debugBitangentFlip) const;
|
||||
|
||||
size_t CalcUvSetCount(AZ::SceneAPI::Containers::SceneGraph& graph, const AZ::SceneAPI::Containers::SceneGraph::NodeIndex& nodeIndex) const;
|
||||
AZ::SceneAPI::DataTypes::IMeshVertexUVData* FindUvData(AZ::SceneAPI::Containers::SceneGraph& graph, const AZ::SceneAPI::Containers::SceneGraph::NodeIndex& nodeIndex, AZ::u64 uvSet) const;
|
||||
|
||||
Reference in New Issue
Block a user