Unity(2022.3.38LTS) - Project Settings详细介绍不看你就亏大了(一)
在 Unity 中,(项目设置)页面是一个非常重要的部分,它包含了对整个项目的各种全局设置。Player 选项(分辨率和展示):可以设置游戏的默认分辨率、全屏模式等显示相关的选项。Icon(图标):为游戏在不同平台上设置图标。(其他设置):包括公司名称、产品名称、版本号等信息。Quality 选项用于配置不同的画质级别,如低、中、高、超高,可针对每个级别设置图形特效、阴影质量、抗锯齿等参数。Tim
目录
1. Adaptive Performance(自适应性能)
一. 简介
在 Unity 中,Project Settings
(项目设置)页面是一个非常重要的部分,它包含了对整个项目的各种全局设置。
Player 选项:
Resolution and Presentation
(分辨率和展示):可以设置游戏的默认分辨率、全屏模式等显示相关的选项。Icon
(图标):为游戏在不同平台上设置图标。Other Settings
(其他设置):包括公司名称、产品名称、版本号等信息。
Quality 选项:
用于配置不同的画质级别,如低、中、高、超高,可针对每个级别设置图形特效、阴影质量、抗锯齿等参数。
Time 选项:
控制游戏中的时间相关参数,如 Fixed Timestep
(固定时间步长)影响物理计算的频率。
Physics 选项:
设置物理模拟的参数,如重力大小和方向、层碰撞矩阵等。
Audio 选项:
管理音频相关的全局设置,如主音量、音频输出类型等。
Input 选项:
定义游戏中的输入操作,如键盘、鼠标、手柄等的按键映射。
Tags and Layers 选项:
创建和管理自定义的标签(Tags)和层(Layers),用于区分游戏对象和进行碰撞检测等操作。
Graphics 选项:
配置图形相关的设置,如渲染管线、动态批处理等。
总之,Project Settings
页面中的各项设置对于优化游戏性能、确保游戏在不同平台上的正确运行以及满足特定的游戏需求都起着至关重要的作用。
整体页面
二. 详细介绍
1. Adaptive Performance(自适应性能)
自适应性能使您能够获取有关移动设备的散热和电源状态的反馈,并做出适当的反应。例如,您可以创建对设备上的温度趋势和事件做出反应的应用程序,以确保在较长的时间段内保持恒定的帧速率并防止热节流。
比如:
设备热状态反馈
通过自适应性能 API,您可以访问设备的当前温度警告级别 () 和更详细的温度级别 ()。应用程序可以根据这些值进行修改,以避免操作系统对其进行限制。Instance.ThermalStatus.ThermalMetrics.WarningLevel
Instance.ThermalStatus.ThermalMetrics.TemperatureLevel
2.音频
属性 | 功能 | |||
---|---|---|---|---|
Global Volume | 设置播放期间所有声音的音量。 | |||
Volume Rolloff Scale | 设置基于对数衰减的音频源的全局衰减系数。该值越大,音量衰减就越快。相反,值越小,衰减越慢。 提示:值为 1 将模拟“真实世界”。 | |||
Doppler Factor | 设置多普勒效应的听觉影响。值为 0 将其禁用。值为 1 表示对于快速移动的对象应该能听得见声音。 提示:将 Doppler Factor 设置为 1 后,可调整 Speed of Sound 和 Doppler Factor__,直到满意为止。 | |Default Speaker Mode__ | 设置项目的默认扬声器模式。默认值为 2,对应于立体声扬声器。如需查看模式的完整列表,请参阅 AudioSpeakerMode API 参考。 注意:还可以通过脚本在运行时更改扬声器模式。有关详细信息,请参阅音频设置 (Audio Settings)。 | ||
System Sample Rate | 设置输出采样率。如果设置为 0,Unity 将使用系统的采样率。 注意:这仅作为参考,因为部分平台允许更改此采样率,例如 iOS 或 Android。 | |||
DSP Buffer Size | 设置 DSP 缓冲区的大小来优化延迟或性能。 | |||
Default | 默认缓冲区大小。 | |||
Best Latency | 在牺牲性能的情况下降低延迟。 | |||
Good Latency | 在延迟和性能之间取得平衡。 | |||
Best Performance | 在牺牲延迟的情况下提高性能。 | |||
Max Virtual Voices | 设置音频系统管理的虚拟语音数。该值应始终大于游戏所播放的语音数量。否则,Unity 将在控制台中显示警告。 | |||
Max Real Voices | 设置可以同时播放的真实语音的数量。每一帧都会选取最响亮的语音。 | |||
Spatializer Plugin | 选择要使用哪个原生音频插件来执行 3D 音频源的空间滤波。 | |||
Ambisonic Decoder Plugin | 选择要使用哪个原生音频插件来执行音频源的环绕声到双耳滤波。 | |||
Disable Unity Audio | 启用此属性可在独立构建中停用音频系统。请注意,这也会影响 MovieTextures 的音频。 在 Editor 中,音频系统仍然打开并支持预览音频剪辑,但 Unity 不会处理对 AudioSource.Play 和 AudioSource.playOnAwake 的调用来模拟独立构建的行为。 | |||
Virtualize Effect | 启用此属性可动态关闭为节省 CPU 而剔除的 AudioSources 上的效果和空间音响。 |
3. 编辑器
属性 | 功能 | |
---|---|---|
设备 | 选择要用于 Unity Remote 测试的设备类型。 Unity Remote 是可下载的应用程序,旨在帮助进行 Android、iOS 和 tvOS 开发。 | |
Compression | 在通过 Unity Remote 将游戏屏幕传输到设备时,选择要使用的图像压缩类型。默认是 JPEG 。 | |
JPEG | JPEG 通常提供更高压缩比和性能,但图形质量稍低。这是默认选项。 | |
PNG | PNG 可以更准确地体现游戏显示效果,但可能会降低性能。 | |
Resolution | 在 Unity Remote 中选择游戏应运行的分辨率。默认是“Downsize”(缩小)。 | |
Downsize | 以较低的分辨率显示游戏。这样可以获得更高的性能,但图形精度降低。这是默认选项。 | |
Normal | 以正常分辨率显示游戏。这样可以获得更高的图形精度,但性能降低。 | |
Joystick Source | 择您正在使用的操纵杆的连接源。默认是“远程”。 | |
Remote | 使用连接到运行 Unity Remote 的设备的游戏杆。这是默认选项。 | |
Local | 使用连接到运行 Editor 的计算机的游戏杆。 | |
Version Control | ||
Mode | 选择元文件的可见性。您可以将 Unity 与大多数常见的版本控制工具结合使用,包括 Perforce 和 PlasticSCM。默认是隐藏元文件。有关显示或隐藏元文件的更多信息,请参阅 Unity Answers 中的“可见或隐藏元文件”。 | |
Hidden Meta Files | 隐藏元文件。这是默认选项。 | |
Visible Meta Files | 显示元文件。这在使用版本控制时很有用,因为此选项允许其他用户和计算机查看这些元文件。 | |
Perforce | 使用 Perforce 版本控制系统。 | |
PlasticSCM | 使用 PlasticSCM 版本控制系统。 | |
Asset Serialization | ||
Mode | 选择用于存储序列化资产的格式。默认情况下,此设置为“强制文本”。 Unity使用序列化将Assets和AssetBundles加载到计算机的硬盘上或从中保存。为了帮助进行版本控制合并,Unity可以以基于文本的格式存储场景文件。如果不合并场景,Unity可以以更节省空间的二进制格式存储场景,或者允许文本和二进制场景文件同时存在。 | |
Mixed | 二进制模式下的资源保持二进制模式,文本模式下的资源保持文本模式。默认情况下,Unity 对新资源使用二进制模式。 | |
Force Binary | 将所有资源转换为二进制模式,包括新资源。 | |
Force Text | 将所有资源转换为文本模式,包括新资源。这是默认选项。 | |
Serialize Inline Mappings On One Line | 启用此设置可使 Unity 将引用和内联映射写在一行中。如果禁用此设置,当一行中的总字符数超过 80 个字符时,Unity 会将文本序列化引用拆分为多行。 | |
Default Behavior Mode | ||
Mode | 选择默认的 2D 或 3D 开发模式。Unity 会根据您选择的模式设置某些默认行为,以使开发更容易。默认是 3D 。 | |
3D | 将 Unity 设置为 3D 开发模式。这是默认选项。 | |
2D | 将 Unity 设置为 2D 开发模式。 | |
Asset Pipeline | ||
Mode | 选择要使用的资源管线版本。 | |
Version 1 (deprecated) | 使用资源管线版本 1。此功能已被弃用,不再受支持。 | |
Version 2 | 使用资源管线版本 2。这是默认选项。 | |
Active version | 显示活动的资源管线版本。为了使更改生效,必须保存并重新启动项目。 | |
Cache Server (project specific) | ||
Mode | 选择要使用的缓存服务器 (Cache Server)。 | |
Use global settings (stored in preferences) | 在“偏好设置”窗口中设置的默认缓存服务器被使用。 | |
Enabled | 选择要使用的特定缓存服务器,而不是默认缓存服务器。 | |
Disabled | 不使用缓存服务器。 | |
Prefab Editing Environments | ||
Regular Environment | 在预制件模式下将一个场景指定为常规预制件(即具有常规变换组件的预制件)的编辑环境。这样便可以根据选择的背景(而不是空场景)编辑预制件。 | |
UI Environment | 在预制件模式下将一个场景指定为 UI 预制件(即具有矩形变换组件的预制件)的编辑环境。这样便可以根据选择的背景(而不是空场景)编辑预制件。 | |
Graphics | ||
Show lightmap resolution overlay | 此设置与烘焙全局光照 (Baked Global Illumination) 类别中的绘制模式 (Draw Modes) 关联。启用此设置后,Unity 会在这些绘制模式之上绘制一个棋盘覆盖层,其中每个棋盘格区块对应一个纹素。此设置可在光照贴图时用于检查场景的纹素密度。 活动的绘制模式 (Draw Mode) 来自烘焙全局光照 (Baked Global Illumination) 类别时,还可以从 Draw Mode 下拉菜单中切换此设置。 | |
Use legacy Light Probe sample counts | 使用固定光照探针样本计数通过渐进光照贴图 (Progressive Lightmapper) 进行烘焙。样本计数为:64 个直接样本、2048 个间接样本和 2048 个环境样本。 | |
Enable baked cookies support | 对于在 Unity 2020.1 或更高版本中创建的项目,默认在渐进光照贴图中为烘焙光源和混合光源启用烘焙剪影。对于在 Unity 2020.1 之前中创建的项目,默认在渐进光照贴图中为烘焙光源和混合光源禁用烘焙剪影。这是为了提供向后兼容性。 启用此选项可为渐进光照贴图中的烘焙光和混合光启用烘焙剪影。 | |
Sprite Packer | ||
Mode | 选择一种模式来配置“Sprite Packer”工具。“Sprite Packer”工具会自动执行从单个“Sprite Textures”生成“Sprite Atlases”的过程。此设置默认设置为“Disabled”。 | |
Disabled | Unity 不打包 Sprite 图集。这是默认设置。 | |
Sprite Atlas V1 - Enabled For Builds | Unity 仅为构建打包 Sprite Atlases 。 | |
Sprite Atlas V1 - Always Enabled | Unity 在构建和进入播放模式之前会打包 Sprite 图集。 | |
Sprite Atlas V2 (Experimental) - Enabled | Unity 会为构建和进入播放模式之前打包 Sprite 图集。 | |
Sprite Atlas V2 (Experimental) - Enabled For Builds | UUnity 仅为构建打包 Sprite Atlases 。 | |
C# Project Generation | ||
Additional extensions to include | 包含要添加到 C# 项目的其他文件类型的列表。用分号分隔每个文件类型。默认情况下,此字段包含 txt;xml;fnt;cd 。 | |
Root namespace | 填写用于 C# 项目“RootNamespace”属性的命名空间。 | |
ETC Texture Compressor | ||
行为 | 指定用于 ETC 纹理的不同压缩质量的压缩工具。 可用的压缩工具包括 etcpak、ETCPACK 和 Etc2Comp。它们都是第三方压缩工具库。 | |
Legacy | 使用在 ETC 纹理压缩可配置之前可用的配置。这会设置以下属性 - Fast: ETCPACK Fast - Normal: ETCPACK Fast - Best: ETCPACK Best | |
Default | 使用 Unity 的默认配置。这会设置以下属性: - Fast: etcpack - Normal: ETCPACK Fast - Best: Etc2Comp Best | |
Custom | 自定义 ETC 纹理压缩配置。当您选择此选项时,“快速”“正常”和“最佳”属性将被启用。这对应于支持平台的纹理导入器中的“压缩器质量”设置。 | |
Fast | 定义用于快速压缩的压缩质量工具。 | |
Normal | 定义用于正常压缩的压缩质量工具。 | |
Best | 定义用于最佳压缩的压缩质量工具。 | |
Line Endings For New Scripts | ||
Mode | 选择文件行尾以应用于在 Editor 中创建的新脚本。请注意,配置这些设置不会转换现有脚本。 | |
OS Native | 根据运行 Editor 的操作系统来应用行尾。 | |
Unix | 根据 Unix 操作系统来应用行尾。 | |
Windows | 根据 Windows 操作系统来应用行尾。 | |
Streaming Settings | ||
Enable Texture Streaming in Play Mode | 在播放模式中启用 Mipmap 流。 纹理质量流设置也必须启用。 | |
Shader Compilation | ||
Asynchronous Shader Compilation | 启用此复选框可使 Unity 在后台编译着色器。编译时,Unity 引擎使用虚拟着色器在 Editor 中渲染几何体。着色器编译完成后,引擎将重新换入您的着色器变体。这意味着 Editor 将无缝运行,而无需等待 Unity 引擎编译每个着色器变体后才进行渲染。有关更多信息,请参阅异步着色器编译。 | |
Numbering Scheme | ||
Game Object Naming | 重复的游戏对象的命名方案。重复或实例化的游戏对象的命名方式是将连续数字附加到原始对象名称后。 | |
Game Object Digits | 设置用于复制游戏对象的数字的位数。 | |
Space Before Number in Asset Names | 控制是否在重复的资源名称中的数字前插入空格。 |
4. 图形
允许您设置Unity用于渲染项目的默认渲染管道。若要基于可脚本化渲染管道设置渲染管道,请在此处指定所需的渲染管道资源
属性 | 功能 | |
---|---|---|
Transparency Sort Mode | 定义按对象在特定轴上的距离渲染对象的顺序。Unity 中的渲染器按几个条件排序,例如图层编号或与摄像机的距离。这通常仅适用于 2D 开发;例如,按高度或沿 Y 轴来对精灵进行排序。 | |
Default | 根据摄像机模式将对象进行排序。 | |
Perspective | 根据透视图将对象进行排序。 | |
Orthographic | 根据正交视图将对象进行排序。 | |
Custom Axis | 根据使用 Transparency Sort Axis 定义的排序模式来排序对象。 | |
Transparency Sort Axis | 自定义__透明度排序模式 (Transparency Sort Mode)__。 |
标准着色器质量 | 将 的质量设置为 High 、 Medium 或 Low 。 | |
反射探头盒投影 | 为 上的反射 UV 贴图启用投影。 | |
反射探针混合 | 启用 。 | |
详细法线贴图 | 启用 采样(如果已分配)。 | |
启用半透明阴影 | 启用半透明阴影。 此选项可添加或删除 UNITY_USE_DITHER_MASK_FOR_ALPHABLENDED_SHADOWS 着色器编译器定义。 | |
启用 Light Probe 代理卷 | 允许渲染插值 的 3D 网格。 | |
级联阴影 | 启用级联阴影贴图。 此选项可添加或删除 UNITY_NO_SCREENSPACE_SHADOWS 着色器编译器定义。 | |
首选 32 位阴影贴图 | 当您面向使用 DX11 或 DX12 的平台时,请启用 32 位浮点阴影贴图。 大多数平台都有固定的阴影贴图格式,您无法调整。它们的格式各不相同,可以是 16 位、24 位或 32 位,也可以是基于浮点数或整数的。32 位阴影贴图提供比 16 位阴影更高质量的阴影,但在 GPU 上使用的内存和带宽会增加。 注意:要使用 32 位阴影贴图,请确保深度缓冲区也设置为 32 位。 | |
使用 HDR | 为此层启用 。 | |
HDR模式 | 选择为当前图形层启用 HDR 时用于 HDR 缓冲区的格式。默认情况下,此设置为 FP16 。 | |
FP16 | 颜色渲染纹理格式,每通道 16 位浮点值。 | |
R11G11B10 | 颜色渲染纹理格式。R 和 G 通道为 11 位浮点值,B 通道为 10 位浮点值。 | |
渲染路径 | 选择 Unity 应如何渲染图形。不同的渲染路径会影响游戏的性能以及光照和阴影的计算方式。有些路径比其他路径更适合不同的平台和硬件。 使用正交投影时不支持_延迟 (Deferred)_ 渲染。如果摄像机的投影模式设置为正交模式,则会覆盖这些值,并且摄像机始终使用_前向 (Forward)_ 渲染。有关更多信息,请参阅 。 | |
向前 | 。此渲染路径支持所有典型的 Unity 图形功能(法线贴图、每像素光照、阴影等)。但是,在默认设置下,仅少量最亮的光线才在每像素光照模式下渲染。其余光线是在对象顶点上或每个对象上计算的。 | |
递 延 | 延迟着色具有最高的照明和阴影保真度,如果有许多实时光源,则最适合使用。它需要一定程度的硬件支持。 | |
传统顶点照明 | 是具有最低光照保真度且不支持实时阴影的渲染路径。它是_前向 (Forward)_ 渲染路径的一个子集。 | |
实时全局照明 CPU 使用率 | 您允许 Enlighten Realtime Global Illumination 在运行时用于照明计算的 CPU 预算。增加此值会使系统对照明变化做出更快的反应,但代价是会使用更多的 CPU 时间。 注意:有些平台允许所有 CPU 都由工作线程占用,而有些平台则强制执行最大值。例如,某些游戏机最多允许 4 个 CPU 内核。对于 Android 设备,如果是 bigLittle 架构,则只使用小 CPU;否则,最大值比 CPU 总数少 1。 | |
低 | 将可用 CPU 线程的 25% 用作工作线程。 | |
中等 | 将可用 CPU 线程的 50% 用作工作线程。 | |
高 | 将可用 CPU 线程的 75% 用作工作线程。 | |
无限 | 将可用 CPU 线程的 100% 用作工作线程。 |
渲染路径 | 要使用的着色器 |
递 延 | 与 结合使用。 |
延迟反思 | 在延迟阴影中与反射探针一起使用。 |
屏幕空间阴影 | 与 PC/游戏主机平台上的方向光的级联阴影贴图结合使用。 |
运动矢量 | 用于基于对象的运动矢量计算。 |
镜头光晕 | 与 结合使用。 |
光晕 | 与 结合使用。 |
属性 | 功能 | |
光照贴图模式 | 确定光照贴图相关着色器的着色器变体剥离行为。 | |
自动 | Unity 会检查构建中的场景,并自动去除这些场景中未使用的变体。这是默认设置。 | |
习惯 | 选择手动包含或排除以下光照贴图模式的变体: * 烘烤非定向性 * 烘焙定向 * 实时无方向性 * 实时方向性 * 烘焙阴影蒙版 * 烘焙减法 | |
雾模式 | 确定与 Unity 的内置雾效果相关的着色器变体剥离行为。 | |
自动 | Unity 会检查构建中的场景,并自动去除这些场景中未使用的变体。这是默认设置。 | |
习惯 | 选择手动包含或排除以下雾模式的变体: * 线性 * 指数 * 指数平方 | |
实例化变体 | 确定与 GPU 实例化相关的着色器变体剥离行为。 | |
条带未使用 | 如果至少有一个使用该着色器的材质启用了启用实例化,则 Unity 仅包含给定着色器的 GPU 实例化变体。这是默认设置。 | |
全部剥离 | 剥离所有用于 GPU 实例化的变体,即使它们正在使用中。 | |
全部保留 | 包括 GPU 实例化的所有变体,即使它们正在使用中。 |
渲染器光照探针选择 | 当渲染器从光照探针接收全局光照,但不在任何一组光照探针的影响体积(四面体)内时,选择 Unity 使用的探针类型。默认值为“查找最近的光照探针”(Find closest Light Probe),这意味着 Unity 会搜索最近的光照探针,这会消耗大量系统资源。“渲染器光照探针选择”(Renderer Light Probe Selection) 提供了一种替代方法。选择 Use Ambient Probe 可使 Unity 在这些情况下回退到环境探测,从而节省系统资源。 选项: 查找最近的光照探针 使用环境探头 |
预加载着色器 | 在应用程序启动时预热的着色器变体集合。 |
显示第一个场景后预加载着色器 | 当 Unity 预热 Preloaded shaders 中指定的着色器变体时。 如果启用,Unity 会在第一个场景完全加载后加载并预热它们。否则,Unity 会在显示第一个场景之前加载并预热它们。 |
预加载着色器 | 如果启用了“显示第一个场景后预加载着色器”,Unity 如何预热在“预加载着色器”中指定的着色器变体。 如果值为 0,则 Unity 会在显示第一个场景后的下一帧预加载所有着色器变体。 否则,Unity 会在显示第一个场景后在多个帧上预加载新的着色器变体。在给定的帧中,它会预热着色器变体,直到达到此处设置的时间限制。之后,它不会开始预热新的着色器变体,直到下一帧。 |
创建资产 | 使用当前跟踪的着色器变体创建新的着色器变体集合资源。 |
清楚 | 清除跟踪的着色器变体。 |
相机相对剔除 | 确定 Unity 是否使用摄像机位置作为剔除的参考点。 | |
光线 | 使用相机位置作为参考点来剔除光源,而不是世界空间原点。启用“光线”可减少灯光在灯光远离相机时闪烁。有关详细信息,请参阅了解视锥体。 | |
阴影 | 使用相机位置作为参考点来剔除阴影,而不是世界空间原点。启用阴影以减少阴影在阴影远离相机时闪烁。有关详细信息,请参阅了解视锥体。 |
5. 输入管理器
“输入管理器”(Input Manager) 窗口允许您为项目定义输入轴及其关联操作。
名称 | 功能 |
---|---|
名字 | 轴名称。您可以使用它从脚本访问轴。 |
描述性名称、描述性否定名称 | 这些值已弃用,并且不起作用。以前,它们在启动时在“重新绑定控件”屏幕上为用户显示,但此屏幕也已弃用。 |
负按钮,正按钮 | 控制装置分别向负方向和正方向推动轴。这些可以是键盘上的键,也可以是操纵杆或鼠标上的按钮。 |
Alt 负键、Alt 正键 | 替代控制装置,分别将轴推向负方向和正方向。 |
重力 | 当不存在输入时,轴朝向中性线的速度(以每秒为单位)。 |
死 | 在您的应用程序注册移动之前,用户需要将模拟摇杆移动多远。在运行时,来自此范围内的所有模拟设备的输入将被视为空。 |
敏感性 | 轴向目标值移动的速度(以每秒为单位)。这仅适用于数字设备。 |
折 | 如果启用,当按下对应于相反方向的按钮时,轴值将重置为零。 |
类型 | 控制轴的输入类型。从以下值中选择: - 键或鼠标按钮 - 鼠标移动 - 操纵杆轴 |
轴 | 控制此轴的已连接设备的轴。 |
乔伊纳姆 | 控制此轴的连接操纵杆。您可以选择特定的操纵杆,或查询所有操纵杆的输入。 |
字母键 | a , , …b c |
数字键 | 1 , , …2 3 |
箭头键 | up , , ,down left right |
小键盘键 | [1] , , , , …[2] [3] [+] [equals] |
修饰键 | right shift , , , , , , ,left shift right ctrl left ctrl right alt left alt right cmd left cmd |
特殊键 | backspace , , , , , , , , , , ,tab return escape space delete enter insert home end page up page down |
功能键 | f1 , , …f2 f3 |
任何操纵杆上的特定按钮 | joystick button 0 , , …joystick button 1 joystick button 2 |
特定操纵杆上的特定按钮 |
|
代码示例
float horizontalInput = Input.GetAxis ("Horizontal");
6. Memory Settings
Unity 项目设置页面中的 “Memory Settings”(内存设置)用于管理和优化项目的内存使用情况。
6.包管理器
在 Unity 的项目设置页面中的包管理器(Package Manager)页面,主要用于管理项目中所使用的各种包(Packages)。
预发布包
当包准备好进行测试时,Unity 包开发人员会确保有一些基本的测试覆盖率,并且包通过了内部测试。该软件包至少需要初步文档、更新的更改日志和许可。
默认情况下,预发布包不会显示在可以安装的包列表中。但是,您可以通过启用“启用预发布包”项目设置来强制包管理器显示它们。
作用域注册表
作用域注册表允许 Unity 将任何自定义包注册表服务器的位置传达给包管理器,以便用户可以同时访问多个包集合.
财产 | JSON 类型 | 描述 |
---|---|---|
名字 | 字符串 | 用户界面中显示的作用域名称。“包管理器”窗口在包详细信息视图中显示此名称。 例如。 "name": "Tools" |
网址 | 字符串 | 与 npm 兼容的注册表服务器的 URL。 例如, 注意:并非所有注册表提供商都与 Unity 的包管理器兼容。确保您尝试添加的包注册表服务器实现了 or 端点。 "url": "https://mycompany.example.com/tools-registry" /-/v1/search /-/all |
范围 | 字符串数组 | 可以映射到包名称的作用域数组,可以是包名称的完全匹配,也可以是命名空间。不支持通配符和其他 glob 模式。 例如, 注意:此配置类型假定包遵循反向域名表示法。这样可以确保它与命名空间匹配的任何包名称等效,例如 或 。 警告:Unity 不支持 npm 的范围表示法。 "scopes": [ "com.example", "com.example.tools.physics" ] com.unity com.unity com.unity.timeline com.unity.2d.animation |
7.物理
财产 | 功能 | |
---|---|---|
重力 | 使用 x、y 和 z 轴设置应用于所有刚体组件的重力量。对于真实的重力设置,请将负数应用于 y 轴。重力以世界单位/秒平方定义。 注意:如果增加重力,可能还需要增加“默认求解器迭代”值以保持稳定的接触。 | |
默认材质 | 设置对默认物理材质的引用,如果尚未将任何物理材质分配给个人,则要使用对撞机 . | |
退回邮件阈值 | 设置速度值。如果两个碰撞物体的相对速度低于此值,则它们不会相互反弹。此值还可以减少抖动,因此不建议将其设置为非常低的值。 | |
默认最大脱穿速度 | 定义最大去穿透速度的默认值(求解器在尝试将物体从与其他物体的重叠中拉出时可以为物体设置的速度)。 | |
睡眠阈值 | 设置全局能量阈值,低于该阈值为非运动学刚体 (也就是说,不受物理系统控制的人)可能会进入睡眠状态。当刚体处于休眠状态时,它不会每一帧都更新,因此资源密集度较低。如果刚体的动能除以其质量低于此阈值,则它适合休眠。 | |
默认触点偏移 | 将距离设置为碰撞检测 系统用于生成碰撞接触。该值必须为正,如果设置得太接近零,则会导致抖动。默认情况下,此值设置为 0.01。只有当碰撞体的距离小于碰撞接触偏移值之和时,碰撞体才会生成碰撞接触。 | |
默认求解器迭代 | 定义 Unity 在每个物理帧上运行的求解器进程数。求解器是小型物理引擎任务,用于确定许多物理交互,例如关节的运动或管理重叠刚体组件之间的接触。 这会影响求解器输出的质量,如果使用非默认值或配置要求特别高,建议更改属性。通常,它用于减少由关节或触点引起的抖动。 Time.fixedDeltaTime | |
默认求解器速度迭代 | 设置求解器在每个物理帧中执行的速度处理数。求解器执行的处理越多,刚体反弹后产生的出口速度的精度就越高。如果您遇到连接刚体组件或布娃娃在碰撞后移动过多的问题,请尝试增加此值。 | |
查询击中背面 | 如果您希望物理查询(例如 )检测 MeshColliders 的背面三角形的命中,请启用此选项。默认情况下,此设置处于禁用状态。Physics.Raycast | |
查询命中触发器 | 如果您希望物理命中测试(例如 Raycasts、SphereCast 和 SphereTests)在与标记为触发器的碰撞体相交时返回命中,请启用此选项。单个光线投射可以覆盖此行为。默认情况下,此设置处于启用状态。 | |
启用自适应力 | 启用此选项可启用自适应力。自适应力会影响力通过一堆或一堆物体传递的方式,以提供更逼真的行为。默认情况下,此设置处于禁用状态。 | |
联系人生成 | 选择联系人生成方法。 | |
传统联系人生成 | 在 Unity 5.5 之前,Unity 使用基于分离轴定理 (SAT. PCM 效率更高,但对于较旧的项目,您可能会发现继续使用 SAT 更容易,以避免需要稍微调整物理特性。PCM 可能会导致略有不同的反弹,并且较少的无用触点最终落入触点缓冲区(即,您在碰撞 传递给 、 和 的实例。 升级建议:要迁移使用 Unity 2018.2 或更低版本制作的项目,您可能需要更新脚本以使用合并流形中的补丁并选择联系人的代码。 OnCollisionEnter OnCollisionStay OnCollisionExit | |
持续接触歧管 (PCM) | 每个物理帧生成的接触较少,而帧之间共享的接触数据更多。PCM触点生成路径也更准确,在大多数情况下通常会产生更好的碰撞反馈。有关更多信息,请参阅有关 Persistent Contact Manifold 的 Nvidia 文档。 这是默认值。 | |
模拟模式 | 选择 Unity 执行物理模拟的时间。默认值为 Fixed Update。 | |
固定更新 | 在 MonoBehaviour.FixedUpdate 之后立即执行物理模拟。 | |
更新 | 在 MonoBehaviour.Update 之后立即执行物理模拟。 | |
脚本 | 当脚本调用 Physics.Simulate 时执行物理模拟。 | |
自动同步转换 | 启用此选项可在转换组件 变化。默认情况下,此设置处于禁用状态。 | |
重用冲突回调 | 启用此选项可重用冲突回调。物理系统仅创建 Collision 类型的单个实例,并在每个单独的回调中重复使用它。这样可以减少垃圾收集器处理的废物,并提高性能。默认情况下,此属性处于启用状态。 | |
调用冲突回调 | 将 OnCollisionEnter 、OnCollisionStay 和 OnCollisionExit 的 MonoBehaviour 冲突消息发送到相应的脚本实现这些方法。默认情况下,此属性处于启用状态。 OnCollision | |
布料重力 | 在布料组件的每个轴上设置重力值。默认情况下,X 设置为 ,Y 设置为 ,Z 设置为 。0 -9.81 0 | |
触点对模式 | 选择要使用的触点对生成类型。 | |
默认联系人对 | 接收来自除运动学-运动学和运动学-静态对以外的所有接触对的碰撞和触发事件。 | |
启用运动学运动学对 | 接收来自运动学-运动学接触对的碰撞和触发事件。 | |
启用运动静态对 | 接收来自运动-静态接触对的碰撞和触发事件。 | |
启用所有联系人对 | 接收来自所有接触对的碰撞和触发事件。 | |
宽相型 | 选择要在物理场仿真中使用的宽相位算法。请参阅 NVIDIA 关于 PhysX SDK 和刚体碰撞的文档。 | |
清扫和修剪宽相 | 使用扫描和修剪宽相位碰撞方法(即,沿单个轴对对象进行排序,以排除必须检查相距很远的对)。 | |
Multibox 修剪 Broadphase | 多框修剪使用一个网格,每个网格单元执行扫描和修剪。这通常有助于提高性能,例如,如果有很多游戏对象 在一个平坦的世界里。 | |
自动剪枝机 | 该算法类似于 Multibox Pruning 算法,不同之处在于它还可以自动计算世界边界和细分数量。它维护网格单元集,并使用常规的扫描和修剪方法来计算出可能重叠的碰撞体对。它通常有助于大场景 其中,单个 Sweep 和 Prune 会产生大量额外的误报。 | |
世界边界 | 定义封闭世界的 2D 网格,以防止在使用 Multibox 修剪宽相算法时远处的对象相互影响。 仅当将“宽相类型”设置为“多框修剪宽相”时,才使用此选项。 | |
世界细分 | 二维网格算法中沿 x 轴和 z 轴的像元数。 仅当将“宽相类型”设置为“多框修剪宽相”时,才使用此选项。 | |
摩擦类型 | 选择用于仿真的摩擦算法。 | |
贴片摩擦型 | 一种基本的强摩擦算法,通常在低求解器迭代次数下产生最稳定的结果。此方法每对触摸对象最多仅使用四个标量求解器约束。 | |
一种定向摩擦类型 | 库仑摩擦模型的简化,其中给定接触点的摩擦力施加在接触法线的交替切线方向上。与面片摩擦相比,这需要更多的求解器迭代,但不如双向模型准确。要使铰接体使用此摩擦类型,请将“求解器类型”设置为“时间高斯塞德尔”。 | |
双向摩擦式 | 与单向模型类似,但同时在两个切线方向上施加摩擦。这需要更多的求解器迭代,但更准确。对于具有许多接触点的场景,比贴片摩擦更昂贵,因为它应用于每个接触点。要使铰接体使用此摩擦类型,请将“求解器类型”设置为“时间高斯塞德尔”。 | |
启用增强的确定性 | 无论参与者在场,场景中的模拟都是一致的,前提是游戏以确定的顺序插入参与者。此模式牺牲了一些性能来确保这种额外的确定性。 | |
启用统一高度图 | 启用此选项可处理地形 以相同的方式发生碰撞网孔 碰撞。 | |
改善贴片摩擦 | 优化贴片摩擦,使静态和动态摩擦 不要超过分析结果。默认情况下,此属性处于停用状态。 | |
求解器类型 | 选择要用于模拟的 PhysX 求解器类型。 | |
投影高斯·塞德尔 | 默认的 PhysX 求解器。 | |
时间高斯·塞德尔 | 该求解器提供了更好的收敛性和更好的处理高质量比,最大限度地减少了校正穿透时引入的能量,并提高了关节 过度拉伸。当您在使用默认求解器进行仿真时遇到一些不稳定的行为时,这通常会有所帮助。 | |
默认最大角速度 | 设置所有动态刚体游戏对象的项目范围默认最大角速度(以弧度为单位)。缺省值为 。50 | |
快速运动阈值 | “基于扫描的CCD算法用于确定快速移动的物体是否移动了这一帧的线性运动阈值。必须大于零。默认值为无穷大,由值 “ 表示。3.402823e+38 | |
层碰撞矩阵 | 定义基于层的碰撞检测系统的行为方式。通过选中碰撞矩阵上的哪些层来选择它们与其他层交互的层。 | |
布料相互碰撞 | ||
距离 | 定义围绕每个相互碰撞的布粒子的球体直径。Unity 确保这些球体在模拟过程中不会重叠。距离应小于配置中两个粒子之间的最小距离。如果距离较大,布料碰撞可能会违反某些距离约束并导致抖动。 | |
刚度 | 相互碰撞的布料颗粒之间的分离脉冲应该有多强。布料求解器会计算出这一点,它应该足以保持粒子的分离。 |
8.2D物理
财产 | 功能 | |
---|---|---|
重力 | 设置应用于所有刚体 2D 的重力量 游戏对象 .通常,您只为 y 轴的负方向设置重力。 | |
默认材质 | 设置对物理 材质 2D 在未分配给个人的情况下使用对撞机 二 维和。 | |
速度迭代 | 设置 进行的迭代次数物理引擎 以解决速度效应。数字越大,物理计算越准确,但代价是 CPU 时间。 | |
位置迭代 | 设置物理引擎为解决位置变化而进行的迭代次数。数字越大,物理计算越准确,但代价是 CPU 时间。 | |
速度阈值 | 设置弹性的阈值碰撞 .Unity 将相对速度低于此值的碰撞视为非弹性碰撞(即,碰撞的游戏对象不会相互反弹)。 | |
最大线性校正 | 设置求解约束时使用的最大线性位置校正(范围介于 0.0001 到 1000000 之间)。这有助于防止超调。 | |
最大角度校正 | 设置求解约束时使用的最大角度校正(范围介于 0.0001 到 1000000 之间)。这有助于防止超调。 | |
最大翻译速度 | 设置 a 的最大线速度刚体 任何物理更新期间的 2D 游戏对象。 | |
最大转速 | 在任何物理更新期间设置刚体 2D 游戏对象的最大旋转速度。 | |
鲍姆加特量表 | 设置比例因子,用于确定 Unity 解决碰撞重叠的速度。 | |
鲍姆加特影响时间量表 | 设置比例因子,用于确定 Unity 解决影响时间重叠的速度。 | |
睡眠时间 | 设置 Rigidbody 2D 在进入睡眠状态之前停止移动后必须经过的时间(以秒为单位)。 | |
线性睡眠耐受性 | 设置线速度,低于该速度时,Rigidbody 2D 在睡眠时间过后进入睡眠状态。 | |
角睡眠耐受性 | 设置在休眠时间过后,刚体 2D 低于该转速进入休眠状态。 | |
默认触点偏移 | 为碰撞体设置邻近距离值,即使碰撞体实际上并未接触,也要将其视为接触。距离小于其值之和的碰撞体产生接触。这使得contactOffset 碰撞检测系统,即使物体略有分离,也能预测性地强制执行接触约束。谨慎:将此值减小得太远可能会削弱 Unity 计算连续多边形碰撞的能力。相反,如果过多地增加该值,则可能会产生顶点碰撞的伪影。 | |
模拟模式 | 从下拉菜单中选择 Unity 何时执行 2D 物理模拟。 | |
固定更新 | 选择此选项可让 Unity 在调用 MonoBehaviour.FixedUpdate 后立即执行物理模拟。 | |
更新 | 选择此选项可让 Unity 在调用 MonoBehaviour.Update 后立即执行物理模拟。 | |
脚本 | 选择此选项可通过 Physics2D.Simulate 手动执行物理模拟。 | |
查询命中触发器 | 如果您希望标记为触发器的 Collider 2D 在任何物理查询(例如 Linecasts 或 Raycasts)与它们相交时返回命中,请启用此选项。默认为 enabled。 | |
查询从碰撞体开始 | 如果您希望在 Collider 2D 内部启动的物理查询能够检测它们开始的 Collider,请启用此选项。 | |
禁用时回调 | 启用此选项可在禁用带触点的碰撞体时产生碰撞回调。 | |
重用冲突回调 | 启用此设置可使物理引擎将单个 Collision2D 实例重用于所有碰撞回调。禁用此选项可让物理引擎为每个碰撞回调创建一个新的 Collision2D 实例。 | |
自动同步转换 | 启用此选项可自动将转换更改与物理系统同步。 | |
小玩意儿 | 选择要在编辑器中绘制的物理 2D 小工具的类型。您可以选择多个选项。 | |
无 | 选择此选项可取消选择每个选项。不会绘制物理 2D 小工具。 | |
万事 | 选择此选项以选择每个选项。 | |
所有对撞机 | 选择此选项可绘制所有碰撞体,而无需在“层次结构”(Hierarchy) 窗口中选择它们。 | |
对撞机概述 | 选择此选项可使用轮廓绘制碰撞体(您可以在 2D 物理偏好设置中自定义轮廓的颜色)。 | |
对撞机填充 | 选择此选项可使用 2D 物理首选项中指定的填充颜色绘制所有碰撞体。 | |
对撞机休眠 | 选择此选项可绘制碰撞体,以使用 2D 物理偏好设置中指定的 Awake 或 Asleep 颜色显示它们所连接的 Rigidbody 2D 何时处于休眠状态。 | |
对撞机触点 | 选择此选项可使碰撞体接触显示为方向箭头,该方向从接触点开始,沿接触法线方向开始。您可以在 2D 物理偏好设置中指定箭头的接触颜色。 | |
碰撞体边界 | 选择此选项可为 Collider 创建的所有 PhysicalShape2D 绘制 Collider 边界。边界是轴对齐的边界框 (AABB)。 | |
多线程 | 展开此设置以调整多线程设置。 |
多线程
财产 | 功能 |
---|---|
使用多线程 | 启用此选项可使用作业系统执行模拟步骤,并使用这些选项的其余部分来控制如何实现该步骤。 |
使用一致性排序 | 如果保持一致的处理顺序对仿真很重要,请启用此选项。 在多个 CPU 线程上执行仿真步骤会生成单独的数据批次。处理这些单独的批次会降低处理顺序的确定性,但会产生更快的结果。 |
每个作业的插值姿势数 | 设置每个仿真作业中插值的刚体 2D 对象的最小数量。 |
每个工作的新联系人 | 设置在每个模拟作业中要查找的新联系人的最小数量。 |
每个作业的碰撞接触数 | 设置每个模拟作业中要碰撞的最小接触数。 |
清除每个作业的标志数 | 设置每个模拟作业中要清除的最小标志数。 |
每个作业的清晰体力 | 设置每个模拟作业中要清除的最小实体数。 |
同步每个作业的离散灯具 | 在每个仿真作业中设置离散岛屿求解期间在宽相中同步的最小夹具数量。 |
同步每个作业的连续灯具 | 在每个仿真作业中,设置在连续岛屿求解期间要在宽相中同步的最小夹具数量。 |
为每个工作查找最近的联系人 | 设置在每个模拟作业中要查找的最近联系人的最小数量。 |
更新每个作业的触发器联系人 | 设置每个模拟作业中要更新的触发触点的最小数量。 |
孤岛求解器成本阈值 | 设置所有机构、联系人和关节 在离散岛屿求解过程中的岛屿中。 |
孤岛求解器主体成本标度 | 在离散孤岛求解期间设置每个实体的成本尺度。 |
孤岛求解器接触成本标度 | 在离散孤岛求解过程中设置每个接触点的成本刻度。 |
孤岛求解器联合成本尺度 | 在离散岛求解过程中设置每个节点的成本比例。 |
每个作业的孤岛求解器主体数 | 在执行岛屿求解时,设置每个模拟作业中要求解的最小体数。 |
每个作业的孤岛求解器联系人数 | 设置在执行岛屿求解时,每个模拟作业中要求解的最小接触数。 |
“图层碰撞矩阵”选项卡
设置控制碰撞器(连接到不同的刚体 2D)是否可以相互接触,具体取决于分配给它们所在的游戏对象的层。该矩阵将每个层与每个其他层显示在一起,允许您选择哪些特定层可以与另一个层接触。
9.玩家
所有平台共享的常规设置
特定于平台的设置分为以下几个部分:
- 图标:桌面上显示的游戏图标。您可以从项目的 2D 图像资源中选择图标,例如精灵
或导入的图像。- 分辨率和演示:屏幕分辨率和其他演示详细信息的设置,例如游戏是否应默认为全屏模式。
- 启动画面:游戏启动时显示的图像。本部分还包括用于创建初始屏幕的常用设置。有关更多信息,请参阅 Splash Image 文档。
- 其他设置:特定于平台的任何其他设置。
- 发布设置:有关如何准备构建的应用程序以便从应用商店或主机网页交付的详细信息。
- 红外线转换器
设置:特定于虚拟现实、增强现实和混合现实应用程序的设置。
PS:后面再详细介绍安卓,网页部分的设置
10.预设管理器
以在向游戏对象添加组件或向项目添加新资源时指定默认属性。您定义的默认预设将覆盖 Unity 的默认设置。
注意:您无法为项目设置、首选项设置或原生资源(如材质、动画或 SpriteSheets)设置默认属性。
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)