Ejemplo n.º 1
0
        private void ReadAnimations(ContentReader input)
        {
            int numAnimationClips = input.ReadInt32();
            Dictionary <string, AnimationClip> animationClipDictionary =
                new Dictionary <string, AnimationClip>();

            // Read all animation clips
            for (int i = 0; i < numAnimationClips; i++)
            {
                input.ReadSharedResource <AnimationClip>(
                    delegate(AnimationClip animationClip) { animationClipDictionary.Add(animationClip.Name, animationClip); });
            }

            animationClips = new AnimationClipDictionary(animationClipDictionary);

            /*
             * Dictionary<string, AnimationClip> trackDictionary =
             *  new Dictionary<string, AnimationClip>();
             *
             * int numAnimations = input.ReadInt32();
             * for (int i = 0; i < numAnimations; i++)
             * {
             *  Dictionary<string, AnimationChannel> channelDictionary =
             *      new Dictionary<string, AnimationChannel>();
             *
             *  string trackName = input.ReadString();
             *  TimeSpan trackDuration = input.ReadObject<TimeSpan>();
             *
             *  int numChannels = input.ReadInt32();
             *  for (int j = 0; j < numChannels; j++)
             *  {
             *      string channelName = input.ReadString();
             *
             *      int numKeyframes = input.ReadInt32();
             *      List<AnimationChannelKeyframe> keyframeList = new List<AnimationChannelKeyframe>(numKeyframes);
             *      for (int k = 0; k < numKeyframes; k++)
             *      {
             *          TimeSpan keyframeTime = input.ReadObject<TimeSpan>();
             *          Matrix keyframeTransform = input.ReadMatrix();
             *
             *          keyframeList.Add(new AnimationChannelKeyframe(keyframeTime, keyframeTransform));
             *      }
             *
             *      channelDictionary.Add(channelName, new AnimationChannel(keyframeList));
             *  }
             *
             *  AnimationClip animationClip =
             *      new AnimationClip(trackName, new AnimationChannelDictionary(channelDictionary),
             *          trackDuration);
             *  trackDictionary.Add(trackName, animationClip);
             * }
             *
             * animationClips = new AnimationClipDictionary(trackDictionary);
             */
        }
Ejemplo n.º 2
0
        private void ReadAnimations(ContentReader input)
        {
            int numAnimationClips = input.ReadInt32();
            Dictionary <string, AnimationClip> animationClipDictionary =
                new Dictionary <string, AnimationClip>();

            // Read all animation clips
            for (int i = 0; i < numAnimationClips; i++)
            {
                input.ReadSharedResource <AnimationClip>(
                    delegate(AnimationClip animationClip) { animationClipDictionary.Add(animationClip.Name, animationClip); });
            }

            animationClips = new AnimationClipDictionary(animationClipDictionary);
        }