public void CrossFadeGesture(AnimationClip animationClip, AvatarMask avatarMask, float fadeIn, float fadeOut, float speed) { if (this.gestures.Count == 0) { this.gestures.Add(PlayableGestureClip.Create( animationClip, avatarMask, fadeIn, fadeOut, speed, ref this.graph, ref this.mixerGesturesInput, ref this.mixerGesturesOutput )); } else { PlayableGesture previous = gestures[this.gestures.Count - 1]; previous.StretchDuration(fadeIn); this.gestures.Add(PlayableGestureClip.CreateAfter( animationClip, avatarMask, fadeIn, fadeOut, speed, ref this.graph, previous )); } }
// GESTURE METHODS: ----------------------------------------------------------------------- public void PlayGesture(AnimationClip animationClip, AvatarMask avatarMask, float fadeIn, float fadeOut, float speed) { this.StopGesture(fadeIn); this.gestures.Add(PlayableGestureClip.Create( animationClip, avatarMask, fadeIn, fadeOut, speed, ref this.graph, ref this.mixerGesturesInput, ref this.mixerGesturesOutput )); }