版本:2022.3
语言: 英语
升级到Unity 2021.2
升级到Unity 2020 LTS

升级到Unity 2021.1

注意:按照发布顺序遵循此部分的建议。例如,如果您需要将项目从2020升级到2022,请阅读2021升级指南,查看升级到2022指南之前是否需要做出修改。

此页列出了从2020 LTS升级到2021.1时可能影响现有项目的Unity 2021.1版本中的更改。

设备模拟器

设备模拟器现在是编辑器的一部分,可以从游戏窗口访问。要设置设备模拟器,将UnityEngine.Device命名空间添加到Screen、Application和SystemInfo类:UnityEngine.Device.Screen; UnityEngine.Device.Application; UnityEngine.Device.SystemInfo;

要切换到UnityEngine.Device,在每个您想与模拟器一起使用的脚本中添加以下逻辑: using Screen = UnityEngine.Device.Screen; using Application = UnityEngine.Device.Application; using SystemInfo = UnityEngine.Device.SystemInfo; 新的命名空间UnityEngine.Device可以从模拟器(在编辑器中)平稳过渡到具有实时构建的实际设备API。

环境光照

编辑器现在自动烘焙默认的天空盒用于表示天空的特殊材料。通常是六面的。更多信息
术语表中查看
探测器和环境探测器,并保留此数据,直到您手动烘焙场景包含您的游戏环境和菜单。每个唯一的场景文件相当于一个独特级别。在场景中,您放置环境、障碍物和装饰,本质上在零散中设计和构建您的游戏。更多信息
术语表中查看
。当您升级时,没有环境光来自任何特定方向的光,对场景中所有方向的光贡献相同。更多信息
术语表中查看
贡献的场景可能会在视觉上发生变化。要恢复这些场景的原始外观,将环境光照强度倍数设置为0。或者,将天空盒设置为黑色,烘焙场景,然后重置天空盒到您喜欢的天空颜色。

启用代码覆盖率首选项

管理代码覆盖率的用户界面已从“常规首选项”移动到代码覆盖率包内。

In Unity 2021 the Enable Code Coverage checkbox was moved in the Code Coverage window.
在Unity 2021中,代码覆盖率复选框已从代码覆盖率窗口中移动。

代码覆盖率包作为发布包通过Unity 2019.3及更高版本的包管理器提供。最新版本为1.0.0。

您可以使用以下方法之一启用代码覆盖率

// Create a new C# script called CodeCoverageMenuItem and place it
// under the Editor folder.
// This class creates a toggle menu item under Code Coverage > Enable
// Code Coverage. Use it to enable/disable Code Coverage.

using UnityEditor;
using UnityEngine.TestTools;

class CodeCoverageMenuItem
{
    const string EnableCodeCoverageItemName = "Code Coverage/Enable Code Coverage";

    [MenuItem(EnableCodeCoverageItemName, false)]
    static void EnableCodeCoverage()
    {
        Coverage.enabled = !Coverage.enabled;
    }

    [MenuItem(EnableCodeCoverageItemName, true)]
    static bool EnableCodeCoverageValidate()
    {
        Menu.SetChecked(EnableCodeCoverageItemName, Coverage.enabled);
        return true;
    }
}
升级到Unity 2021.2
升级到Unity 2020 LTS