public void RemoveTimeEventHandler(float time, AnimationTimeHandler handler)
        {
            List<AnimationTimeHandler> handlers = timeEvents[time];
            handlers.Remove(handler);

            if (handlers.Count == 0)
            {
                timeEvents.Remove(time);
            }
        }
        public void RegisterTimeEventHandler(float time, AnimationTimeHandler handler)
        {
            if (!timeEvents.ContainsKey(time))
            {
                timeEvents[time] = new List<AnimationTimeHandler>();
            }
            List<AnimationTimeHandler> handlers = timeEvents[time];

            handlers.Add(handler);
        }