将Datasmith与Rhino结合使用

介绍在你使用Datasmith将场景从McNeel Rhinoceros 3D导入时才适用的特殊注意事项。

Choose your operating system:

Windows

macOS

Linux

本页面介绍 Datasmith 如何将场景从 McNeel Rhinoceros (Rhino) 导入 虚幻引擎4(UE4) 。导入过程遵循 Datasmith概述 关于Datasmith导入流程 文档中所述的基本流程,但增加了Rhino专有的一些特殊转译行为。如果你打算使用Datasmith将场景从Rhino导入到虚幻编辑器中,阅读此页面可以帮助你了解如何转译场景,以及你如何在虚幻编辑器中处理结果。

Rhino工作流

导出工作流

Datasmith将使用适用于Rhino的导出工作流。这意味着,要使用Datasmith将你的Rhino内容导入UE4,你需要:

  1. 安装适用于Rhino的Datasmith导出器插件。请参阅 安装适用于Rhino的Datasmith导出器

  2. 使用另存为(Save As)或导出(Export)过程导出Rhino内容。请参阅 从Rhino导出Datasmith内容

  3. 使用虚幻编辑器工具栏中提供的Datasmith导入程序导入你的 .udatasmith 文件。请参阅 将Datasmith内容导入虚幻引擎4

DirectLink工作流

要在UE4中实时预览对Rhino场景的更改,你可以在两者之间设置Datasmith DirectLink。这样,你每次想要更改时,都无需手动将整个场景重新导入到UE4中。请参阅 使用Datasmith Direct Link 文档,了解更多信息。

要了解有关其他类型Datasmith工作流的更多信息,请参阅 Datasmith支持的软件和文件类型

使用Datasmith工具栏

安装Datasmith插件会在Rhino中添加可停靠的工具栏。

Datasmith工具栏

Rhino中的Datasmith工具栏

在Rhino的命令行中输入相关命令,你可以触发相同的操作。

要查看Datasmith的所有命令,请在Rhino中打开 插件管理器(Plugin Manager) 窗口(在命令行中运行PlugInManager),然后选择 Datasmith导出器(Datasmith Exporter) 插件。

按钮

说明

命令行

同步(Synchronize)

通过直接链接推送所选模型。

要快速选择场景中的所有内容,请按 Ctrl + A (Windows)或 Cmd + A (Mac)。

DatasmithDirectLinkSync

连接(Connections)

启动连接状态(Connection Status)对话框。

DatasmithDirectLinkConnections

导出3D视图(Export 3D View)

启动现有的 .udatasmith 导出程序,将 .udatasmith 文件保存到磁盘。

DatasmithExport

消息(Messages)

启动消息和日志记录窗口。这对于报告错误、丢失纹理和其他信息很有用。

DatasmithMessages

安装插件后,Rhino会在界面中添加Datasmith工具栏。如果你卸载插件,此工具栏将自动删除。对于通过从 选项(Options) 菜单的 工具栏(Toolbar) 分段拖动而添加到默认工具栏中的Datasmith工具栏,它的所有副本都不会被卸载过程删除,需要手动删除。

将几何体转换为静态网格体

Datasmith将为Rhino文件中每个单独的网格体、实体或表面创建单独的静态网格体资产。如果对象在Rhino的 属性(Properties) 面板中设置了 名称(Name) 属性(如下图左侧所示),Datasmith会将该名称用于静态网格体资产(如下图右侧所示))。Datasmith在关卡中创建的引用该静态网格体资产的所有Actor也使用相同的名称。

实例化

当Datasmith在你的Rhino场景中检测到同一个块有多个实例时,它只会为该图块中的几何体创建一组静态网格体资产。然后,它将这些静态网格体的多个实例放置到场景中。这通常更适合项目的运行时内存要求和性能。它还可以更轻松地管理 内容浏览器(Content Browser) 中的静态网格体数量。

如若可行,我们建议充分利用此功能,将场景中的所有重复元素(例如门窗或椅子)在Rhino中制作成图块。

有关细节,请参阅 Rhino文档

曲面细分和渲染网格体

虚幻引擎始终使用三角形网格体渲染对象。如果Rhino文件中有定义为参数表面或NURBS的对象,则需要将这些表面变换或曲面细分为三角形网格体。Datasmith将使用位于 文件(File)>属性(Properties)>文档属性(Document Properties)| 网格体(Mesh) 中的Rhino曲面细分选项:

名称

说明

锯齿状,速度更快(Jagged and Faster)

创建较低密度的网格体,以牺牲一些质量为代价快速给对象着色。

更流畅,速度更慢(Smoother and Slower)

创建密度较高的网格体,以牺牲速度为代价更准确地给对象着色。

自定义(Custom)

允许更好地控制创建的网格体。密度滑块将大致控制从NURBS表面创建的多边形的密度和数量。点击细节控制按钮可以使用其他功能按钮。

有关在Rhino中使用自定义渲染选项的更多信息,请参阅Rhino文档中的 多边形网格体细节选项

网格体修饰符

Rhino支持多种更改网格体外观的方法,无需直接编辑网格体。

当你使用Datasmith从Rhino导出数据时,以下网格体修饰符会保留:

三角形朝向

导出到Datasmith时,表面会保持方向。在Rhino中可视化表面方向的方法是将背面的颜色设置为亮绿色。具体操作为,打开 文档属性(Document Properties) ,并选择 视图(View)>显示模式(Display Modes)>已渲染(Rendered) 。在该菜单的 着色设置(Shading Settings) 中,会出现 背面设置(Backface settings) 的选项。最后,将 所有背面采用的单色(Single color for all backfaces) 颜色更改为亮绿色:

你可以通过这种方式在导出到Datasmith之前检查朝向是否正确:

朝后

朝前

有关完整的讨论和推荐解决方案,请参阅 关于Datasmith导入流程

Rhino材质

对于Datasmith在你的Rhino场景中找到的每种不同的表面材质,它会在UE4中创建单独的同名 材质资产 。然后,将每个材质放置在Datasmith场景资产旁边的 Materials 文件夹中。

  • Materials 文件夹中的每个材质都是 材质实例 ,它将公开Rhino文件中设置的属性:颜色值、纹理贴图等。你可以更改此类公开属性,以便修改材质应用到表面时的外观。Datasmith会将这些材质资产指定给它创建的静态网格体资产,以便按照它们在Rhino渲染中显示的相同方式,对它们的表面进行着色。 Datasmith只将Rhino对象的材质导入到虚幻引擎中。它将完全忽略Rhino显示颜色。这样你导入到虚幻引擎的视觉效果会与在Rhino中渲染的效果尽可能一致。

  • Datasmith还在 Materials/Master 文件夹中创建了一组父材质。其中每个父材质都是Materials文件夹中至少一个材质资产的父级。如果你想要更好地控制定义了每个表面显示方式的材质图表,向子实例公开其他参数,或更改渲染期间考虑公开参数的方式,你可以编辑这些父材质。 请注意,更改父材质也会自动更改继承自此父级的所有材质实例。在修改父材质前,请考虑先复制父材质,然后更改副本,最后通过将材质副本设为父材质来更新特定材质实例。相关细节,请参阅 修改Datasmith主材质

命名视图

Rhino中的 命名视图 相当于虚幻引擎中的摄像机。当通过Datasmith导入到虚幻引擎中时,每个命名视图都成为场景中单独的 CineCameraActor

Rhino元数据

属性用户文本(Attribute User Text) 菜单中的数据输入将导出为Datasmith元数据:

数据作为键值对输入表中。有关使用属性用户文本的更多信息,请参阅[Rhino 文档中的 属性用户文本

构建Datasmith场景层级

Datasmith将根据你的Rhino模型构建其场景层级,如下所示:

  • 对于Rhino场景中的每个图层,Datasmith将在UE4中创建Actor,作为该层上所有对象的父级。请注意,与它在虚幻引擎的图层(Layers)面板中创建的图层不同,此Actor层级并未扁平化。Actor的嵌套与Rhino场景中的图层完全相同。

  • 在代表每个图层的Actor下,对应层上的每个实例图块都由另一个Actor表示。

  • 最后,代表每个图层和每个块的Actor包含代表构成该图层或图块的实际几何对象的静态网格体Actor。Rhino中的点在虚幻引擎中表示为空的Actor。这种方式将保留点

  • Rhino中的组不会影响UE4场景层级,因为它们被视为选择助手,而不是场景层级中的重要元素。

例如,在下图中,你可以看到Rhino层级中的每个图层在虚幻编辑器中都有对应的Actor。像光源>转向灯这样的图层,在Rhino中只包含几何对象,在虚幻编辑器中只包含相应的静态网格体Actor。Rhino中的光源图层还包含两个图块实例,分别命名为left_headlight和right_headlight。其中每一个都由虚幻编辑器中的嵌套Actor表示,该Actor又包含构成这些图块的几何对象。

此页面上使用的模型由 Turbosquid 用户 tomashorin.design 提供。

欢迎帮助改进虚幻引擎文档!请告诉我们该如何更好地为您服务。
填写问卷调查
取消