Add AnimationRootMotionFlags to configure root motion component extraction

Add `RootMotionMode` to support extracting root motion from animated skeleton pose center of mass

#1429 #2152
This commit is contained in:
Wojtek Figat
2024-02-09 15:37:29 +01:00
parent f9ca69d8a9
commit d08843900e
15 changed files with 416 additions and 144 deletions

View File

@@ -911,10 +911,10 @@ bool ModelData::Pack2AnimationHeader(WriteStream* stream, int32 animIndex) const
}
// Info
stream->WriteInt32(100); // Header version (for fast version upgrades without serialization format change)
stream->WriteInt32(103); // Header version (for fast version upgrades without serialization format change)
stream->WriteDouble(anim.Duration);
stream->WriteDouble(anim.FramesPerSecond);
stream->WriteBool(anim.EnableRootMotion);
stream->WriteByte((byte)anim.RootMotionFlags);
stream->WriteString(anim.RootNodeName, 13);
// Animation channels
@@ -928,6 +928,12 @@ bool ModelData::Pack2AnimationHeader(WriteStream* stream, int32 animIndex) const
Serialization::Serialize(*stream, channel.Scale);
}
// Animation events
stream->WriteInt32(0);
// Nested animations
stream->WriteInt32(0);
return false;
}