как ускорить запуск проекта единства? - PullRequest
3 голосов
/ 04 июня 2019

Здравствуйте, я делаю симуляцию полета с автопилотом, поэтому я создал симуляцию в единстве и автопилот в python, но теперь, если я хочу тренировать модель, мне нужно подождать 50 часов для тренировочного процесса за одну итерацию и все это происходит из-за единичного рендеринга сцены («фактическое время, необходимое для того, чтобы самолет перешел от (500 500 500) к (700 500 350), поэтому мне нужно ускорить игру.

Я пытался только запустить код, но я не знал, как это сделать, и будет ли он работать из-за исправленного обновления.

все, что я хочу, это знать способ ускорения сцены единства.

1 Ответ

3 голосов
/ 04 июня 2019

Вы можете использовать другой Time.timeScale по сценарию:

Time.timeScale = 10;

заставляет вашу игру работать в 10 раз быстрее , чем в реальном времени.

Если вы понизите timeScale, рекомендуется также понизить Time.fixedDeltaTime на ту же сумму.

так из примера просто после первой строки также добавьте

Time.fixedDeltaTime = 0.02f * Time.timeScale;

Я бы просто сделал это в таком компоненте, как

public class TimeScaler : MonoBehaviour
{
    // adjust in Inspector
    public float initialTimeScale = 1.0f;

    private void Start()
    {
        SetTimeScale(initialTimeScale);
    }

    // Can now also be called rom other scripts
    public void SetTimeScale(float scale)
    {
        Time.timeScale = scale;
        Time.fixedDeltaTime = 0.02f * Time.timeScale;
    }
}

Таким образом, вы можете просто настроить масштаб с помощью Инспектора или также повторно использовать компонент позже из других сценариев, если вы, например, хотите изменить время и обратно в определенные моменты.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...