自动导入 FBX 和重定向

Automate FBX Import and Retargeting

提问人:Tom Auger 提问时间:11/16/2023 更新时间:11/16/2023 访问量:19

问:

我有 100 多个 FBX 动画需要导入并重新定位到Metahuman的身体和脸上。我正在使用 Reallusion (iClone) 的一些模板化资产来使重定向变得非常简单。事实上,只需单击一两次即可完成。

我试图做的是使用 Python 脚本或其他方式自动执行所有这些操作。

我的问题是问以下哪些可以自动化,哪些不能:

  1. 导入 FBX 并更改一些默认导入设置,例如取消选中“导入骨架网格体”复选框并选择现有资源作为我的目标网格体

  2. 删除导入的任何其他资源(当我导入 FBX 文件时,它会拆分为两个动画序列 - 一个 A-Pose 序列和实际动画序列。我可以删除 A-Pose 序列)

  3. 使用非常结构化的命名约定重命名动画序列资源

  4. 打开生成的“身体动画 FBX”的动画序列,选择“重定向源资源”(每次导入时,它始终是相同的资源),然后保存该序列

  5. 打开生成的面部动画 FBX 动画序列,然后选择一个预览姿势资源(每次导入时,它始终是相同的资源)并保存该序列

  6. 创建一个新的电影关卡序列,创建一个Metahuman动画轨道,删除控制绑定,并将身体动画应用于身体轨道,将面部动画应用于面部轨道

  7. 添加音轨并将相应的音频资产应用于该音轨,然后保存序列。

我必须执行上述步骤 100 次,虽然我可以批量导入,但所有其他小步骤都将被 1000 次切割而死亡......上述哪些内容可以自动化,最好的脚本环境是什么?

UI-自动化 虚幻引擎5

评论


答:

1赞 DigitalGreenTea 11/16/2023 #1

很难确切地告诉您可以自动化什么。但是,使用虚幻引擎的Python API和编辑器脚本实用程序插件,你可以自动执行其中的许多步骤。您可以创建一个编辑器实用程序小组件,为您提供一个处理导入和更改资源的界面。以下是截至撰写本文时的 API:UE 5.3 Unreal Python API。该 API 包括用于管理资产、资产编辑任务、处理动画、序列和声音的函数。

以下是关于使用虚幻引擎Python API的文档页面。由于您打算使用资产,因此在使用 Python 时请注意以下事项:

如果你需要在项目中使用资源,请始终使用虚幻Python API中的函数来完成。切勿使用 Python 内置的文件管理模块直接处理磁盘上的资源文件。例如,如果需要将资源移动到其他文件夹,请不要使用 os.rename 或 shutil.move 等 Python 函数。虚幻项目和资源包含内部内容引用,如果你不遵守此规则,可能会破坏这些引用。

相反,我们建议使用虚幻引擎。EditorAssetLibrary API 是 由 Editor Scripting Utilities 插件提供,或者 虚幻。虚幻Python API中内置的AssetTools类。

评论

0赞 Tom Auger 11/17/2023
感谢您的提醒,以及有关避免系统级文件操作的提醒。我对 API 感到沮丧,因为文档太稀疏了 - 你真的必须知道要使用什么类才能找到那些做你想要的类的相关属性或方法。除了您提供的文档链接(我现在已锁定此项目的 5.1)之外,是否有任何指南或“配方”可以帮助开发人员发现或理解他们应该查看哪些 API 方法来完成我列出的自动化任务?