Unity зависает из-за скрипта, но я не знаю, что не так с упомянутым скриптом - PullRequest
0 голосов
/ 29 сентября 2018

Терпите меня, я довольно новичок в единстве.Как следует из названия, игровой движок зависает, когда этот скрипт присоединен к основной камере.

public class leftright : MonoBehaviour {
    public float boundaries = 3f;

    void Update () {
        while (Input.GetAxis("Mouse X") < boundaries && Input.GetAxis ("Mouse X") > -boundaries) {
            this.transform.Rotate(0, Input.GetAxis("Mouse X"), 0);
        }
    }
}

Я не думаю, что этот скрипт делает бесконечный цикл, и я не могу обнаружить никаких проблем с ним,

текст журнала здесь, и проект здесь

1 Ответ

0 голосов
/ 29 сентября 2018
While(true) {
    //do stuff
}

Условное выражение, которое вы используете в своем операторе while, не может (и не будет) изменяться с true на false в зависимости от содержимого цикла, поэтому оно будет выполняться вечно.

Update() - это уже петля, обрабатывайте ее как единое целое.

void Update () {
    if(Input.GetAxis("Mouse X") < boundaries && Input.GetAxis ("Mouse X") > -boundaries) {
        this.transform.Rotate(0, Input.GetAxis("Mouse X"), 0);
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...