diff --git a/Source/glTFRuntime/Private/glTFRuntimeParserSkeletalMeshes.cpp b/Source/glTFRuntime/Private/glTFRuntimeParserSkeletalMeshes.cpp index f735e2c6..8b8fc473 100644 --- a/Source/glTFRuntime/Private/glTFRuntimeParserSkeletalMeshes.cpp +++ b/Source/glTFRuntime/Private/glTFRuntimeParserSkeletalMeshes.cpp @@ -1,6 +1,9 @@ // Copyright 2020, Roberto De Ioris. #include "glTFRuntimeParser.h" +#if ENGINE_MAJOR_VERSION > 4 +#include "Animation/AnimData/AnimDataModel.h" +#endif #include "Rendering/SkeletalMeshLODModel.h" #include "Rendering/SkeletalMeshModel.h" #include "Rendering/SkeletalMeshRenderData.h" @@ -1794,6 +1797,7 @@ UAnimSequence* FglTFRuntimeParser::LoadSkeletalAnimation(USkeletalMesh * Skeleta #endif AnimSequence->SetPreviewMesh(SkeletalMesh); #if ENGINE_MAJOR_VERSION > 4 +#if WITH_EDITOR FIntProperty* IntProperty = CastField(UAnimDataModel::StaticClass()->FindPropertyByName(TEXT("NumberOfFrames"))); IntProperty->SetPropertyValue_InContainer(AnimSequence->GetDataModel(), NumFrames); FFloatProperty* FloatProperty = CastField(UAnimDataModel::StaticClass()->FindPropertyByName(TEXT("PlayLength"))); @@ -1804,6 +1808,7 @@ UAnimSequence* FglTFRuntimeParser::LoadSkeletalAnimation(USkeletalMesh * Skeleta FStructProperty* StructProperty = CastField(UAnimDataModel::StaticClass()->FindPropertyByName(TEXT("FrameRate"))); FFrameRate* FrameRatePtr = StructProperty->ContainerPtrToValuePtr(AnimSequence->GetDataModel()); *FrameRatePtr = FrameRate; +#endif #else AnimSequence->SetRawNumberOfFrame(NumFrames); AnimSequence->SequenceLength = Duration;