diff --git a/03-UnrealEngine/Editor/FBXAnimation导入&导出逻辑.md b/03-UnrealEngine/Editor/FBXAnimation导入&导出逻辑.md index 543e1a4..e43a3d9 100644 --- a/03-UnrealEngine/Editor/FBXAnimation导入&导出逻辑.md +++ b/03-UnrealEngine/Editor/FBXAnimation导入&导出逻辑.md @@ -170,6 +170,22 @@ void FFbxExporter::CorrectAnimTrackInterpolation( TArray& BoneNodes, F } ``` +## AnimSequence生成逻辑 +```c++ +//创建UAnimSequence +FString ParentPath = FString::Printf(TEXT("%s/%s"), *FPackageName::GetLongPackagePath(*Outer->GetName()), *SequenceName); +UObject* ParentPackage = CreatePackage( *ParentPath); +UObject* Object = LoadObject(ParentPackage, *SequenceName, NULL, (LOAD_Quiet | LOAD_NoWarn), NULL); +UAnimSequence * DestSeq = Cast(Object); + +//设置骨骼 +DestSeq->SetSkeleton(Skeleton); + +//设置文件帧率率与重采样率 +DestSeq->ImportFileFramerate = GetOriginalFbxFramerate(); +DestSeq->ImportResampleFramerate = ResampleRate; +``` + ## 导入Curve相关逻辑 1. UnFbx::FFbxImporter::ImportAnimation() 2. UnFbx::FFbxImporter::ImportBlendShapeCurves()