Choose your operating system:
Windows
macOS
Linux
虚幻引擎将通过USD舞台Actor和USD舞台工作流程提供对USD的支持。在本快速入门指南中,你将:
-
创建USD舞台Actor。
-
使用USD舞台窗口编辑属性。
-
为USD舞台Actor添加新图元。
-
将数据写回USD文件。
-
使用Sequencer访问USD动画。
-
将资产导入虚幻引擎项目。
在开始之前,你需要在项目中启用 USD导入器(USD Importer) 插件。请参阅 启用USD导入插件 ,了解更多信息。
先决条件和准备工作主题
为了理解和使用本页中提到的内容,请确保你熟悉以下主题:
本教程使用皮克斯的厨房套装USD文件。皮克斯维护了小型的USD示例文件库,用于学习和演示。点击 此处 下载厨房套装和其他示例。
1. 创建USD舞台Actor
打开USD舞台(USD Stage)窗口,开始处理USD内容。
-
在虚幻编辑器中,点击 窗口(Window) 菜单并选择 USD舞台(USD Stage) 。
-
在 USD舞台编辑器(USD Stage Editor) 窗口的菜单栏中,选择 文件(File)>打开(Open) 并找到USD文件。
层级分段将填充从你的USD文件中读取的场景层级。
你在虚幻引擎中打开的每个USD文件都需要自己的 USD舞台 Actor,用作USD数据的锚点。上述过程会自动将USD舞台Actor添加到你的关卡。
你也可以使用 放置Actor(Place Actors) 面板添加USD舞台Actor,并使用 细节(Details) 面板中的 根层(Root Layer) 选项为其选择关联的USD文件。
2. 使用USD舞台窗口编辑属性
你可以使用USD舞台编辑器(USD Stage Editor)窗口的属性(Properties)分段,编辑你的USD舞台Actor和图元的属性。
更改USD舞台Actor的UpAxis
-
点击USD舞台(USD Stage)窗口中层级顶部的 舞台(Stage) 。
-
在属性(Properties)分段中,找到 upAxis 属性并打开下拉菜单。选择新轴来代表你的USD数据。
更改图元的变体
-
在USD舞台编辑(USD Stage Editor)中,打开 选项(Options)>选择(Selection) 菜单并启用 与编辑器同步(Synchronize with Editor) 。这会同步你在虚幻引擎关卡和USD舞台编辑器窗口之间的选择。
-
在层级分段,点击 Kitchen_Set 旁边的下拉箭头。然后,点击 Props_grp 旁边的下拉箭头,显示场景中的道具。
-
现在,展开 DiningTable_grp 条目,显示餐桌和椅子的各个图元。橙色亮显的道具表示它们是 复合弧 ,你可以右键点击所有的图元,从而为其添加引用(或清除引用)。其他右键点击操作包括添加或删除图元的功能,以及切换、加载或卸载有效负载的功能。
-
选择 ChairB_1 并查看属性(Properties)分段中的属性。你可以在此处编辑以下内容:
属性 |
说明 |
---|---|
名称(name) |
显示所选资产的名称。 |
路径(path) |
显示所选资产的路径。 |
种类 |
定义所选资产的类型。
|
目的 |
设置要加载的初始目的。将USD舞台Actor和整型用作输入。 选项包括:
|
可视性 |
设置要加载的初始目的。将USD舞台Actor和整型用作输入。 选项包括:
|
xformOp:rotateZ |
定义所选资产的Z旋转。 |
xformOp:translate |
定义资产的X、Y和Z位置。 |
xformOpOrder |
显示变换操作应用于资产的顺序。 |
modelingVariant |
定义在场景中显示的当前变体。仅当资产具有一个或多个变体时才可见。 |
参考(References) |
显示附加到此图元的所有参考。 |
-
此场景中的椅子有两个变体, ChairA 和 ChairB 。选择 ChairB_1 ,找到属性的 变体(Variants) 分段,并将 modelingVariant 更改为 ChairA 。此操作会自动将场景中使用的椅子网格体与新变体交换。
3. 向USD舞台Actor添加新图元
使用右键点击菜单在层级中添加或删除图元。添加后,可以在属性(Properties)分段中编辑属性。
在厨房套装中添加一把新椅子
-
右键点击层级中的 DiningTable_grp 条目,然后从菜单中选择 添加图元(Add Prim) 。将此新图元命名为 ChairB_3 。
-
点击层级中的新图元。在 细节(Details) 分段,将其 种类 更改为 组件 。
-
引用椅子USD文件,将其带入舞台。右键点击层级中的 ChairB_3 ,然后选择 添加引用(Add Reference) 。找到厨房套装文件的位置。打开 assets > Chair 文件夹并选择 Chair.usd 。点击 打开(Open) 按钮。
-
你的新图元现在将引用椅子USD数据并显示 ChairS 变体。它应该位于关卡的原点。在层级中选择 ChairB_3 ,并将modelingVariant更改为 ChairB 。
-
点击视口中的新椅子,并使用变换工具将椅子放置在桌子附近。
4. 将数据写回你的USD文件
使用USD舞台Actor所做的更改可以使用 保存(Save) 选项写回你的USD文件。
要将这些更改写入你的USD文件,请在USD舞台(USD Stage)窗口中打开 文件(File) 菜单并选择 保存(Save) 选项。
5. 使用Sequencer访问USD动画
访问USD动画
存储在USD文件中的动画可以从USD舞台Actor生成的专用关卡序列中访问。
-
在 世界大纲视图(World Outliner) 中,找到 USDStageActor 并从列表中选择它。
-
在 细节(Details) 面板的 USD 分段,找到 关卡序列(Level Sequence) 并双击资产打开Sequencer。
有关Sequencer用法的更多信息,请参阅 过场动画和Sequencer 。
对椅子进行动画处理
要将动画添加到你在第三步中创建的新图元 ChairB_3 ,请创建新的USD文件,并将其作为图层添加到USD舞台Actor(USD Stage Actor)。
-
新动画应该添加到新图层。创建新的USD层会创建新的USD文件。在USD舞台(USD Stage)窗口的 图层(Layers) 分段,右键点击 kitchen_set.usd 图层并选择 新增(Add New) 。
将此新文件另存为 myanim.usda 。
-
USD图层使用 LIVRPS结构 来确定图层如何影响场景的最终构图。若要使动画影响厨房套装,包含该动画的图层在图层结构中必须高于包含图元的场景。在 放置Actor(Place Actors) 面板中搜索 USD Stage Actor 并将新副本拖到关卡中。
-
在世界大纲视图(World Outliner)中选择USD舞台Actor(USD Stage Actor),然后使用USD舞台(USD Stage)窗口中的 文件(File) 菜单,打开你的 myanim.usda 文件。
-
右键点击 myanim.usda 图层并选择 添加现有图层(Add Existing) 选项,将厨房套装添加回图层堆栈中。在文件(File)窗口中,找到你的 kitchen_set.usd 文件并点击 打开(Open) 。
-
在添加动画之前,USD舞台需要知道动画将持续多长时间。点击层级中的 舞台(Stage) 图元。在属性(Properties)分段,将 endTimeCode 和 endFrame 值更改为 48 。
-
在 世界大纲视图(World Outliner) 中选择新的USD舞台Actor(USD Stage Actor),然后在 细节(Details) 面板中打开 关卡序列(Level Sequence) 。
-
在Sequencer面板中,点击 + 轨道(+ Track) 按钮,并从 Actor到Sequencer(Actor to Sequencer) 子菜单中选择你想要制作动画的Actor。
-
点击新轨道上的 添加(+)(Add (+)) 按钮并创建新的 变换(Transform) 轨道。
-
对椅子进行原地旋转的动画处理。有关在Sequencer中使用轨道的更多信息,请参阅 轨道 。
-
在USD舞台(USD Stage)窗口中使用 文件(File)> 保存(Save) 将数据写回USD。
6. 将资产导入虚幻引擎项目。
显示在USD存储Actor(USD Stage Actor)上的Actor,可以通过以下任一导入选项导入到虚幻编辑器的内容浏览器中。
-
使用 文件(File)> 导入到关卡中(Import Into Level) 。该流程将导入资产(静态网格体、骨骼网格体、材质和纹理等等)和Actor。
-
使用 内容浏览器(Content Browser) 中的 添加/导入(Add/Import) 按钮。该流程仅导入资产。
-
将文件拖放到 内容浏览器(Content Browser) 中。该流程仅导入资产。
-
使用USD舞台编辑器(USD Stage Editor)窗口中的 操作(Action)> 导入(Import) 选项。此过程将导入USD舞台Actor上的所有内容,并适用于资产和Actor。导入过程完成后,USD舞台上的资产将替换为 内容浏览器 中的新Actor。
将厨房套装导入虚幻引擎
-
在USD舞台(USD Stage)窗口中打开厨房套装(Kitchen Set)后,打开 操作(Actions) 菜单并选择 导入(Import) 。
-
选择存储导入资产的位置。在本例中,导入厨房套装将在所选位置创建名为 Kitchen_set 的文件夹。材质和静态网格体将保存在单独的子文件夹中。