Simplygon LOD

用于管理和自动生成静态网格体的细节层级网格体的管道和工具。

Windows
MacOS
Linux

从引擎4.22版本开始,UE4已废弃对Simplygon的支持,并且以后不再提供该支持。您可以继续从Simplygon获取更新,但必须自己将其集成到引擎中。作为替代方案,我们有自己的内部解决方案,您可以在骨架网格体简化 文档页面上查看更多相关内容。

本节介绍如何使用Simplygon功能为虚幻引擎4中的静态网格体创建LOD。如果您没有Simplygon证书,标准FBX管道有一种为静态网格体导入LOD的方法。更多详情,请参阅FBX静态网格体管道 文档。

静态网格体 管道提供创建预设和自动生成完整的细节层级(LOD)链的能力,这是一项核心功能。这允许美术师创建一个网格体,导入该网格体,并创建优化版本,以便在无需额外工作的情况下在远处渲染,从而提高渲染性能。

主要功能包括:

  • LOD组,用于定义默认的细节层级设置、光照贴图分辨率,并允许全局覆盖(例如将所有SmallProp LOD降低10%)。您可以在导入时选择一个LOD组,并在静态网格体编辑器中随时进行更改。

  • 根据每个平台或设备定义和覆盖LOD组设置。

  • 法线和切线始终从FBX中导入。您随时可以选择是使用导入的法线/切线,还是让虚幻重新计算。

  • 简化了在静态网格体编辑器 中设置和调整LOD的工作流程。

  • 使用Simplygon自动生成LOD。

LOD管理

静态网格体编辑器(StaticMesh Editor) 中的 细节层级(Level of Detail) (LOD)面板提供根据设置的规则(即以LOD组 的形式或基于每个网格体和每个LOD)管理和生成完整的细节层级网格体链的能力。

Level of Detail Panel

LOD生成

自动LOD生成使用Simplygon来创建要用作LOD的基本网格体的简化版本。这些算法考虑了目标复杂性、轮廓和纹理坐标的保留等等因素,以便生成一个新的网格体,该网格体可以在一定距离内显示,而不会出现明显的退化或瑕疵。

要应用一个LOD组,请执行以下操作:

  1. LOD设置 中选择要使用的 LOD组(LOD Group)

    group_select.png

  2. 应用 按钮以创建新的LOD网格体。

要生成一个自定义LOD链,请执行以下操作:

  1. LOD设置 中选择要生成的LOD网格体数量。

    您还可以选择一个 LOD组(LOD Group) 用作起点,然后从此处更改设置。

    lod_number.png

  2. 为要生成的每个LOD网格体设置简化设置

    lod_settings.png

  3. 应用 按钮以创建新的LOD网格体。

LOD预览

可以使用工具栏中的功能按钮来预览LOD网格体:

LOD设置

设置

说明

LOD组(LOD Group)

指定要用于网格体的LOD组

LOD数量(Number of LODs)

设置网格体的LOD数量。当该值被修改后,LOD列表将进行更新,但在按应用按钮之前不会进行任何实际更改。

自动计算LOD距离(Auto compute LOD Distance)

如果启用,则使用一个简单的错误度量来确定LOD之间发生转换的距离。否则,将使用每个LOD的距离(Distance)属性来确定何时发生到该LOD的转换。

LOD距离误差(LOD Distance Error)

在使用自动计算时,缩放LOD之间发生转换的距离。

编译设置

设置

说明

重新计算法线(Recompute Normals)

如果启用,虚幻将重新计算平滑组。否则,将保留FBX文件中的平滑组。

重新计算切线(Recompute Tangents)

如果启用,虚幻将重新切线。否则,将保留FBX文件中的切线。

移除退化(Remove Degenerates)

如果启用,将移除导入过程中发现的退化三角形。禁用该选项将保留发现的退化三角形。通常,应该启用该选项。

使用全精度UV(Use Full Precision UVs)

如果启用,网格体的UV将存储为32位浮点数,而不是16位浮点数。

简化设置

设置

说明

百分比三角形(Percent Triangles)

编辑器将简化网格体,直到它拥有指定的确切数量的三角形。

最大偏差(Max Deviation)

与基础网格体的最大偏差,以边界球体的百分比表示。编辑器使用所需的质量来计算网格体的误差度量。该误差度量防止工具简化网格以致于使新网格体的表面与源网格体的表面偏离太多。这种方法的优点是,该工具可以在源网格体的一定偏差范围内智能地优化网格体,而不需要在任意的三角形极限处停止。

轮廓(Silhouette)

指定网格体轮廓的重要性。您可以从 关闭(Off)最低(Lowest)低(Low)正常(Normal)高(High)最高(Highest) 中进行选择。选择一个较高的设置会促使简化更好地保存网格体的几何形状,但会增加三角形的数量。

纹理(Texture)

指定纹理密度的重要性。您可以从 关闭(Off)最低(Lowest)低(Low)正常(Normal)高(High)最高(Highest) 中进行选择。选择一个较高的设置会促使简化避免纹理拉伸瑕疵,但会增加三角形的数量。

着色(Shading)

指定着色质量的重要性。您可以从 关闭(Off)最低(Lowest)低(Low)正常(Normal)高(High)最高(Highest) 中进行选择。选择一个较高的设置会促使简化更好地保留着色质量,但会增加三角形的数量。

融合阈值(Welding Threshold)

与其他项目在此距离内的顶点将自动进行融合。这可以帮助消除较小的面。使用较大的值可能会产生不理想的结果。

硬边角度阈值(Hard Edge Angle Threshold)

面与面之间的角度大于此值将导致面与面之间产生硬边。较小的角度会产生软边。

LOD组

LOD组定义默认的细节层级设置,以及一些用于全局修改静态网格体的选项。

组在"Engine.ini"的"[StaticMeshLODSettings]"部分中有定义。例如:

[StaticMeshLODSettings]
LevelArchitecture=(NumLODs=4,LightMapResolution=32,LODPercentTriangles=0.5,SilhouetteImportance=4)
SmallProp=(NumLODs=4,LODPercentTriangles=0.5)
LargeProp=(NumLODs=4,LODPercentTriangles=0.5)
Vista=(NumLODs=1)
Foliage=(NumLODs=1)

这些设置定义5个LOD组:

  • LevelArchitecture

  • SmallProp

  • LargeProp

  • Vista

  • Foliage。

只需编辑INI,即可添加和移除LOD组,无需修改代码。额外的LOD组将自动出现在编辑器UI中。已删除组中的网格体将使用由代码确定的默认设置。还可以通过定义非LOD组,在INI中覆盖这些默认设置。

组默认设置

以下设置定义每个组的默认值。默认值只在导入网格体或更改网格体的LOD组时才应用。

设置

说明

LOD数量(NumLODs)

要生成的默认LOD数量。该值必须在1-4的范围以内。

光照贴图分辨率(LightMapResolution)

要使用的光照贴图分辨率。

基础百分比三角形(BasePercentTriangles)

基础LOD中要保留的三角形百分比,0.0-1.0。

LOD百分比三角形(LODPercentTriangles)

每个LOD要简化的三角形百分比。例如,对于一个包含4个LOD的网格体,如果将该选项设置为0.5,且LOD0有5000个三角形,那么其余LOD将分别有2500个、1250个和625个三角形。

最大偏差(MaxDeviation)

本地空间中,一个LOD的表面可以偏离基础LOD的最大距离。

融合阈值(WeldingThreshold)

两个顶点之间的距离小于该值时,两个顶点将融合在一起。

硬角阈值(HardAngleThreshold)

如两个三角形之间的角度大于该值(以度为计量),这两个三角形之间边缘上的法线将不平滑。

轮廓重要性(SilhouetteImportance)

较高的值将在生成LOD时尝试保留对象的轮廓。

纹理重要性(TextureImportance)

较高的值将在生成LOD时尝试防止纹理拉伸。

着色重要性(ShadingImportance)

较高的值将在生成LOD时尽量减小对法线的更改。

组全局设置

可以使用以下设置来对组中的所有网格体进行更改。这些设置影响新网格体和现有网格体:

设置

说明

BasePercentTrianglesMult

进一步简化基础LOD。例如,如果该值设置为0.9,则组中所有网格体的基础LOD值将减少10%的三角形。

LODPercentTrianglesMult

进一步减少每个LOD的三角形。类似于BasePercentTrianglesMult,但不适用于基础LOD。

MaxDeviationBias

调整所有网格体在简化过程中使用的最大偏差。

融合阈值(WeldingThreshold)

调整所有网格体在简化过程中使用的融合阈值。

硬角阈值(HardAngleThreshold)

调整所有网格体在简化过程中使用的硬角阈值。

轮廓重要性(SilhouetteImportance)

调整所有网格体在简化过程中使用的轮廓重要性。

纹理重要性(TextureImportance)

调整所有网格体在简化过程中使用的纹理重要性。

着色重要性(ShadingImportance)

调整所有网格体在简化过程中使用的着色重要性。

UE4上的Simplygon

Simplygon

Simplygon用于为特定的像素分辨率自动生成可供游戏使用的细节层级模型(LOD),具体的方法是针对特定的屏幕大小,在不降低LOD质量的同时尽可能多地移除信息。Simplygon使用了一种专有的网格体简化方法,这种方法保留了LOD的几何完整性和LOD切换的视觉质量,并生成了可直接在三A游戏内部使用的自动LOD。

UE4利用Simplygon提供高质量的网格体简化,同时无需退出虚幻编辑器。开发人员可以快速简化网格体,生成LOD,并立即在贴图中看到结果。

Select Skin
Light
Dark

Welcome to the new Unreal Engine 4 Documentation site!

We're working on lots of new features including a feedback system so you can tell us how we are doing. It's not quite ready for use in the wild yet, so head over to the Documentation Feedback forum to tell us about this page or call out any issues you are encountering in the meantime.

We'll be sure to let you know when the new system is up and running.

Post Feedback