您好,我正在使用自动驾驶仪进行飞行模拟,所以我在统一中创建了模拟,并在 python 中创建了自动驾驶仪,但是现在如果我想训练模型,我需要在一次迭代中等待 50 小时的训练过程,所有这些都是由于统一渲染场景(“飞机从 (500,500,500) 到 (700,500,350) 所需的实际时间,所以我需要加快游戏速度。
我尝试只运行代码,但我不知道该怎么做,以及它是否会因为固定更新而工作。
我只想知道一种加速统一场景的方法。
最佳答案
您可以通过脚本使用不同的 Time.timeScale
:
Time.timeScale = 10;
使您的游戏运行 比实时 快 10 倍。
所以从这个例子中,在第一行之后也添加
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;
}
}
通过这种方式,您可以简单地通过 Inspector 调整比例,也可以稍后从其他脚本中重新使用该组件,例如想要在某些时刻前后更改 timeScale。
关于c# - 如何加快统一项目的运行?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/56438835/