The Import Settings for a Model file appear in the Model tab of the Inspector window when you select the Model. These affect the Mesh and its Normals. Unity uses these settings to import each Asset, so if you can adjust any settings to apply to different Assets in your Project.
属性 | 功能 | |||
---|---|---|---|---|
Meshes | ||||
Scale Factor | Unity’s physics system expects 1 meter in the game world to be 1 unit in the imported file. If you prefer to model at a different scale, then you can compensate for it here. The defaults for different 3D packages are as follows: .fbx, .max, .jas, .c4d = 0.01 .mb, .ma, .lxo, .dxf, .blend, .dae = 1 .3ds = 0.1 |
|||
Use File Scale | Use the model scaling defined in the model file, or uncheck to set a custom Scale Factor value for your model. | |||
File Scale | Set a custom scale for your model. Only available when Use File Scale is checked. | |||
Mesh Compression | 设置压缩比级别以减小网格的文件大小。提高压缩比会降低网格的精度,方法是在每个组件中使用网格边界和更低的位深来压缩网格数据。 最好是尽可能调高网格,而不会使网格看起来与未压缩版本有太大区别。这对于优化游戏大小很有用。 |
|||
Off | 不使用压缩。 | |||
Low | 使用低压缩比。 | |||
Medium | 使用中等压缩比。 | |||
High | 使用高压缩比。 | |||
Read/Write Enabled | 当启用此选项时,Unity 会将网格数据上传到 GPU 可寻址内存,但也会将其保存在 CPU 可寻址内存中。这意味着 Unity 可以在运行时访问网格数据,您也可以从脚本中访问网格数据。例如,如果您正在按过程生成一个网格,或者想要从一个网格中复制一些数据。当启用此选项时,Unity 会将网格数据上传到 GPU 可寻址内存,然后从 CPU 可寻址内存中删除网格数据。 在大多数情况下,应禁用此选项以节省运行时内存使用量。有关何时启用 Read/Write Enabled 的信息,请参阅 Mesh.isReadable。 |
|||
Optimize Mesh | 让 Unity 确定三角形在网格中列出的顺序。Unity 会对顶点和索引重新排序以改善 GPU 性能。 | |||
Import BlendShapes | 允许 Unity 导入包含网格的 BlendShapes。 注意:导入混合形状法线需要在 FBX 文件中具有平滑组。 |
|||
Generate Colliders | 启用此属性可在自动附加网格碰撞体的情况下导入您的网格。这可以用于为环境几何体快速生成碰撞网格,但是对于您正在移动的几何体,应避免使用。 | |||
Keep Quads | Enable this to stop Unity from converting polygons that have four vertices to triangles. For example, if you are using Tessellation Shaders, you may want to enable this option because tessellating quads may be more efficient than tessellating polygons. Unity can import any type of polygon (triangle to N-gon). Polygons that have more than four vertices are always converted to triangles regardless of this setting. However, if a mesh has quads and triangles (or N-gons that get converted to triangles), Unity creates two submeshes to separate quads and triangles. Each submesh contains either triangles only or quads only. Tip: If you want to import quads into Unity, you have to use editable poly in 3ds Max. |
|||
Index Format | 定义网格索引缓冲区的大小。 注意:由于带宽和内存存储大小的原因,通常会希望将 16 bit 索引保留为默认设置,并且只在必要时使用 32 bit__,这也是 Auto__ 选项所使用的设置。 |
|||
Auto | 在导入网格时,让 Unity 根据网格顶点数来决定是使用 16 位索引还是 32 位索引。对于 Unity 2017.3 和更高版本中添加的资源,这是默认设置。 | |||
16 bit | Use 16 bit indices when importing a Mesh. If the Mesh is larger, then it is split into <64k vertex chunks. Assets that already exist in Projects made in Unity 2017.2 or previous versions will use this setting. | |||
32 bit | 导入网格时使用 32 位索引。如果使用的是基于 GPU 的渲染管线(例如,使用计算着色器三角形剔除),那么使用 32 位索引将确保所有网格使用相同的索引格式。这降低了着色器的复杂性,因为它们只需要处理一种格式。 | |||
Weld Vertices | Combine vertices that share the same position in space. This optimizes the vertex count on Meshes by reducing their overall number. This option is enabled by default. In some cases, you might need to switch this optimization off when importing your Meshes. For example, if you intentionally have duplicate vertices which occupy the same position in your Mesh, you may prefer to use scripting to read or manipulate the individual vertex and triangle data. |
|||
Import Visibility | 导入 FBX 设置,这些设置定义了是否启用 MeshRenderer 组件(可见)。有关详细信息,请参阅下面的导入可见性。 | |||
Import Cameras | 从 .FBX 文件导入摄像机。有关详细信息,请参阅下面的导入摄像机。 | |||
Import Lights | 从 .FBX 文件导入光源。有关详细信息,请参阅下面的导入光源。 | |||
Preserve Hierarchy | 始终创建一个显式预制件根,即使这个模型只有一个根。通常,FBX Importer 会将模型中的任何空根节点作为优化策略进行剥离。但是,如果您的多个 FBX 文件中包含同一层级视图的某些部分,则可以使用此选项来保留原始层级视图。 例如,file1.fbx 包含一个骨架和一个网格,file2.fbx 包含相同骨架,但只包含该骨架的动画。如果在不启用此选项的情况下导入 file2.fbx,那么 Unity 将剥离根节点,层级视图将不匹配,并且动画暂停。 |
|||
Swap UVs | 在网格中交换 UV 通道。如果漫射纹理使用光照贴图中的 UV,请使用此选项。Unity 最多支持八个 UV 通道,但并不是所有的 3D 建模应用程序都会导出两个以上的通道。 | |||
Generate Lightmap UVs | 为光照贴图创建第二个 UV 通道。请参阅有关光照贴图的文档以了解更多信息。 | |||
Normals & Tangents | ||||
Normals | 定义是否以及如何计算法线。这对于优化游戏大小很有用。 | |||
Import | Import normals from the file. This is the default option. | |||
Calculate | Calculate normals based on Smoothing Angle (below). | |||
None | 禁用法线。如果网格既未正常贴图,也不受实时光照的影响,则使用此选项。 | |||
Normals Mode | Define how the normals are calculated by Unity. This is only available when Normals is set to Calculate. | |||
Unweighted Legacy | 旧版的法线计算方法(在 2017.1 版本之前)。在某些情况下,旧版给出的结果与当前实现给出的结果略有不同。对于在将项目迁移到最新版本的 Unity 之前导入的所有 FBX 预制件,这是默认设置。 | |||
Unweighted | 法线不加权。 | |||
Area Weighted | 法线按照图面面积加权。 | |||
Angle Weighted | 法线按照每个图面上的顶角加权。 | |||
Area and Angle Weighted | 法线按照每个图面上的图面面积和顶角加权。这是默认选项。 | |||
Smoothing Angle | 控制是否为硬边拆分顶点。通常,值越大,产生的顶点越少。 注意:此设置仅用于非常光滑的有机物或非常复杂的多边形模型。否则,最好在 3D 建模软件中手动平滑,然后导入,并且需要将 Normals 选项设置为 Import__(上文)。由于 Unity 仅以单个角度作为硬边的基础,因此您可能会错误地在模型的某些部分上平滑。 仅当 Normals__ 设置为 Calculate 时才可用。 |
|||
Tangents | 定义如何导入或计算顶点切线。仅当 Normals 设置为 Calculate 或 Import 时,此属性才可用。 | |||
Import | 如果 Normals 设置为 Import__,则从 FBX 文件中导入顶点切线。如果网格没有切线,那么将无法使用法线贴图着色器。| ||Calculate Tangent Space__ | 使用 MikkTSpace 计算切线。如果 Normals 设置为 Calculate__,则这是默认选项。 | ||Calculate Legacy__ | 使用旧版算法计算切线。 | |
Calculate Legacy - Split Tangent | 使用旧版算法计算切线,并在 UV 图表上进行拆分。如果网格上的接缝破坏了法线贴图光照,请使用此属性。此属性通常仅适用于角色。 | |||
None | 不导入顶点切线。网格没有切线,因此将无法使用法线贴图着色器。 |
Unity 可以通过 Import Visibility 属性从 FBX 文件读取可见性属性。值和动画曲线可以通过控制 Renderer.enabled 属性来启用或禁用 MeshRenderer 组件。
默认情况下,可见性是可以继承的(设置为 true),但可以覆盖。例如,如果父网格上的可见性设置为 0,那么其子网格上的所有渲染器也将被禁用。在此情况下,将为每个子项的 Renderer.enabled
属性创建一个动画曲线。
一些 3D 建模应用程序要么不支持可见性属性,要么存在限制。有关更多信息,请参阅:
从 .FBX 文件导入摄像机时,Unity 支持以下属性:
属性: | 功能: |
---|---|
Projection 模式 | 正交或透视。不支持动画。 |
Field of View | 支持动画。 |
Near 和 Far Clipping Plane 距离 | Does not support animation. When exporting from 3ds Max, enable the Clip Manually setting; otherwise the default values are applied on import. |
Note: Targeted cameras are not supported.
支持以下光源类型:
支持以下光源属性:
属性: | 功能: |
---|---|
Range | 如果启用 UseFarAttenuation__,则使用 FarAttenuationEndValue。FarAttenuationEndValue__ 不支持动画。 |
Color | 支持动画。 |
Intensity | 支持动画。 |
Spot Angle | 支持动画。仅适用于聚光灯。 |
注意:在 3ds Max 中,导出的默认值是当前选定帧上的属性值。为了避免混淆,在导出时将播放头移动到第 0 帧。
一些 3D 建模应用程序会对光源属性应用缩放。例如,您可以按照聚光灯的层级视图来缩放聚光灯,并影响光锥。Unity 不会执行此操作,从而可能会导致光在 Unity 中看起来有所不同。
FBX 格式不会定义面光源的宽度和高度。一些 3D 建模应用程序没有此属性,只允许使用缩放来定义矩形区域。正因为如此,面光源在导入后的大小始终为 1。
不支持目标光照动画,除非它们的动画经过烘焙。
2018–08–23 页面已修订并只进行了有限的编辑审查
2018–04–25 页面已修订并只进行了有限的编辑审查
2017–12–05 页面已修订并只进行了有限的编辑审查
2017–09–04 页面已修订并只进行了有限的编辑审查
用户手册 5.6 版中首次记录了 Keep Quads 的现有(Unity 5.6 之前)功能
在 Unity 2017.1 中添加了 Normals Mode、Light 和 Camera 导入选项 NewIn20171
2017.2 中添加了 Materials 选项卡 NewIn20172
在 2017.3 版中添加了 Index Format 属性 NewIn20173
更新了 read/write enabled 设置的描述并且重新整理了属性表以便与 Unity 2017.3 中的改进相符 NewIn20173