Time.timeScale使用十字线UNITY停止UI的功能

时间:2019-02-19 05:55:34

标签: c# unity3d virtual-reality

我使用Time.timescale = 1/0暂停游戏,但问题是它还包括我的UI。顺便说一下,我正在开发一个虚拟现实赛车。它可以成功暂停,但是该用户界面的

https://imgur.com/a/mdKixnm

https://imgur.com/a/l4pcIsa

不再工作。我不再工作的意思是他们没有执行他们应该执行的功能。

private void Start()
{
    Time.timeScale = 1;
    DeactivatePause();
}

 if (Input.GetKey("joystick button 0") || Input.GetKeyDown(KeyCode.P))
 {

        ActivatePause();

        if (paused)
            paused = false; // unpaused the game if already
        else
            paused = true; // paused the game if not paused

        if (paused)
            Time.timeScale = 0; //set timescale to 0 so that all the proceedings are halte
        else
            Time.timeScale = 1;
    }

public void ActivatePause()
{

    for (int i = 0; i < settings.Length; i++)
    {
        settings[i].SetActive(true);
    }
}

public void DeactivatePause()
{
    for (int i = 0; i < settings.Length; i++)
    {
        settings[i].SetActive(false);
    }
 }  

1 个答案:

答案 0 :(得分:0)

设置UI画布和动画制作器以使用“ Unscaled DeltaTime”。在时间刻度设置为0f的情况下,这应该允许它打勾。