FBX静态网格物体通道

2016年12月14日 17:11 0 点赞 0 评论 更新于 2025-11-21 21:01

概述

FBX导入通道对静态网格物体的支持,极大地简化了将网格物体从3D应用程序导入到虚幻引擎4的过程。在导入网格物体的同时,也会导入3D应用程序中应用于这些网格物体的材质所使用的贴图(仅漫反射贴图和法线贴图),并且会自动创建材质并应用到导入的网格物体上。

使用FBX导入静态网格物体支持的功能

  • 具有包含贴图的材质的静态网格物体
  • 自定义碰撞
  • 多个UV集合
  • 平滑组
  • 顶点颜色
  • LOD(细节层次)
  • 多个单独的静态网格物体(也可以在导入时组合到一个单独的网格物体中)

需要注意的是,目前当多个具有自定义碰撞的网格物体导入到一个单独的文件中时,仅导入第一个网格物体的碰撞。此外,虚幻4的FBX导入管线采用FBX 2013版本,在导出过程中使用不同的版本可能会导致不兼容。

选择3D软件

本文包含了关于Autodesk Maya和Autodesk 3ds Max的信息,您可以选择相应的内容创建工具,以查看相关信息。

  • Autodesk Maya
  • Autodesk 3ds Max

一般设置

通常,您可以使用任意工具和方法创建静态网格物体(Static Meshes)。为了确保所创建的网格物体能顺利导出并导入到虚幻编辑器中正常工作,在设置UVs、放置网格物体等方面需要考虑以下注意事项。

支点

在虚幻引擎中,网格物体的支点决定了执行任何变换(平移、旋转、缩放)时所围绕的点。从3D建模应用程序中导出网格物体时,支点总是位于原点处(0,0,0)。因此,最好在原点处创建网格物体,使原点位于网格物体的一个角落,这样在虚幻编辑器中对齐网格时能实现正确对齐。

三角化

虚幻引擎中的网格物体必须进行三角化处理,因为图形硬件仅处理三角形。以下是几种三角化网格物体的方法:

  • 仅使用三角形建模网格物体:这是最佳解决方案,能对最终结果实现最大程度的控制。
  • 在3D应用程序中三角化网格物体:是较好的解决方案,允许在导出之前进行整理和修改。
  • 让FBX导出器三角化网格物体:一般解决方案,不允许进行清除整理,但对于简单网格物体有效。
  • 让导入器三角化网格物体:同样是一般解决方案,不允许进行清除整理,但适用于简单网格物体。

手动在3D应用程序中三角化网格物体是最好的方式,这样可以控制边的方向和放置位置,自动三角化处理可能会导致意想不到的结果。

UV贴图坐标

虚幻引擎4中的FBX通道支持导入多个UV集合。对于静态网格物体,通常使用一组UV集合处理漫反射。设置使用FBX通道的静态网格物体的UV没有特殊要求。

创建法线贴图

在大部分建模应用程序中,可以通过创建低分辨率的渲染网格物体和高分辨率的细节网格物体来直接为网格物体创建法线贴图。高分辨率细节网格物体的几何体用于生成法线贴图的法线。Epic内部处理流程引入了XNormal,可在虚幻引擎4中渲染时生成更好的法线。关于此过程的更多详情,请参照法线贴图创建指南。

材质

在外部应用程序中建模并应用到网格物体上的材质会随网格物体一同导出并导入到虚幻编辑器中,这简化了导入过程,无需单独将贴图导入到UnrealEd中,也无需再创建及应用材质。使用FBX通道时,导入过程可自动完成这些操作。但这些材质需要以特殊方式设置,尤其是当网格物体具有多个材质或材质顺序很重要时(例如,对于一个角色模型,材质0用于躯体部分,材质1用于头部)。关于设置材质进行导出的完整细节,请参照FBX材质通道页面。

碰撞

简单的碰撞几何体对于优化游戏中的碰撞检测至关重要。虚幻引擎4在静态网格物体编辑器中提供了创建碰撞几何体的基本工具。但在某些情况下,最好在3D建模应用程序中创建自定义的碰撞几何体,然后随同渲染网格物体导出。这适用于任何不需要与具有开放区域或凹陷区域的网格物体进行碰撞的对象,例如:

  • Doorway(门口)网格物体
  • 具有窗框的墙壁
  • 形状奇怪的网格物体

导入器基于碰撞网格物体的名称识别碰撞网格物体,碰撞命名语法如下: | 网格物体前缀和名称 | 描述 | | ---- | ---- | | UBX[RenderMeshName]## | 在Max中使用Box(盒子)对象创建盒式碰撞,或在Maya中使用Cube(立方体)多边形图元创建盒式碰撞。不能移动顶点或使其变形,否则无法正常工作。 | | USP[RenderMeshName]## | 球体可使用Sphere(球体)对象类型创建,分段数为8段比较合适,它将转换为真正的球体,不能移动单独的顶点。 | | UCX[RenderMeshName]## | 凸面体可以是任何完全闭合的凸面3D图形,如盒子。可参考相关图表了解什么是凸面体及非凸面体。 |

警告和注意事项

  • RenderMeshName名称必须与3D应用程序中与碰撞网格物体相关联的渲染网格物体的名称一致。例如,若在3D应用程序中渲染网格物体命名为Tree_01,则相关的碰撞网格物体应命名为UCX_Tree_01。若需要为一个网格物体设置多个碰撞对象,可使用额外的修饰符扩展名称,如UCX_Tree_01_00、UCX_Tree_01_01等,所有这些碰撞对象都会与该网格物体相关联。
  • 目前球体仅应用于刚体碰撞、虚幻的零粗细踪迹(如武器),不应用于非零粗细踪迹(如玩家运动)。若网格物体不是均匀缩放的,球体和盒体碰撞将无法正常工作,一般建议创建UCX图元。
  • 设立碰撞对象后,可将图形及碰撞网格物体导入到同一个.FBX文件中。将.FBX文件导入到虚幻编辑器时,它会找到碰撞网格物体,将其从渲染网格物体上移除,并转换为碰撞模型。
  • 把一个非凸面网格物体分解为凸面图元是复杂的操作,可能产生不可预测的效果。另一种方法是在3D MAX或Maya中把碰撞模型分解为凸面块。
  • 当一个物体的碰撞由多个凸面的外壳定义时,这些外壳彼此不交叉能获得最佳效果。例如,若一个棒棒糖的碰撞通过两个凸面外壳定义,一个用于糖果,一个用于手棒,两者之间应留有空隙。

顶点颜色

可以通过使用FBX通道转换静态网格物体的顶点颜色,无需特殊设置。

导出网格物体

静态网格物体可以独立导出,也可以将多个网格物体导出到一个单独的FBX文件中。除非在导入时启用Combine Meshes(组合网格物体)设置,否则导入过程会将多个静态网格物体划分为目标包中的多个资源。

导出步骤如下:

  1. 在视口中选中要导出的网格物体。
  2. 在文件菜单中,选择“导出选中项”(若想导出场景中的所有内容,可选择“导出所有”)。
  3. 选择用于导入网格物体的FBX文件的位置和名称,并在FBX Export(FBX导出)对话框中设置适当的选项,然后点击“Export Selection”或“Export All”按钮创建包含网格物体的FBX文件。

上述几何体类目中的设置是将静态网格物体导出到虚幻引擎4的最基本要求。

导入网格物体

  1. 在内容浏览器中点击“new”按钮,在打开的文件浏览器中导航到要导入的文件并选中它。您可以在下拉菜单中选择“FBX static meshes(*.fbx)”过滤不需要的文件。
  2. 导入的资源的导入路径由导入时内容浏览器的当前位置决定。请确保在执行导入之前导航到适当的文件夹,也可在导入完成后将导入的资源拖拽到新文件夹中。
  3. 在Import(导入)对话框中选择适当的设置,大部分情况下默认设置即可满足需求。请参照FBX导入对话框部分获取关于这些设置的完整信息。
  4. 点击按钮导入网格物体和LOD。若导入过程成功,最终的网格物体、材质和贴图将显示在内容浏览器中。

需要注意的是,尽管可以随同静态网格物体导入贴图和材质,但仅会自动连接Color(颜色)和Normal(法线)通道(假设在Max/Maya中使用了支持的材质),Specular(高光)贴图会被导入但不会连接,其他贴图甚至不会导入,如maya材质的Diffuse(漫反射)插槽中的Ambient Occlusion(环境遮挡)贴图。因此,最好检查材质,连接尚未连接的贴图,并检查未导入的贴图,可通过双击新材质并将可用材质连接到适当输入上。通过在静态网格物体编辑器中查看导入的网格物体并启用显示碰撞功能,可判断导入过程是否符合预期。

另外,您也可以在Windows中点击并拖拽一个FBX文件到内容浏览器内,这将调出一个导入对话框。

静态网格物体LOD

为了限制随着骨架网格物体与相机距离变远而产生的性能影响,游戏中可使用骨架网格物体的细节层次(LODs)。一般来说,每个细节层次级别的三角形数量会减少,可能会应用更简单的材质。可以使用FBX通道导入/导出这些LOD网格物体。

LOD设置

通常,LODs通过创建不同复杂程度的模型来处理,从具有完整细节的基本网格物体到最低细节的LOD网格物体。这些LOD网格物体应与相同的支点对齐并占用相同的空间,每个LOD网格物体可分配完全不同的材质,包括不同数量的材质。这意味着基本网格物体可使用多个材质在近距离产生理想的细节质量,而低细节网格物体可使用一个单独的材质。

具体操作步骤如下:

  1. 选中所有网格物体(基础网格物体和LODs),按照从基础网格物体到最低级LOD的顺序选择。按顺序选择很重要,以便按正确顺序添加复杂度。
  2. 从Edit(编辑)菜单中选择“Level of Detail(细节层次级别) > Group(分组)”命令。此时所有的网格物体应分组到LOD Group(LOD组)下。

导出LOD

要导出静态网格物体LOD:

  1. 在Maya中,选择LOD组和任何碰撞几何体。
  2. 遵循导出基本网格物体的步骤(如前面导出网格物体部分所述),确保在FBX导入器属性中启用动画导出功能,这是导出LODs所需的设置。

导入LOD

  1. 在内容浏览器中,静态网格物体LODs可随同基础网格物体一同导入,也可通过AnimSet编辑器单独导入。
  2. 在内容浏览器中点击按钮,在打开的文件浏览器中导航到要导入的文件并选中它,可在下拉菜单中选择“FBX static meshes(*.fbx)”过滤不需要的文件。
  3. 导入路径由导入时内容浏览器的当前位置决定,确保导航到适当的文件夹,也可在导入完成后拖拽到新文件夹。
  4. 在Import(导入)对话框中选择适当的设置,默认设置通常足够,确保启用“Import LODs(导入LOD)”项。导入的网格物体的名称将遵循默认的命名规则,请参照FBX导入对话框部分获取完整信息。
  5. 点击按钮导入网格物体和LOD。若导入成功,最终的网格物体、材质和贴图将显示在内容浏览器中。
  6. 尽管可随同静态网格物体导入贴图和材质,但仅自动连接Color(颜色)和Normal(法线)通道,Specular(高光)贴图导入但不连接,其他贴图可能不导入,需检查材质并连接未连接的贴图。通过在静态网格物体编辑器中查看导入的网格物体,可使用工具条最右侧的“Auto LOD”下拉菜单切换LOD。

作者信息

孟子菇凉

孟子菇凉

共发布了 3994 篇文章