繁体   English   中英

Unity:Time.timescale =0 不工作

[英]Unity:Time.timescale =0 not working

我试图在用户第一次使用 playerpref 开始游戏并希望暂停游戏时显示播放器教程,我面临的问题是 Time.timescale=0 放置在开始时没有暂停游戏(显示 tutorialCanvas) ,但在被按钮(暂停按钮)调用时有效。

以下是我使用的代码

void Start()
{ 
    if (PlayerPrefs.HasKey ("test4") ==false ) {
        tutorialCanvas.SetActive (true);
        Time.timeScale = 0;
    }
}

Time.timeScale = 0对我来说真的很混乱,所以我向您推荐的是,如果您只想暂停诸如暂停角色移动之类的操作,则可以这样尝试:

GameObject PlayerScript;
if(Input.GetKey(KeyCode.P)){
    //lets disable the playermovement script only not the whole object
    PlayerScript = GetComponent<PlayerMovement>().enabled = false;
}

我也被困在那里,所以我做了另外一种选择。 而且你还可以访问此一个 如果您想要免费使用该资产,可以在这里获取

我最近遇到了这个问题,虽然它只是在构建中进行,而不是在编辑器中进行。 将 timeScale 更改为 0.0001f 之类的值可以解决问题,但这不是一个很好的解决方案。 创建一个输入设置资产(在 Camera -> Player Input -> Open Input Settings 下)似乎已经为构建修复了它。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM