Version: Unity 6.0 (6000.0)
语言 : 中文
Unity 6 预览版中的新功能
Unity 2023.1 中的新功能

Unity 2023.2 中的新功能

发行说明

要了解有关此 Unity 版本的新功能、变更和改进的更多信息,请参阅 2023.2 发行说明

要查找其他版本的发行说明,请参阅 Unity 下载存档

升级指南

如果要将现有项目从 2023.1 升级,请阅读 2023.2 升级指南了解项目可能受到的影响。

新功能介绍

了解自 2023.1 以来 Unity 2023.2 中的变化,并查看有关受影响区域的文档。

可访问性

新增了一个编辑器窗口,即可访问性层级查看器 (Accessibility Hierarchy Viewer),其中显示激活的可访问性层级及其节点。要访问可访问性层级查看器,请选择主菜单中的窗口 (Window) > 可访问性 (Accessibility) > 访问性层级视图 (Accessibility Hierarchy View)

音频

  • 新增了 Audio Random Container,用于对音频进行随机化处理,并确保音量、音高、时间和触发器可以设置为非重复时间间隔,因此您的游戏不会出现两次相同的音效。
  • 在 Audio Random Container 中新增了 VU 计量器。

创作工具

2D

瓦片面板 (Tile Palette) 编辑器窗口中新增了覆盖支持。

编辑器和工作流程

  • 新增了场景视图上下文菜单。现在,您可以通过右键单击或使用可自定义的键盘快捷键来访问场景视图中的新上下文菜单。这些菜单使用__ UI__(即用户界面,User Interface)让用户能够与您的应用程序进行交互。Unity 目前支持三种 UI 系统。更多信息
    See in Glossary
    工具包创建并以 C# 进行扩展,可以轻松访问常用命令。
  • 场景视图偏好设置中新增了仅当编辑器处于焦点状态时刷新场景视图 (Refresh the Scene view only when the Editor is in focus) 选项。启用此选项以仅在编辑器处于焦点状态时刷新场景视图。
  • 新增了绑定键盘快捷键以便在 Animator 状态之间进行过渡的功能。
  • 新增了基本的 OpenType 字体功能支持。目前,仅启用了字距调整。
  • 新增了一个摄像机覆盖层以替换摄像机预览。您可以使用摄像机覆盖层在场景视图中获取第一人称视角控制摄像机和管理摄像机。
  • 将大多数操作系统上下文菜单替换为 UI 工具包版本。
  • 新增了色彩校正器,它是一种用于校准光照和后处理的工具。色彩校正器是用户可以通过游戏对象 (GameObject) > 渲染 (Rendering) > 色彩校正器 (Color Checker Tool) 新增的对象。该工具仅用作光照美术师的制作工具,不会保存在构建中。
  • 启用了编辑器以显示不同的许可证通知模式。
  • 新增了 PropertyCollectionAttribute,可用于实现集合的自定义绘制器。
  • 新增了使用摄像机的平移、缩放和轨道控件进行光源放置的新工具。有关更多信息,请参阅从光源查看和控制光源

UI 工具包

  • 现在,在创建编辑器或运行时 UI 时,可以使用新的灵活运行时绑定系统轻松将数据值连接到 UI 元素属性。您可以在 UI Builder 或 C# 代码中配置数据绑定。
  • 新增了 ToggleButtonGroupTabTabView 等控件,并对现有控件进行了改进。
  • 按钮、ListView 和 TreeView 控件新增了图标支持。
  • 新增了 UxmlElement 和 UxmlAttribute 属性。创建自定义控件时,这些属性将替换现有的 UxmlFactory 和 UxmlTraits。这样可以简化自定义控件的创建,通过 C# 属性提供高效的替代方法,无需编写大量代码。此外,现在可以以与检视视图相同的方式为字段创建自定义属性绘制器
  • 对 UI Builder 进行了增强,实现了样式属性驱动因素可视化改进、画布操作优化以及其他功能增强。更新后的 UI Builder 现在还支持 UXML 对象的创作,允许编辑 MultiColumnTreeView 和 MultiColumnListView。
  • TextElementTextField 中新增了“表情符号回退支持 (Emojis Fallback Support)”字段,用于控制在表情范围内搜索字形的位置的顺序(主字体还是全局回退)。此外,还新增了对 OpenType 字体功能的基本支持,当前的重点是启用修剪。
  • 在 UI Builder 的检视面板中新增了一个带有盒体模型小部件的间距字段。

TextMeshPro

  • 新增了基本表情支持。
  • 新增了基本的 OpenType 字体功能支持,目前仅启用了修剪。

图形

  • 分批计算蒙皮:Unity 的带蒙皮的网格渲染器 (Skinned Mesh Renderer) 组件使用计算分发在 GPU 上并行化顶点变换。Unity 2023.2 在所有受支持的平台上对蒙皮的网格渲染器进行了优化。这些优化旨在批量计算蒙皮和 blendshape 调度。这样可以增加并行变形的顶点数量,并提高角色和蒙皮网格渲染的 GPU 性能。
  • 渐进 GPU 光照贴图现在结束预览阶段,受到了全面支持。
  • 新增了用于在运行时移动光照探针位置的 API。
  • 删除了光照窗口中的自动生成 (Auto Generate) 设置。相关 API 现已弃用。要在编辑时检查光照贴图,现在可以选择场景视图绘制模式 (Scene View Draw Mode) 并将光照数据 (Lighting Data) 设置为预览 (Preview)。这将显示烘焙光照的预览。预览光照贴图是无损的,您可以在烘焙场景后使用预览光照贴图。
  • 新增了用于指定是否剔除光照贴图阴影投射物的 BatchCullingContext.cullingFlags
  • BatchRendererGroup 新增了 rendererPriority 支持。
  • 在计算队列上新增了对异步构建光线追踪加速结构的支持。AsyncCompute CommandBuffer 现在可以运行 CommandBuffer.BuildRayTracingAccelerationStructure 命令。新增了对 RenderGraph 和 Render Graph Viewer 的 RayTracingAccelerationStructure 支持。
  • 为 Texture2DArrays 新增了 mipmap 限制支持。
  • 为 Texture2DArrays 新增了 mipmap 剥离支持。
  • 新增了对 LoadImage 提供平铺 EXR 图像的支持。
  • 启用了对公开光线追踪加速结构构建标记的支持,以便在构建时间与光线追踪速度和 GPU 上的内存消耗之间进行平衡。您可以在创建和构建 RayTracingAccelerationStructure 时通过 C# 或通过渲染器 (Renderer) 设置自定义标记。
  • 为 DX12 新增了 Native Render Pass 支持。
  • 新增了对 D3D12(Windows 和 XBox 平台)的 GPU 批处理蒙皮的支持。
  • 新增了粒子轨迹的自定义顶点流功能。
  • 新增了 BakeTextureBakeTrailsTexture 脚本方法。

通用渲染管线 (URP)

有关 URP 新功能和改进的完整描述,请参阅 URP 中的新功能

  • 新增了跨平台__ HDR__高动态范围
    See in Glossary
    显示支持。HDR 显示器能够以更接近自然光照条件的更高亮度差异范围再现图像。HDR 输出可保留这些设备上显示的线性光照渲染和 HDR 图像的对比度和质量。现在,编辑器和独立的播放器在所有渲染管线和有能力的平台(包括移动端和__ XR__虚拟现实(VR)、增强现实(AR)和混合现实(MR)应用的泛指术语。支持这些形式的交互式应用程序的设备可被称为 XR 设备。更多信息
    See in Glossary
    )上都提供完整的 HDR 色调映射和显示支持。
  • 为探针体积的间接光照新增了每个顶点的质量级别,从而使 URP 更高效地渲染光照环境。可能需要在移动端进行进一步优化,因为 URP 不支持反射探针的光照场景混合或光照归一化。
  • 在运动模糊体积组件中添加了一个名为 Camera And Objects 的新选项,该选项使用运动矢量来模糊移动速度超过摄像机曝光时间的对象。
  • 新增了对更多方向光 cookie 的支持。
  • 在 URP 全局设置 (URP Global Settings) 中新增了默认体积配置文件 (Default Volume Profile) 字段。
  • 在通用渲染管线资产中新增了体积配置文件 (Volume Profile) 字段。
  • 为 URP 材质新增了 Alembic 速度运动矢量支持。
  • 为仅基于时间节点实现顶点动画的 ShaderGraph,新增了基于时间的自动运动矢量生成功能。影响位置的所有其他数据必须在帧之间保持恒定。
  • 在 Forward+ 渲染路径中新增了对 XR 渲染和使用正交投影的摄像机的支持。
  • 在 Forward+ 渲染路径中新增了对注视点渲染的支持。

高清渲染管线 (HDRP)

有关 URP 新功能和改进的完整描述,请参阅 HDRP 中的新功能

  • 为贴花投影仪新增了 HDRP 路径追踪器支持。路径追踪器不支持贴花自发光。
  • 新增了在运行时从磁盘流式传输探针体积数据的功能。您可以启用或禁用不同质量级别的磁盘流式传输。
  • 使 HDRP Shader Graph 贴花与透明对象兼容。这意味着,您可以使用使用 Shader Graph 创建的贴花来影响透明对象,从而构建雨滴、波纹、自定义雕刻、玻璃上的污垢效果等程序化效果。
  • 在 HDRP 物理天空中新增了带有星星和天体的夜空效果。
  • 为基于物理的天空新增了 Shader Graph 输出,并新增了用于创建月亮的控件。
  • 在 Render Graph Viewer 中新增了异步计算通道及其同步点的可视化。
  • 为体积云新增了比尔阴影贴图。
  • 向高清渲染管线资产新增了体积配置文件 (Volume Profile) 字段。
  • 新增了一种适用于具有彩色透射的薄对象的材质类型。
  • 在 Lit ShaderGraphs 的材质中新增了禁用透明涂层效果的选项。
  • 新增了全局通道 API,使用该 API,无需再场景使用任何__ GameObject__Unity 场景中的基础对象,可以表示角色、道具、风景、摄像机、路径点等。GameObject 的功能由所附的组件决定。更多信息
    See in Glossary
    ,即可在渲染管线中注入自定义通道。
  • 为任意输出变量 (AOV) 新增了体积雾全屏调试模式输出。
  • 为自适应探针体积 (APV) 新增了直接从磁盘流式传输数据能力。该功能仅适用于具备计算着色器兼容性的设备。
  • 新增了一项功能,即使用烘焙 API 烘焙自适应探针体积 (APV),独立于光照贴图或反射探针。

多人游戏

Netcode for GameObjects

  • 在 Network Object 组件上下文菜单中新增了刷新场景内预制实例 (Refresh In-Scene Prefab Instances) 选项。使用此属性可更新场景中预制实例在拥有 NetworkObject 组件之前就已存在的 GlobalObjectIdHash 值。此属性会影响构建列表中包含的所有场景。
  • 新增了 NetworkManager 方法 SetPeerMTUGetPeerMTU,用于对最大传输单元 (MTU) 大小 进行全面控制。此属性可用于 Netcode for GameObjects 中的自定义协议。
  • 改进了网络预制标识生成(例如,GlobalObjectIdHash),以解决 Unity 分配无效值的问题。
  • 通过以下方式改进了序列化 API 和代码生成管线:
    • 新增了可应用于任何类或方法的 GenerateSerializationForTypeAttribute 方法,以确保特定类型包含在代码生成序列化过程中。
    • 新增了 GenerateSerializationForGenericParameterAttribute 方法,可用于在代码生成过程中包含由 NetworkVariable 类型包装的泛型类型。
    • 公开了更多 NetworkVariableSerialization 方法,可在不增加任何装箱开销的情况下改进自定义 NetworkVariable 创建。您可以使用 NetworkVariableBase.MarkNetworkBehaviourDirty 方法将 NetworkVariables 标记为“脏”。
  • 现在,泛型 NetworkBehaviour 类型的 RPC 可序列化类泛型类型的参数。
  • 改进了 Netcode 中对 32 位 ARMv7 的支持。
  • 新增了额外的 NetworkManager 事件 OnServerStartedOnServerStoppedOnClientStartedOnClientStopped,以便更好地对 NetworkManager 初始化过程进行通知。

专用服务器平台

  • 播放器设置中新增了专用服务器优化 (Dedicated Server Optimizations) 选项,启用后将从服务器构建中剥离所有着色器。启用此选项可显著缩短构建时间。

Unity Transport

  • Unity Transport 2.X 现在是 Unity Transport 的默认和推荐版本。
  • 现在可以在 NetworkSettings.WithNetworkConfigParameters 中配置传输通过新 maxMessageSize 参数发送的最大消息大小。这对于网络设备无法正确处理较大数据包的环境很有用(例如某些移动网络或 VPN)。该值不包括 IP 和 UDP 标头,但包括由传输本身添加的标头(例如,可靠性标头)。默认值为 1400。请注意,客户端和服务器应使用相同的值。

Package Manager

包缓存管理的更改

  • 更改了全局缓存的默认位置和结构。
  • 现在,注册表数据缓存限制为默认最大大小 10 GB。您可以通过自定义全局缓存来覆盖默认值。

Package Manager 窗口的更改

  • 新增了导航面板
    • 新增了一个面板,以改进在包子集视图之间的导航体验。在早期版本中,这些上下文存储在包 (Packages) 下拉菜单中。
    • 在 Package Manager 导航面板中将服务 (Services) 新增为专用条目。
    • 在导航面板的项目中 (In Project) 下方新增了更新 (Updates),作为嵌套条目。此嵌套视图列出了项目中所有有可用更新的包。
    • 在导航面板的我的注册表 (My Registries) 下方新增了各个特定作用域的注册表,作为嵌套条目。
  • 列表面板的增强功能:
    • 项目中 (In Project) 上下文的列表面板中新增了包 - 资源商店 (Packages - Asset Store) 展开器,因此可以从项目中 (In Project) 视图中查看和管理资源商店包。
    • 重新定位了搜索框并更改了其行为,使其能够根据每个上下文来调用搜索词。
  • 详细信息面板的增强功能:
    • 通过简化详细信息面板中的操作按钮,改进了在我的资源 (My Assets) 上下文中管理包的流程。最常见的操作会作为默认操作显示在菜单按钮上,而其他操作则列在菜单中。此外,还新增了项目中 (In Project) 标签,用于明确指示资源商店包何时导入项目并处于最新状态。
    • 更新了查看资源商店包时导入 (Import) 按钮的标签。下载更新的资源商店包后,主操作按钮标签为将更新 #.# 导入项目 (Import update #.# to project),因此明确说明需要将更新内容导入到项目中。
    • 更新了从注册表安装的包的文档链接的行为。现在,可以右键单击该链接,并选择在浏览器中打开 (Open in browser)在本地打开 (Open local)
    • 新增了一个按钮,用于当您已注销并尝试查看资源商店包的详细信息时,使用您的 Unity ID 登录。
  • 其他增强功能:

Android

  • 新增了 Addressables for Android 包 (com.unity.addressables.android),为 Addressables 提供 Play 资产交付支持。
  • 通过 Addressables for Android 包新增了纹理压缩格式的目标支持,可将多种纹理压缩格式打包到 Android 资源包。在安装时,APK 仅使用基于设备移动端 GPU 的最佳纹理压缩格式进行构建,以便更快加载和渲染纹理并减少内存。
  • 新增了 ApplicationExitInfo API,用于提供有关应用程序崩溃和应用程序无响应 (ANR) 错误的信息。
  • 进行了以下改进:
    • GameActivity 作为默认的应用程序入口点,以便更好地控制 Android 和应用程序之间的交互。
    • 将支持的最低 Android 版本提升到 6.0(API 级别 23)。

物理

  • 关节角度限制辅助图标新增了 ArticulationBody.jointPosition 指针线,以便在场景视图中显示关节的确切位置。

性能分析器

  • 在 Memory 性能分析器中新增了对 AudioClip 和 Shader 的元数据支持。
  • 在性能分析器窗口中新增了 Highlights 模块。
  • 为 CPU 性能分析器新增了倒置层级视图。

光线追踪 API

  • 光线追踪加速结构构建标记:在 Unity 的渲染器和 RTAS API 中引入了新的光线追踪加速结构构建标记。这些标记可用于控制光线追踪内存使用量、RTAS 构建时间和光线追踪性能之间的权衡。开发者和美术师可以使用新标记来微调其场景和渲染器中的光线追踪性能。
  • 着色器中的内联光线追踪:现在,在面向支持 DXR1.1 的 Windows 平台、Xbox Series X/S 和 Playstation 5 时,可以在光栅化和计算着色器中使用内联光线追踪。可从着色器中发起光线查询,以遍历绑定的光线追踪加速结构并执行相交测试。这允许您实现各种各样的硬件加速光线追踪效果和模拟。

Shader Graph

  • 新增了对 Shader Graph 的 UGUI 支持。现在,Shader Graph 在 URP 和 HDRP 中都有画布的子目标。UI 美术师可以使用 Shader Graph 为其 UI 元素创建自定义着色器。定义 UI 元素的整体外观和样式,创建动画 UI 效果,并定义自定义按钮状态,同时使用更少的纹理内存。
  • 启用 Shader Graph 画布主节点,允许用户在 HDRP、URP 和内置中为画布创建 UI 着色器。

SpeedTree

改进了 HDRP 中的 SpeedTree 视觉质量,使用透射遮罩仅在树叶上应用次表面散射。HDRP/Nature/SpeedTree8.shadergraph 将其 Subsurface Map 用于 Transmission Mask 节点,以消除树皮和树枝上不想要的光透射效果。这也修复了公告牌光照过亮与 3D 几何体光照不匹配的问题。

Splines

现在,可以将个性化数据存储在样条对象上。此外,还改进了检视视图中编辑点的界面,并向公众提供了某些 API。现在,处理样条时,可以使用新的场景视图上下文菜单

Test Framework

  • 启用了基于测试级别的重试和重复测试。现在,测试完成第一次迭代后,编辑器就会重试或重复测试。将命令行参数传递给编辑器来执行以下操作:
    • 重复 x 运行测试 x 次或直到失败。这对于测试不稳定的测试很有用。
    • 如果测试失败,请重试 x。这会运行测试 x 次或直到成功。
  • 现在,可以使用编辑器命令行新参数 -randomOrderSeed x 以随机顺序运行测试,其中 x 是一个不为 0 的整数。如果向项目新增了测试,Test Framework 会在传入相同种子的情况下保持随机顺序,并相应地将新增测试放置在随机列表中。
  • 在播放器的构建步骤中新增了 TestFileReferences.json 生成,以便测试运行程序可以将使用它来丰富运行步骤的数据。
  • 现在,UTF 版本会针对 SRP 测试自动更新。

Version Control

新增了一个项目选项,以支持追踪存在于磁盘上项目根文件夹之外的包。

VFX Graph

  • 在模板窗口中新增了具有预定义效果的 VFX Graph 资源。您可以使用这些模板作为您自己的效果的起点。
  • 新增了 Custom HLSL 代码块和运算符。自定义 HLSL 节点允许您在粒子模拟期间执行自己的代码。在 VFX Graph 上下文中,可以使用运算符实现水平流,或使用代码块实现垂直流。
  • 通过 VFX Graph 新增了 URP 贴花。现在,VFX Graph 支持 URP 光照贴花输出,因此可以在 URP 上创建与场景光照和材质完美匹配的令人惊叹的贴花效果
  • 在 HDRP 和 URP 中为 Shader Graph 烟雾效果新增了光照效果。这意味着您可以创建自定义烟雾着色器,这些着色器在光照着色器中使用六向光照效果。
  • 在 URP 中扩展了摄像机深度和颜色缓冲区行为。这意味着,可以使用深度缓冲区进行基于深度的碰撞,或对颜色缓冲区进行采样,以创建自定义效果。
  • 在 URP 中新增了对运动矢量的支持。
  • 新增了对 Shader Graph 中的运动矢量的支持。
  • 新增了一项利用 VFX Graph 与 Shade Graph 集成的功能,从而使用材质变体工作流程覆盖 VFX 输出中的设置。
  • 支持使用公开的纹理、网格或图形缓冲区进行视觉特效 (VFX) 实例化。

Web 平台(以前的 WebGL)

  • Unity Web 构建现在利用了 Emscripten 工具链中的最新大小和性能优化。
  • 新增了对指定应用程序在运行时启动的浏览器类型及其可执行文件路径的支持。您可以使用命令行或构建设置 (Build Settings) 窗口中的 GUI 设置来指定此属性。

XR

  • 新增了对 Hololens 的自动化支持。
  • 扩展了 Unity 对 URP、HDRP 和内置渲染管线中的色调映射以及输出到 HDR 显示器的集成支持,以为配备 HDR 显示器的 XR 设备提供支持。

其他资源

Unity 6 预览版中的新功能
Unity 2023.1 中的新功能