Time.timeScale останавливает функциональность моего интерфейса, используя сетку UNITY - PullRequest
0 голосов
/ 19 февраля 2019

Я использую Time.timescale = 1/0 для приостановки игры, но проблема в том, что она также включает в себя мой пользовательский интерфейс.Кстати, я разрабатываю гоночную машину виртуальной реальности.Он может успешно приостановить работу, но этот пользовательский интерфейс

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 голосов
/ 19 февраля 2019

Установите холст и аниматоры пользовательского интерфейса для использования «Unscaled DeltaTime».Это должно позволить ему помечаться, пока шкала времени установлена ​​на 0f.

...