Beispiel #1
0
        public virtual void TriggerEvents(float minTime, float maxTime)
        {
            if (animationEvent == null)
            {
                return;
            }

            var events = AnimationClip.events; // does this create garbage?
            var delta  = maxTime - minTime;

            minTime = Wrap(minTime, AnimationClip);
            maxTime = Wrap(maxTime, AnimationClip);

            for (int i = 0; i < events.Length; i++)
            {
                var t = events[i].time;

                // In Between
                if (t > minTime && t < maxTime)
                {
                    animationEvent.TriggerEvent(events[i].stringParameter);
                    continue;
                }

                if (t < maxTime && t > maxTime - delta)
                {
                    animationEvent.TriggerEvent(events[i].stringParameter);
                    continue;
                }

                if (t > minTime && t < minTime + delta)
                {
                    animationEvent.TriggerEvent(events[i].stringParameter);
                    continue;
                }
            }
        }