コード例 #1
0
    protected void FirePitchEvent(BeatPitchEvent pitchEvent, int fallbackBeat)
    {
        int beat = pitchEvent != null
            ? pitchEvent.Beat
            : fallbackBeat;
        Sentence sentenceAtBeat = SongMetaUtils.GetSentenceAtBeat(playerControl.Voice, beat);
        Note     noteAtBeat     = SongMetaUtils.GetNoteAtBeat(sentenceAtBeat, beat);

        playerControl.PlayerMicPitchTracker.FirePitchEvent(pitchEvent, beat, noteAtBeat, sentenceAtBeat);
    }
コード例 #2
0
    protected virtual void Update()
    {
        if (playerControl == null)
        {
            if (!TryFindPlayerControl())
            {
                return;
            }
        }

        int currentBeat   = (int)singSceneControl.CurrentBeat;
        int beatToAnalyze = playerControl.PlayerMicPitchTracker.BeatToAnalyze;

        if (currentBeat <= 0 ||
            beatToAnalyze > currentBeat ||
            playerControl.PlayerMicPitchTracker.RecordingSentence == null)
        {
            return;
        }

        BeatPitchEvent pitchEvent = GetDummyPitchEvent(beatToAnalyze);

        FirePitchEvent(pitchEvent, beatToAnalyze);
    }