protected override void OnUpdate(float time, float previousTime) { if (_PlayOver) { return; } if (audioClip == null) { return; } if (source != null && !_PlayLoop) { float currentTimeLength = time - clipOffset; if (currentTimeLength > audioClip.length) { _PlayOver = true; return; } var weight = Easing.Ease(EaseType.QuadraticInOut, 0, 1, GetClipWeight(time)); var totalVolume = weight * volume * track.weight; AudioSampler.Sample(source, audioClip, currentTimeLength, previousTime - clipOffset, totalVolume, track.ignoreTimeScale); source.panStereo = Mathf.Clamp01(stereoPan + track.stereoPan); source.loop = _PlayLoop; if (!string.IsNullOrEmpty(subtitlesText)) { var lerpColor = subtitlesColor; lerpColor.a = weight; DirectorGUI.UpdateSubtitles(string.Format("{0}{1}", parent is ActorAudioTrack? (actor.name + ": ") : "", subtitlesText), lerpColor); } } }
protected override void OnUpdate(float deltaTime) { var lerpColor = color; lerpColor.a = Easing.Ease(interpolation, 0, color.a, GetClipWeight(deltaTime)); DirectorGUI.UpdateSubtitles(text, lerpColor); }
protected override void OnUpdate(float time, float previousTime) { if (source != null) { var weight = Easing.Ease(EaseType.QuadraticInOut, 0, 1, GetClipWeight(time)); var settings = track.sampleSettings; settings.volume *= weight * volume; settings.pitch *= pitch; settings.pan += stereoPan; AudioSampler.Sample(source, audioClip, time - clipOffset, previousTime - clipOffset, settings); if (AutoJawSync != null) { AutoJawSync.SyncUpdate(); } if (!string.IsNullOrEmpty(subtitlesText)) { var lerpColor = subtitlesColor; lerpColor.a = weight; DirectorGUI.UpdateSubtitles(string.Format("{0}{1}", parent is ActorAudioTrack ? (actor.name.Replace("(Clone)", "") + ": ") : "", subtitlesText), lerpColor); } } }