-
Notifications
You must be signed in to change notification settings - Fork 2
Open
Description
If your animations look all messed up after using this tool, simply add a blendoverride to the layer.
Add this:
destLayer->BlendMode.Set(fbxsdk::FbxAnimLayer::eBlendOverride);
To the following function:
void CreateAnimation(FbxScene* destScene, FbxScene* srcScene, std::string const & name) {
auto* srcStack = srcScene->GetSrcObject<fbxsdk::FbxAnimStack>(0);
auto* srcLayer = srcStack->GetSrcObject<fbxsdk::FbxAnimLayer>(0);
destScene->CreateAnimStack(name.c_str());
auto* destStack = destScene->GetSrcObject<fbxsdk::FbxAnimStack>(destScene->GetSrcObjectCount<fbxsdk::FbxAnimStack>()-1);
auto* destLayer = fbxsdk::FbxAnimLayer::Create(destScene, srcLayer->GetName());
destLayer->BlendMode.Set(fbxsdk::FbxAnimLayer::eBlendOverride); //<-- CODE GOES HERE
destStack->AddMember(destLayer);
CreateCurves(destLayer, destScene->GetRootNode(), srcLayer, srcScene->GetRootNode());
destStack->LocalStop.Set(srcStack->LocalStop.Get());
}
That fixed the issue for me.
Demonstration of the issue (note that the whole second animation looks completely abnormal):
https://github.com/user-attachments/assets/b8b8bfe2-7d15-417d-b5b1-310a1e3538ab
Metadata
Metadata
Assignees
Labels
No labels