Version: 6000.3
语言: 中文
Unity 6.0 预览版中的新功能
Unity 2023.1 中的新增功能

Unity 2023.2 中的新增功能

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

发行说明

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

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

升级指南

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

可及性

添加了一个新的编辑器窗口,即辅助功能层次结构查看器,用于显示活动辅助功能层次结构及其节点。要访问辅助功能层次结构查看器,请转到主菜单中的窗口>辅助功能>层次结构查看器

音频

  • 添加了音频随机容器(Audio Random Container) 来随机化音频,并确保音量、音高、时间和触发器可以设置为非重复间隔,这样你的游戏听起来就不会重复两次。
  • 在音频随机容器中添加了一个 VU 表。

创作工具

二 维和

为“图块调色板”编辑器窗口添加了叠加支持。

2D物理

添加ArticulationBody.jointPosition指向关节(Joint)允许刚体组件之间进行动态连接的物理组件,通常允许一定程度的移动,例如铰链。更多信息
请参阅术语表
角度限制
小工具与场景中的游戏对象关联的图形叠加层,并显示在场景视图中。移动工具等内置场景工具是 Gizmo,您可以使用纹理或脚本创建自定义 Gizmo。某些 Gizmo 仅在选择游戏对象时绘制,而其他 Gizmo 则由编辑器绘制,而不管选择了哪个游戏对象。更多信息
请参阅术语表
以显示关节在场景场景包含游戏的环境和菜单。将每个唯一的场景文件视为一个独特的关卡。在每个场景中,你放置你的环境、障碍物和装饰品,基本上是将你的游戏设计和构建成碎片。更多信息
请参阅术语表
视图。

编辑器和工作流程

  • 添加了场景视图上下文菜单。您现在可以在场景视图:您正在创建的世界的交互式视图。您可以使用场景视图来选择和定位场景、角色、摄像机、灯光和所有其他类型的游戏对象。更多信息
    请参阅术语表
    通过右键单击或使用可自定义的键盘快捷键。这些菜单使用 UI 工具包创建并可在 C# 中扩展,可轻松访问常用命令。
  • 场景视图首选项中添加了 仅当编辑器对焦时刷新场景视图(Refresh the Scene view only when the Editor is in focus) 选项。启用此选项可仅在编辑器处于焦点时刷新场景视图。
  • 添加了绑定键盘快捷键以在 Animator 状态之间进行转换的功能。
  • 添加了基本的 OpenType 字体功能支持。目前,仅启用字距调整。
  • 添加了一个新的摄像机叠加层,以替换相机在场景中创建特定视点图像的组件。输出要么绘制到屏幕上,要么作为纹理捕获。更多信息
    请参阅术语表
    预览。你可以使用 摄像机(Cameras) 叠加层对摄像机进行第一人称控制,并在 场景(Scene) 视图中管理摄像机。
  • 将大多数作系统上下文菜单替换为 UI 工具包版本。
  • 添加了颜色检查器,这是一个用于校准光照和后期处理的工具。颜色检查器是用户可以通过游戏对象>渲染>颜色检查器工具添加的对象。该工具仅用作照明艺术家的制作工具,不会保存在 Build 中。
  • 使编辑器能够显示不同的许可证通知模式。
  • 添加了一个PropertyCollectionAttribute,您可以使用它来实现集合的自定义抽屉。
  • 添加了一个新工具,用于使用摄像机的平移、缩放和环绕控件进行光源放置。有关详细信息,请参阅从灯光的角度查看和控制灯光

UI 工具包

  • 现在,你可以在创建编辑器或运行时UI时,使用新的灵活运行时绑定系统轻松地将数据值连接到UI元素属性。可以在 UI 生成器或 C# 代码中配置数据绑定。
  • 添加了新的控件,例如 ToggleButtonGroupTabTabViews,并对现有控件进行了改进。
  • 添加了对 Button、ListView 和 TreeView 控件的图标支持。
  • 添加了新的 UxmlElement 和 UxmlAttribute 属性。创建自定义控件时,这些属性将替换现有的 UxmlFactory 和 UxmlTrait。这简化了自定义控件的创建,通过 C# 属性提供了有效的替代方案,并且无需编写大量代码。此外,您现在可以像检查器一个 Unity 窗口,显示有关当前选定游戏对象、资产或项目设置的信息,允许您检查和编辑值。更多信息
    请参阅术语表
    .
  • 增强了 UI Builder,改进了显示驱动样式属性的因素,优化了画布作,并进行了其他增强。更新后的UI Builder现在还支持UXML对象的创作,从而支持编辑MultiColumnTreeView和MultiColumnListView。
  • TextElementTextField 添加了表情符号回退支持字段,以控制在表情符号范围内搜索字形的顺序(主字体与全局回退)。此外,添加了对 OpenType 字体功能的基本支持,目前的重点是启用字距调整。
  • 在 UI Builder 的 Inspector 中添加了一个新的 Spacing 字段,其中包含一个盒子模型控件。

文本网格专业版

  • 添加了基本的表情符号支持。
  • 添加了基本的 OpenType 字体功能支持,目前仅启用了字距调整。

图形

  • 批量计算蒙皮(Skinning) 将骨骼关节绑定到角色网格体或“皮肤”顶点的过程。使用外部工具(如Blender或Autodesk Maya)执行。更多信息
    请参阅术语表
    :Unity的皮肤网格Unity 的主要图形原语。网格体构成了 3D 世界的很大一部分。Unity 支持三角或四边形多边形网格。Nurbs、Nurms、Subdiv 曲面必须转换为多边形。更多信息
    请参阅术语表
    渲染器组件使用计算调度在 GPU 上并行化顶点转换。Unity 2023.2 引入了对 Skinned 的优化网格体渲染器(Mesh Renderers一个网格体组件,它从网格体过滤器中获取几何体,并在对象的变换组件定义的位置渲染它。更多信息
    请参阅术语表
    跨所有支持的平台。这些优化旨在批量计算蒙皮和混合形状调度。这可以增加并行变形的顶点数量,并提高角色和蒙皮网格渲染的GPU性能。
  • 渐进式 GPULightmapper:Unity 中的一种工具,可根据场景中光源和几何体的排列来烘焙光照贴图。更多信息
    请参阅术语表
    现在已停止预览并完全受支持。
  • 添加了要移动的 API光源探针光源探针存储有关光线如何穿过场景中的空间的信息。在给定空间中排列的光源探针集合可以改善移动对象的光照和该空间内的静态LOD场景。更多信息
    请参阅术语表
    运行时的位置。
  • 删除了 光照(Lighting) 窗口中的 自动生成(Auto Generate) 设置。相关 API 现已过时。检查光照贴图(lightmaps一种预渲染的纹理,包含光源对场景中静态对象的效果。光照贴图覆盖在场景几何体之上,以创建光照效果。更多信息
    请参阅术语表
    在编辑时,你现在可以选择 场景视图绘制模式(Scene View Draw Mode) 并将 光照数据(Lighting Data) 设置为 预览(Preview)。这将显示烘焙光照的预览。预览光照贴图是非破坏性的,你可以在烘焙场景后使用它们。
  • 添加BatchCullingContext.cullingFlags以指定是否剔除光照贴图阴影投射器。
  • 添加rendererPriority支持BatchRendererGroup.
  • 添加了对构建的支持光线追踪通过跟踪来自相机的光线穿过每个像素并记录目标点处的颜色贡献来生成图像的过程。这是光栅化的替代方法。光线追踪
    术语表中查看
    加速在计算队列上异步结构。AsyncCompute CommandBuffers 现在可以运行CommandBuffer.BuildRayTracingAccelerationStructure命令。添加了对RayTracingAccelerationStructure到 RenderGraph 和 Render Graph Viewer。
  • 添加了对 Texture2DArray 的 mipmap 限制支持。
  • 添加了对 Texture2DArray 的 mipmap 剥离支持。
  • 添加了对向 LoadImage 提供平铺 EXR 图像的支持。
  • 启用了公开光线追踪加速结构构建标志,以平衡构建时间与光线追踪速度和GPU上的内存消耗。在创建和构建RayTracingAccelerationStructure,或通过渲染器设置。
  • 在ARM上添加了对Android版Vulkan、iOS/MacOS版Metal(Apple Sillicon)和Windows版DirectX12的原生渲染通道支持。
  • 添加了对 D3D12(Windows 和 XBox 平台)的 GPU 批处理蒙皮的支持。
  • 为粒子轨迹添加了 自定义顶点流(Custom Vertex Streams) 功能。
  • 添加BakeTextureBakeTrailsTexture脚本方法。

通用渲染管线(URP)

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

  • 新增跨平台HDR高动态范围
    请参阅术语表
    显示支持。HDR 显示器能够在更接近自然光条件的更高亮度差范围内再现图像。HDR 输出保留了这些设备上显示的线性照明渲染和 HDR 图像的对比度和质量。编辑器和独立播放器现在提供完整的HDR色调映射和显示支持,适用于所有渲染管线和支持平台,包括移动和XR一个总称,包括虚拟现实 (VR)、增强现实 (AR) 和混合现实 (MR) 应用。支持这些形式的交互式应用程序的设备可以称为 XR 设备。更多信息
    请参阅术语表
    .
  • 为探针体积的间接光照添加了每个顶点的质量级别,以便URP更有效地渲染光照环境。你可能需要在移动设备上进行进一步优化,因为 URP 不支持 Lighting Scenario 混合或 Lighting Normalization反射探针(Reflection Probes一个渲染组件,可捕获周围环境的各个方向的球形视图,就像摄像机一样。然后,捕获的图像将存储为立方体贴图,可供具有反射材质的对象使用。更多信息
    请参阅术语表
    .
  • 在运动模糊体积组件中添加了一个名为 摄像机和对象(Camera And Objects) 的新选项,该选项使用运动矢量来模糊移动速度超过摄像机曝光时间的对象。
  • 添加了对其他定向光 cookie 的支持。
  • 在 URP 全局设置中添加了 默认卷配置文件(Default Volume Profile) 字段。
  • 将 Volume Profile 字段添加到 Universal渲染管线(Render Pipeline) 获取场景内容并将其显示在屏幕上的一系列作。Unity 允许您从预构建的渲染管道中进行选择,或编写自己的渲染管道。更多信息
    请参阅术语表
    资产。
  • 添加了对URP材质的Alembic速度运动矢量支持。
  • 为仅基于 时间(Time) 节点的顶点动画的着色图添加了自动基于时间的运动矢量生成。影响位置的所有其他数据在帧之间必须是恒定的。
  • 向 Forward+ 添加了对 XR 渲染和使用正交投影的相机的支持渲染路径渲染管道用于渲染图形的技术。选择不同的渲染路径会影响照明和着色的计算方式。某些渲染路径比其他路径更适合不同的平台和硬件。更多信息
    请参阅术语表
    .
  • 添加了对 Forward+ 渲染路径中注视点渲染的支持。

高清渲染管线 (HDRP)

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

  • 添加了对贴花投影仪的 HDRP 路径追踪器支持。路径追踪器不支持贴花的发射。
  • 添加了在运行时从磁盘流式传输探针卷数据的功能。您可以为不同的质量级别启用或禁用磁盘流。
  • 制作 HDRP着色器在 GPU 上运行的程序。更多信息
    请参阅术语表
    与透明对象兼容的图形贴花。这意味着您可以使用使用 Shader Graph 创建的贴花来影响透明对象,以构建程序效果,例如雨滴、涟漪、自定义雕刻、玻璃上的污垢效果。
  • 在 HDRP 物理天空中添加了带有星星和天体的夜空。
  • 为基于物理的天空添加了着色器图表输出,并添加了用于创建月亮的控件。
  • 添加了异步计算通道及其同步指向渲染图查看器的可视化效果。
  • 为体积云添加了啤酒阴影贴图。
  • 在HD渲染管线资产中添加了 体积配置文件(Volume Profile) 字段。
  • 为具有彩色透射率的薄物体添加了材质类型。
  • 添加了禁用光照着色器图表材质上的透明涂层的选项。
  • 添加了全局通道 API,可用于在渲染管线中注入自定义通道,而不使用游戏对象Unity 场景中的基本对象,可以表示角色、道具、风景、相机、航路点等。游戏对象的功能由附加到它的组件定义。更多信息
    请参阅术语表
    在一个场景中。
  • 添加了任意输出变量(AOV)的体积雾全屏调试模式输出。
  • 添加了自适应探测卷 (APV) 功能,可直接从磁盘流式传输数据。此功能仅在具有计算着色器兼容性的设备上可用。
  • 添加了使用烘焙API独立于光照贴图或反射探针烘焙自适应探针体积(APV)的功能。

多人游戏

游戏对象的网络代码

  • 添加了场景内刷新预制件:一种资产类型,允许您存储包含组件和属性的游戏对象。预制件充当模板,你可以从中在场景中创建新的对象实例。更多信息
    请参阅术语表
    实例
    选项。使用此属性可以更新GlobalObjectIdHash预制件实例的值,该实例在具有NetworkObject元件。此属性会影响构建列表中包含的所有场景。
  • 添加了NetworkManager方法SetPeerMTUGetPeerMTU以完全控制最大传输单元 (MTU) 大小。将此选项用于 Netcode for GameObjects 中的自定义协议。
  • 改进了网络预制件标识生成(例如,GlobalObjectIdHash) 来修复 Unity 分配无效值的问题。
  • 通过以下方式改进了序列化 API 和 codegen 管道:
    • 添加了GenerateSerializationForTypeAttribute方法,您可以应用于任何类或方法,以确保特定类型包含在 Codegen 序列化过程中。
    • 添加了GenerateSerializationForGenericParameterAttribute方法,可用于包含由NetworkVariable键入 codegen 进程。
    • 暴露的额外NetworkVariableSerialization改进自定义的方法NetworkVariable无需任何装箱成本即可创建。您可以使用NetworkVariableBase.MarkNetworkBehaviourDirty将 NetworkVariables 标记为脏方法。
  • 泛型中的 RPCNetworkBehaviour类型现在可以序列化类的泛型类型的参数。
  • 改进了对 Netcode 中 32 位 ARMv7 的支持。
  • 添加了其他NetworkManager事件OnServerStarted,OnServerStopped,OnClientStartedOnClientStopped以更好地通知NetworkManager初始化过程。

专用服务器平台

  • 玩家设置 允许您为 Unity 构建的最终游戏设置各种特定于玩家的选项的设置。更多信息
    请参阅术语表
    启用后,会从服务器构建中剥离所有着色器。启用此选项可大大缩短构建时间。

Unity 传输

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

包管理器

对包缓存管理的更改

对“包管理器”窗口的更改

  • 添加了导航面板
    • 添加了一个面板,以改进包子集视图之间的导航。在早期版本中,这些上下文存储在 包(Packages) 下拉菜单中。
    • 在包管理器导航面板中添加了服务作为专用条目。
    • 在导航面板的“项目中”下方添加了“更新”作为嵌套条目。此嵌套视图列出了项目中具有可用更新的所有包。
    • 在导航面板的“我的注册表”下添加了单个作用域注册表作为嵌套条目。
  • 列表面板的增强功能:
    • 添加了一个包-Asset StoreUnity 和社区成员创建的不断增长的免费和商业资产库。提供各种各样的资产,从纹理、模型和动画到整个项目示例、教程和编辑器扩展。更多信息
      请参阅术语表
      展开器,以便您可以从 项目 视图查看和管理 Asset Store 包。
    • 重新定位搜索框并更改其行为,以便它根据上下文调用您的搜索词。
  • 详细信息面板的增强功能:
    • 通过简化细节面板中的作按钮,改进了在 我的资产(My Assets) 上下文中管理包的流程。最常见的作在菜单按钮中显示为默认作,菜单中列出了其他作。还添加了 In Project 标签,以清楚地指示 Asset Store 包何时已导入到您的项目中并保持最新状态。
    • 更新了查看 Asset Store 包时 Import 按钮的标签。下载更新后的 Asset Store 包后,主作按钮标签是 Import update #.# to project,因此很明显您需要将更新导入到项目中。
    • 更新了从注册表安装的包的文档链接的行为。您现在可以右键单击该链接并选择在浏览器中打开或在本地打开
    • 添加了一个按钮,用于在注销时使用 Unity ID 登录并尝试查看 Asset Store 包的详细信息。
  • 其他增强功能:
    • 更新了查看“我的资产”上下文时“过滤器”菜单中的值。
    • 更新了“筛选器”控件的标签,使其显示所选值而不是父类别。

人造人

  • 添加了适用于 Android 的 Addressables 包 (com.unity.addressables.android) 为可寻址对象提供 Play Asset Delivery 支持。
  • 添加纹理压缩一种存储数据的方法,可减少所需的存储空间量。请参阅纹理压缩动画压缩音频压缩构建压缩
    请参阅术语表
    通过 Addressables for Android 包支持格式定位,打包多个纹理压缩3D图形硬件要求将纹理压缩为专用格式,这些格式针对快速纹理采样进行了优化。更多信息
    请参阅术语表
    格式添加到 Android 资产包中。在安装时,一个APKUnity 输出的 Android 包格式。当您选择“文件”>“生成并运行”时,APK 会自动部署到您的设备。更多信息
    请参阅术语表
    仅使用基于设备移动 GPU 的最佳纹理压缩格式构建,以加载和渲染纹理(render texture)一种特殊类型的纹理,在运行时创建和更新。要使用它们,请先创建一个新的渲染纹理,并指定要渲染到其中的摄像机之一。然后,你可以在材质中使用渲染纹理,就像使用常规纹理一样。更多信息
    请参阅术语表
    更快,内存更少。
  • 添加ApplicationExitInfoAPI 提供有关应用崩溃和应用无响应 (ANR) 错误的信息。
  • 进行了以下改进:
    • GameActivity作为默认应用入口点,以更好地控制 Android 与您的应用之间的交互。
    • 将支持的最低 Android 版本提高到 6.0(API 级别 23)。

分析器

  • 添加了对内存中 AudioClip 和 Shader 的元数据支持分析器帮助您优化游戏的窗口。它显示了在游戏的各个领域花费了多少时间。例如,它可以报告渲染、动画制作或游戏逻辑所花费的时间百分比。更多信息
    请参阅术语表
    .
  • 在“分析器”窗口中添加了“高光”模块。
  • 为CPU性能分析器添加了新的反向层次结构视图。

光线追踪 API

  • 光线追踪加速结构构建标志:Unity 的渲染器和 RTAS API 引入了新的光线追踪加速结构构建标志。这些标志允许你控制光线追踪内存使用、RTAS构建时间和光线追踪性能之间的权衡。开发人员和美术师可以使用新标志来微调场景和渲染器中的光线追踪性能。
  • 着色器中的内联光线追踪:您现在可以在光栅化通过计算几何体中每个多边形或三角形的像素来生成图像的过程。这是光线追踪的替代方法。
    请参阅术语表
    以及针对支持 DXR1.1 的 Windows 平台、Xbox Series X/S 和 Playstation 5 时的计算着色器。你可以从着色器中发出光线查询,以遍历绑定的光线追踪加速结构并执行相交测试。这允许您实现各种硬件加速光线追踪效果和模拟。

着色器图(Shader Graph)

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

速度树

改进了 HDRP 中的 SpeedTree 视觉质量,使用透射遮罩仅在树叶上应用次表面散射。HDRP/Nature/SpeedTree8.shadergraph 将其 Subsurface Map 用于 Transmission Mask 节点,以消除树皮和树枝上的意外光传输。这也修复了过于明亮的问题billboard一种带纹理的 2D 对象,可旋转,使其始终面向摄像机。更多信息
请参阅术语表
光照与 3D 几何体的光照不匹配。

样 条

您现在可以在样条线对象上存储个性化数据。此外,检查器中用于编辑点的界面已得到增强,并且某些 API 已向公众开放。处理样条线时,现在可以使用新的场景视图上下文菜单

测试框架

  • 启用了基于测试级别的重试和重复测试。测试完成第一次迭代后,编辑器现在会重试或重复测试。将命令行参数传递给编辑器以:
    • 重复 x 运行测试 x 次或直到失败。这对于测试不稳定的测试很有用。
    • 如果测试失败,请重试 x。这将测试运行 x 次或直到成功。
  • 现在,您可以使用编辑器命令行 new 参数以随机顺序运行测试-randomOrderSeed x哪里x是与 0 不同的整数。如果将新测试添加到项目中,则测试框架会保持随机顺序传递相同的种子,并相应地将新测试放置在随机列表中。
  • 添加TestFileReferences.json在播放器的构建步骤上生成,以便测试运行程序测试框架包(以前称为测试运行程序)是一个 Unity 工具,可在编辑模式和播放模式下测试代码,也可以在独立、Android 或 iOS 等目标平台上测试代码。更多信息
    请参阅术语表
    可以使用它来丰富运行步骤的数据。
  • UTF 版本现在会自动更新 SRP 测试。

版本控制

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

VFX图表

  • 在模板窗口中添加了具有预定义效果的VFX图表资产。您可以使用这些模板作为您自己的效果的起点。
  • 添加了自定义 HLSL 块和运算符。自定义HLSL节点允许你在粒子模拟期间执行自己的代码。你可以在VFX图表上下文中使用水平流的运算符或垂直流的块。
  • 添加了带有VFX Graph的URP贴花。VFX Graph现在支持URP Lit贴花输出,从而可以在URP上创建与场景光照和材质正确匹配的令人惊叹的贴花效果
  • 在 HDRP 和 URP 中添加了着色器图表烟雾效果的光照。这意味着你可以创建自定义烟雾着色器,在光照着色器中使用六向光照。
  • 扩展了 URP 中的摄像机深度和颜色缓冲区行为。这意味着您可以使用深度缓冲区 保存图像中每个像素的 z 值深度的内存存储,其中 z 值是投影平面中每个呈现像素的深度。更多信息
    请参阅术语表
    用于基于深度碰撞当物理引擎检测到两个游戏对象的碰撞器接触或重叠时,当至少一个游戏对象具有刚体组件并且处于运动状态时,就会发生碰撞。更多信息
    请参阅术语表
    或对颜色缓冲区进行采样以创建自定义效果。
  • 添加了对 URP 中运动矢量的支持。
  • 添加了对带有着色器图表的运动矢量的支持。
  • 添加了使用VFX Graph的阴影图表集成的功能,以使用材质变体工作流程覆盖VFX输出中的设置。
  • 启用了使用公开的纹理、网格体或图形缓冲区的VFX实例化。

Web 平台(以前称为 WebGL)

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

XR的

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

其他资源

Unity 6.0 预览版中的新功能
Unity 2023.1 中的新增功能