c# - 音频源播放2分钟后执行一些操作

标签 c# audio unity3d

我有一个脚本可以将一个天空盒融合到另一个天空盒中。我需要编写一些代码,以便当音频源在2分钟时发生此混合动画。

我怎样才能做到这一点?
我已经读过AudioSource.timeSamples,但我不太了解何时到达2分钟。我应该使用其他方法吗?

最佳答案

void Start()
  {
  Debug.Log("Audio begins now.....");
  Invoke("TwoMinutesHasPassed", 120f);
  }

void TwoMinutesHasPassed()
  {
  Debug.Log("two minutes has passed");
  Debug.Log("now i will fade the background");
  StartCoroutine("FadeNow");
  }

private IEnumerator FadeNow()
  {
  tParam = 0f;
  while (tParam < 1)
    {
    tParam += Time.deltaTime * speed;  
    valToBeLerped = Mathf.Lerp(0, 1, tParam);
    Debug.Log("valToBeLerped is " + valToBeLerped.ToString("f4"));
    yield return null;
    }
  skyboxmaterial.SetFloat("_Blend", valToBeLerped);
  Debug.Log("fade is done.");
  }

关于c# - 音频源播放2分钟后执行一些操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36407860/

相关文章:

java - 字节流如何工作?

android - Facebook SDK 5.0.4 for Unity、Android、登录失败、正确的哈希键

ios - 如何添加计时器?

c# - OutOfMemoryException - WCF 服务

c# - 如何拆分仅由空格分隔的名称列表(带有标题和姓氏)?

c# - 加密的 zip 文件也可以保护其内部目录吗

c# - 在 Debug模式下发布了一个 asp.net Web 应用程序?

ios - react native 录音机播放器 : Cannot read property 'startRecorder' of undefined

iOS - 添加自定义警报声音

ios - Firebase Crashlytics : missing OPTIONAL dSYMs