| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 |
- #region File Description
- //-----------------------------------------------------------------------------
- // TypeWriters.cs
- //
- // Microsoft XNA Community Game Platform
- // Copyright (C) Microsoft Corporation. All rights reserved.
- //-----------------------------------------------------------------------------
- #endregion
- #region Using Statements
- using Microsoft.Xna.Framework;
- using Microsoft.Xna.Framework.Content.Pipeline.Serialization.Compiler;
- using SkinnedModel;
- #endregion
- namespace SkinnedModelPipeline
- {
- /// <summary>
- /// Writes ModelAnimation objects into compiled XNB format.
- /// </summary>
- [ContentTypeWriter]
- public class SkinningDataWriter : ContentTypeWriter<SkinningData>
- {
- protected override void Write(ContentWriter output, SkinningData value)
- {
- output.WriteObject(value.AnimationClips);
- output.WriteObject(value.BindPose);
- output.WriteObject(value.InverseBindPose);
- output.WriteObject(value.SkeletonHierarchy);
- }
- public override string GetRuntimeReader(TargetPlatform targetPlatform)
- {
- return typeof(SkinningDataReader).AssemblyQualifiedName;
- }
- }
- /// <summary>
- /// Writes AnimationClip objects into compiled XNB format
- /// </summary>
- [ContentTypeWriter]
- public class AnimationClipWriter : ContentTypeWriter<AnimationClip>
- {
- protected override void Write(ContentWriter output, AnimationClip value)
- {
- output.WriteObject(value.Duration);
- output.WriteObject(value.Keyframes);
- }
- public override string GetRuntimeReader(TargetPlatform targetPlatform)
- {
- return typeof(AnimationClipReader).AssemblyQualifiedName;
- }
- }
- /// <summary>
- /// Writes Keyframe objects into compiled XNB format
- /// </summary>
- [ContentTypeWriter]
- public class KeyframeWriter : ContentTypeWriter<Keyframe>
- {
- protected override void Write(ContentWriter output, Keyframe value)
- {
- output.WriteObject(value.Bone);
- output.WriteObject(value.Time);
- output.WriteObject(value.Transform);
- }
- public override string GetRuntimeReader(TargetPlatform targetPlatform)
- {
- return typeof(KeyframeReader).AssemblyQualifiedName;
- }
- }
- }
|