Unity 6 是 Unity 的最新版本。Unity 6 包含了 Unity 6 预览版、2023.2 和 2023.1 中的所有功能。
要了解此版本 Unity 中的更改和已知问题,请参阅Unity 6 发行说明。
要查找其他版本的发布说明,请参阅Unity 下载存档。
如果您要将现有项目从 2022 LTS 升级,请阅读Unity 6 升级指南,以获取有关您的项目可能受到哪些影响的信息。
查看以下领域中 Unity 6 的新功能和改进
Rigidbody2D.Slide
方法,该方法允许 Rigidbody2D 在特定积分时间内以特定速度移动,并自动执行各种滑动、重力、滑动、方向更改和表面锚定行为。此方法适用于所有刚体类型为 2D 刚体定义固定行为。可以是动态(刚体在模拟下移动并受重力等力的影响)、运动学(刚体在模拟下移动,但不受重力等力的影响)或静态(刚体在模拟下不移动)。 更多信息Rigidbody2D.MovePosition()
来延迟移动。此功能使角色控制器一个简单的胶囊形碰撞体组件,具有作为游戏中角色的行为的专门功能。与真正的碰撞体组件不同,不需要刚体,动量效果也不真实。 更多信息添加了一个新的编辑器窗口,即辅助功能层次结构查看器,该查看器显示活动辅助功能层次结构及其节点。要访问辅助功能层次结构查看器,请在主菜单中转到窗口 > 辅助功能 > 辅助功能层次结构查看器。
IPerformanceModeStatus
以检索性能模式并侦听性能模式更改。为针对 Windows、OSX 和 Linux 平台以及专用服务器子目标的资源包添加了功能,以便它们现在使用与构建专用服务器播放器相同的专用服务器优化进行构建(删除纹理数据和非碰撞网格数据)。
实现了用于将数据保存到.meta
文件的访问器。
添加了已验证的解决方案计划,这是一个 Unity 策划的第三方资源和解决方案库。
-upmLogFile
命令行参数,该参数指定 UPM 日志输出的自定义文件路径。有关更多信息,请参阅Unity 编辑器命令行参数。其他应用程序 ID
。PropertyCollectionAttribute
,您可以使用它为集合实现自定义绘制器。EditorWindow
类中添加了 focusedWindowChanged
回调函数。OneTimeSetup
和 OneTimeTearDown
的持续时间。添加了一个选项,用于在线性颜色空间项目中强制 UI 工具包进行伽马渲染。
Gradient
、AnimationCurve
、ToggleButtonGroupState
、无符号整数和无符号长整数。PropertyField
中添加了对 ToggleButtonGroupState
序列化属性的支持。移除了 IMGUI 对 Legacy Text 堆栈的依赖关系,因此 IMGUI 现在使用 TextCore 进行渲染和计算其指标。一些来自 TextEditor 的成员已弃用,以适应 IMGUI 和 UITK 都使用的新的 TextUtilities。它们的含义相同,但名称已更改(从字段更改为属性)
TextEditor.multiline
现在为 TextEditor.isMultiline
。TextEditor.hasHorizontalCursorPos
现在为 nowTextEditor.hasHorizontalCursor
。TextEditor.revealCursor
现在为 TextEditor.showCursor
。UnityObjectRef<>
的序列化支持,以启用对 Unity 资源的非托管引用。例如,在托管 IComponentData 上的纹理而不是在非托管 IComponentData
上的 UnityObjectRef<Texture>
。IComponentData
ISystem
IJobEntity
WithNone<T>
的 EntityQuery
未插入必要的作业依赖项的问题。EntityQuery
单例方法现在可以正确处理查询包含可启用组件的情况。System.API
的系统中定义的作业中的断点。
已将通用 渲染管线一系列操作,用于获取场景内容并在屏幕上显示。Unity 允许您从预构建的渲染管线中选择,或编写自己的渲染管线。 更多信息
参见 术语表 (URP) 的 Unity 6 文档移至 Unity 引擎 手册。例如,有关 URP 中光照的文档现在位于手册的 光照 部分。
RayTracingShader.Dispatch
,但三个调度维度是从 GraphicsBuffer 中获取的。添加了 RayTracingShader.DispatchIndirect
和新的 CommandBuffer.DispatchRays
签名。添加了 SystemInfo.supportsIndirectDispatchRays
功能状态。BatchRendererGroup
API 绘制具有 GPU 实例化的游戏对象。这减少了绘制调用次数并释放了 CPU 处理时间。BatchRendererGroup
API 添加了一个新的每个批次的图层过滤设置。您可以使用此设置来剔除特定批次。IRenderPipelineResources
接口,允许您 在图形设置窗口中添加新的设置组。更新了默认的 IRenderPipelineGraphicsSettings
检查器以在图形设置中的值被修改时触发通知,并在 IRenderPipelineGraphicsSettings
中添加了一个自定义菜单。CustomPostProcessOrder
的 UI 工具包支持。BatchCullingContext.cullingFlags
以指定是否剔除光照贴图阴影投射器。BatchRendererGroup
的 rendererPriority
支持。CommandBuffer.BuildRayTracingAccelerationStructure
命令。添加了对 RenderGraph 和 Render Graph Viewer 中 RayTracingAccelerationStructure
的支持。RayTracingAccelerationStructure
时或通过渲染器设置来自 C# 自定义标志。BakeTexture
和 BakeTrailsTexture
脚本方法。SystemInfo.supportsInlineRayTracing
、SystemInfo.supportsRayTracingShaders
、ComputeShader.SetRayTracingAccelerationStructure
和 CommandBuffer.SetRayTracingAccelerationStructure
(ComputeShader, …)。#pragma require inlineraytracing
。RayTracingAccelerationStructure.AddInstance
签名,允许将网格实例添加到 GPU 光线追踪的加速结构中。这相当于 光栅化通过计算几何体中每个多边形或三角形的像素来生成图像的过程。这是一种替代光线追踪的方式。Graphics.RenderMesh
。ImageConversion.LoadImage()
加载 EXR 数据的支持。ScriptableRenderContext.CullShadowCasters
API,以便在 URP 和 HDRP 中更早地启动 BatchRendererGroup
剔除作业。有关 URP 中新功能和改进的完整说明,请参阅 URP 中的新增功能。
为主要光源和附加光源添加了 8192x8192 选项到阴影纹理分辨率。
添加了 摄像机历史记录 API,它允许您访问每个摄像机的历史记录纹理并在自定义渲染通道中使用它们。历史记录纹理是 Unity 在前几帧为每个摄像机渲染的颜色和深度纹理。
将自适应探针体积 (APV) 光照场景混合添加到 URP。
添加了一个 新的配置包,允许您覆盖可见光源的最大数量。
添加了 渲染图查看器 窗口。此工具允许您可视化渲染通道如何使用帧资源以及调试渲染过程。
渲染调试器 现在包含一个 Mipmap 流式传输部分。此部分允许您检查纹理流式传输活动。
添加了 C# 脚本模板以创建 使用卷组件的自定义后期处理效果。
添加了 URP 的 APV 天空遮挡支持。
添加了对时空后期处理 (STP) 上采样的支持。
新的渲染图系统改进了自定义和维护渲染管线的方式。该系统减少了URP使用的内存量,并使内存管理更加高效。
此URP版本实现了Alpha处理设置。如果启用此设置,URP会将后处理输出渲染到具有Alpha通道的渲染纹理一种在运行时创建和更新的特殊纹理类型。要使用它们,首先创建一个新的渲染纹理,并指定您的其中一个摄像机渲染到其中。然后,您可以像使用常规纹理一样在材质中使用渲染纹理。更多信息
参见术语表。在以前的版本中,URP通过将Alpha值替换为1来丢弃Alpha通道。
添加了跨平台HDR高动态范围
参见术语表显示支持。编辑器和构建的播放器现在提供完整的HDR色调映射和显示支持,涵盖所有支持HDR的渲染管线和平台,包括移动设备和XR。
为来自探测体积的间接光添加了每个顶点的质量级别,以便URP更有效地渲染光照环境。在移动平台上,URP不支持反射探测器一种渲染组件,它以所有方向捕获其周围环境的球形视图,就像一个摄像机一样。然后,捕获的图像被存储为立方体贴图,可以被具有反射材质的对象使用。更多信息
参见术语表的光照场景混合或光照标准化。
在运动模糊体积组件中添加了“摄像机和对象”选项。该选项使用运动矢量来模糊比摄像机曝光时间移动更快的对象。
添加了对其他方向光Cookie的支持。
在URP全局设置中添加了“默认体积配置文件”字段。
在通用渲染管线资源中添加了“体积配置文件”字段。
为URP材质添加了alembic速度运动矢量支持。
为仅基于“时间”节点的顶点动画的着色器图着色器添加了自动基于时间的运动矢量生成。
为Forward+ 渲染路径渲染管线用于渲染图形的技术。选择不同的渲染路径会影响光照和阴影的计算方式。某些渲染路径比其他渲染路径更适合不同的平台和硬件。更多信息
参见术语表添加了对XR渲染和正交投影摄像机的支持。
在Forward+渲染路径中添加了对凹陷渲染的支持。
添加了时间抗锯齿 (TAA)支持。此功能与MSAA、动态分辨率摄像机设置,允许您动态缩放单个渲染目标以减少GPU的工作负载。更多信息
参见术语表或摄像机堆叠不兼容。此功能仅支持固定分辨率,不支持时间上采样。
添加了对高动态范围 (HDR) 输出的支持。
在URP渲染调试器中添加了详细统计信息部分。
移植所有URP通道以使用RasterCommandBuffer API。
在SSAO设置中添加了“AO方法”属性,您可以在其中选择“交错梯度噪声”或“蓝噪声”选项。
在SSAO设置中添加了“模糊质量”属性,您可以在其中选择“高(双边)”、“中(高斯)”或“低(单通道Kawase)”选项。
在SSAO设置中添加了“衰减”字段,以控制应用AO效果的摄像机距离。
在URP Forward+渲染路径中添加了聚类反射探测器支持。这使得每个对象可以使用两个以上的反射探测器,允许Unity跳过对象的灯光和反射探测器的剔除,并允许实体图形和程序化绘制利用反射探测器。
在URP中添加了低代码自定义后处理功能。
将贴花支持添加到渲染图API。
将渲染图API支持添加到URP后处理效果。
添加了对2D对象2D游戏对象,例如瓦片地图或精灵。更多信息
参见术语表(如精灵、碰撞器用于处理对象物理碰撞的不可见形状。碰撞器不需要与对象的网格完全相同形状 - 粗略的近似值通常更有效,并且在游戏玩法中难以区分。更多信息
参见术语表、精灵形状和2D动画)的阴影渲染的支持。
为投射阴影的2D灯光添加了软阴影渲染。
添加了对探测体积的有限支持,没有照明数据集的插值,并且在低端硬件上的性能有限。
改进了FXAA质量。新实现提供了更好的边缘抗锯齿(消除了先前实现中看到的奇数边缘伪影)和更好的纹理质量保留。改进不影响性能。输出质量现在与低和中等SMAA预设相当,但性能更好。
有关URP中新功能和改进的完整说明,请参阅HDRP中的新增功能。
Unity 6 包含更新和新功能,以简化多人游戏开发。
有关多人游戏中的新功能和改进的完整说明,请参阅多人游戏中的新增功能。
通过在文件为空或充满空格时使用默认依赖项重新填充文件,改进了项目清单每个 Unity 项目都有一个项目清单,它充当包管理器的入口点。此文件必须位于<project>/Packages
目录中。包管理器使用它来配置许多内容,包括该项目的依赖项列表以及要查询包的任何包存储库。更多信息
请参阅术语表文件的行为。
.aab
文件上传到 Google Play 商店时将调试符号嵌入到应用程序包中。用户可以选择将符号包作为 zip 文件与.apk
或.aab
文件分开上传。可以使用.so.sym
或.so.dbg
以及旧版.so
扩展名创建符号文件。.androidlib
插件在 Unity 之外创建的一组代码,用于在 Unity 中创建功能。可以在 Unity 中使用两种类型的插件:托管插件(使用 Visual Studio 等工具创建的托管 .NET 程序集)和原生插件(平台特定的原生代码库)。更多信息unityLibrary
的依赖项。现在可以将.androidlib
配置为依赖于unityLibrary
,从而通过覆盖UnityPlayerActivity
来扩展活动。com.unity.addressables.android
)的 Addressables,以提供 Addressables 的 Play Asset Delivery 支持。ApplicationExitInfo
API,以提供有关应用程序崩溃和应用程序无响应 (ANR) 错误的信息。GameActivity
作为默认应用程序入口点,以提供对 Android 和应用程序之间交互的更多控制。build_fingerprint
信息添加到 Android 构建中。.xcframework
插件的支持。添加了对 Apple 的 visionOS 平台的支持。
LocationService
方法和属性Start()
Stop()
isEnabledByUser
lastData
status
添加了在 Unity 播放器之间进行复制和粘贴的功能。
GetLastHeading()
SetHeadingUpdatesEnabled()
IsHeadingUpdatesEnabled()
GetHeadingStatus()
IsHeadingAvailable()
新增对指南针 API 的支持。
新增对移动浏览器的支持。
实现了 Emscripten 3.1.38 工具链。
Content-Encoding: gzip
或当 Web 浏览器存在阻止其解压缩 gzip 内容的错误时,控制台错误消息日志。启用了 Windows ARM64 播放器编译。更多信息,请访问 系统要求 页面。
ArticulationBody.jointPosition
指针线,以在场景视图中显示关节的确切位置。发布了内存 Profiler帮助您优化游戏的窗口。它显示在游戏的各个区域花费了多少时间。例如,它可以报告渲染、动画或游戏逻辑中花费的时间百分比。 更多信息
参见 术语表 1.1.0 版本。有关详细信息,请参阅 内存 Profiler 软件包 文档。
添加了控制播放器连接监听端口的功能。
在播放器构建中的调用堆栈中添加了 显示 C# 源代码行号的选项。
光线追踪 API 在 Unity 2023.1 中正式退出实验状态。光线追踪 API 包括稳定性和性能改进,以及与引擎现有 功能集功能集是相关软件包的集合,您可以使用它们在 Unity 编辑器中获得特定的结果。您可以在 Unity 的软件包管理器中直接管理功能集。 更多信息
参见 术语表 的更多兼容性。
使用 Sentis 在 Unity 应用程序中直接运行机器学习模型,并利用实时 AI 驱动的功能来优化性能。要了解更多信息,请参阅 Sentis 文档。
在 Shader Graph 软件包中添加了一组新的 Production Ready 示例内容着色器。
变体关键字预过滤引入了基于渲染管道设置驱动的预过滤属性的“multi_compile”关键字的早期排除。这大大减少了为潜在的剥离和编译枚举的变体数量。结果显着减少了着色器处理时间。
添加了 SpeedTree9Importer,它支持 SpeedTree Modeler 9 导出的 .st9 文件,并包括以下内容:
.cg
)、URP 和 HDRP 渲染器 (.shadergraph
) 的新的 SpeedTree9 着色器。使用透射蒙版仅在树叶上应用次表面散射,从而提高了 HDRP 中 SpeedTree 的视觉质量。HDRP/Nature/SpeedTree8.shadergraph
使用其次表面贴图作为透射蒙版节点,以去除树皮和树枝上意外的光线透射。这还修复了不匹配 3D 几何体照明的过度明亮的 公告牌一个纹理化的 2D 对象,它旋转以便始终面向摄像机。 更多信息
参见 术语表 照明。
HDRP/Nature/SpeedTree8.shadergraph
现在使用其次表面贴图作为透射蒙版节点,以去除树皮和树枝上意外的光线透射。这还修复了不完全匹配 3D 几何体照明的过度明亮的公告牌照明。
您现在可以将个性化数据存储在样条线对象上。此外,检查器中编辑点的界面已得到增强,并且某些 API 已公开提供。处理样条线时,您现在可以使用新的 场景视图上下文菜单。
-randomOrderSeed x
以随机顺序运行测试,其中 x
是一个与 0 不同的整数。如果向项目中添加了新的测试,则测试框架会保留随机顺序并传递相同的种子,并将新测试相应地放置在随机列表中。TestFileReferences.json
以在播放器的构建步骤中生成,以便测试运行器可以利用它来丰富运行步骤的数据。在 Unity 版本控制功能中添加了一个新的选项卡视图,用于列出和管理锁定。
添加了一个项目选项,用于支持跟踪项目根文件夹外部磁盘上存在的包。
ShaderKeyword
。添加了对 Vision Pro 上凹陷渲染的支持。