Blender 插件之 Blender for UE4

时间:2024-03-19 16:12:06

Blender 插件之 Blender for UE4

https://zhuanlan.zhihu.com/p/146665394

 

Blender 插件之 Blender for UE4

Blender 插件之 Blender for UE4

WeArt微创意

腾讯科技有限公司 游戏美术

 

 

怎么使用?

使用Blender处理虚幻引擎4的对象包可能很繁琐。这就是为什么我创建加载项:“ Blender for UnrealEngine”的原因。通过允许您同时导出场景的所有资产,它简化了从Blender导出到Unreal Engine 4的方法。它甚至可以自动将它们分配到与虚幻引擎4管道相关的适当树形结构中!套接字和碰撞形状直接在Blender中创建。您可以精确选择需要导出的动画。它包括一个错误检查器,以防止潜在的问题并生成python脚本,可在Unreal Engine 4中使用该脚本将Blender项目中的Camera Objects和Animations导入Unreal Engine 4中的Level Level。所有Camera Objects及其动画将作为摄影机Acter。

  • Blender 中如何导出资源
  • 如何将资源从Blender导入UE4
  • 插件的下载和安装

(一)Blender中如何导出资源

我们将看到如何准备要出口的资产。

  1. 在3D视图(T)中打开“工具”面板,将其放大,打开“虚幻引擎4”主面板,然后转到“对象属性”面板。

Blender 插件之 Blender for UE4

  1. 选择要导出的资产,然后将“导出类型”属性设置为“导出递归”。现在,对您要导出的所有对象重复该任务:
  • 具有此属性的每个对象将连同其所有子对象一起导出到Fbx文件中。如果您不想导出子级,则在子级的“对象属性”中为“导出类型”设置“未导出”,否则保留“自动”。
  • 默认情况下,Fbx文件的场景中心将等于搅拌器中对象的原点位置。因此,对象在Blender场景中的位置无关紧要。进入“高级对象属性面板”进行更改。
  • 对于骨架网格物体,需要将“骨架”的“导出”类型设置为“导出递归”。

Blender 插件之 Blender for UE4

3.在导出面板中,单击“导出为UnrealEngine 4”按钮。

像静态网格物体一样导出集合

与集合一起导出只会像静态网格物体一样导出集合。

  1. 在3D视图(T)中打开“工具”面板,将其放大,打开“虚幻引擎4”主面板,然后转到“收藏属性”面板。
  2. 单击更新按钮,然后选择要导出的集合。
  3. 在导出面板中,单击“导出为UnrealEngine 4”按钮。

Blender 插件之 Blender for UE4

 

碰撞和Sockets

可以直接在搅拌器中为资产创建碰撞(StaticMesh)和套接字(Static / SkeletalMesh)。

  1. 创建一个新的网格物体,它将成为您的对撞机形状(对于套接字,请创建一个Empty对象)。
  • 资产可以包含多个对撞机形状,但是每个对撞机必须使用不同的对象。
  • 选择您的对撞机形状或为空,最后选择所有者对象。
  • 对于SkeletalMesh,在PoseMode中选择Empty(s),然后选择所有者骨骼。
  • 打开“碰撞和套接字”面板,然后单击相应的按钮以将选择内容转换为对撞机或套接字(已转换的对撞机为绿色,现在是该资产的子代)。

Blender 插件之 Blender for UE4

  • 如果“未导出”子项包含对撞机,则该对撞机将不会作为子项导出。
  • 如果更改包含对撞机的对象的名称,则需要单击“检查潜在错误”按钮以更新所有对撞机的层次结构名称。

Blender 插件之 Blender for UE4

注意:插件将在X上以+90度导出套接字。插件优先选项中有一个选项

Blender 插件之 Blender for UE4

 

LOD

这仅适用于通过UnrealEnginePython导入的StaticMesh。

  1. 选择要导出的资产,然后将“导出类型”属性设置为“导出递归”。
  2. 现在,对所有LOD重复该任务,但还要选中“是否导出为LOD?”框。
  3. 选择您的主要资产,然后打开面板“对象导入属性”。
  4. 将LOD1,LOD2,...设置为所需的LOD。

Blender 插件之 Blender for UE4

动画

当然可以用骨骼导出动画。您可以使用“摄影表”窗口中的“动作编辑器”在一个场景中包含多个动画,也可以使用NonLinearAnimation。对于动作:

  1. 选择您的SkeletalMesh并打开“动画属性”面板(不要忘记将“骨架”设置为“导出递归”)。
  2. 在“摄影表”窗口中,选择“动作编辑器”模式并在动作上创建动画(/!\不要忘记使用假用户不丢失动画!)
  • 您可以将驱动程序用于变形目标。

Blender 插件之 Blender for UE4

  1. 在“动画”面板的“属性”中,您可以设置骨骼网格物体的动画属性,例如“动画时间”,“质量”,并选择要导出的动画。

请注意,如果您的动画不是一个循环,则将“起始帧的偏移”设置为0,默认情况下将“起始帧的偏移”设置为1,因为在动画循环中,虚幻将播放第一帧和最后一帧,因此两次播放相同。

Blender 插件之 Blender for UE4

对于NLA:

  1. 选择您的SkeletalMesh并打开“动画属性”面板(不要忘记将“骨架”设置为“导出递归”)
  2. 在“动画”面板的“属性”中,可以设置骨骼网格物体的动画属性,例如“动画时间”,“质量”。
  3. 如果只想将NLAnimation设置为“导出为未导出”,请选中“导出具有所需名称的Nla”框。

导出动画代理(在下一版本中)

如果要使用代理导出骨骼网格物体的动画,则应在代理上设置“导出递归”。勾选“The armature is a Proxy” 并选择子代理。

Blender 插件之 Blender for UE4

Alembic动画

Alembic导出可能要花费很多时间。

  1. 选择要导出的资产(带有子项或网格的“ Armature”)。
  2. 将导出类型属性设置为“导出递归”。
  3. 选中导出为“ Alembic动画”框。
  4. 不要忘记选中要导出的资产类型中的Alembic动画框。确保动画至少播放一次以进行烘焙缓存。您还可以使用命令“ bpy.ops.ptcache.bake_all()”来烘焙物理。

Blender 插件之 Blender for UE4

材质

材质未导入,您必须在虚幻引擎中创建它们。

  1. 在虚幻引擎中创建材质。
  2. 在Blender中用相同的名称创建基本材料。
  3. 如果使用导入脚本,则将“物料搜索位置”设置为所需的搜索位置。
  4. 如果不使用导入脚本,则需要在导入时将“材质”>“虚幻中的搜索位置”设置为所需的位置。

Blender 插件之 Blender for UE4

骨骼和根骨骼

搅拌器将电枢像根骨头一样输出。要删除此骨骼,请在“插件偏好设置”中选中“删除根骨骼”框。如果您不想删除它,则可以设置所需的根骨骼名称。如果使用的名称是“ Armature”,虚幻引擎将删除根骨骼。您也可以设置根骨骼比例。如果修改此设置,则必须导入动画。

Blender 插件之 Blender for UE4

Sine v0.2.6.1单位比例不会更改虚幻中导出的网格的比例。如果您使用0.01的单位比例,我建议使用2.5版https://github.com/xavier150/Blender-For-UnrealEngine-Addons/releases/tag/v.0.2.5

Sine v0.2.7插件适用于所有工作流程。您可以使用Unreal单位比例:0.01与Blender Unit比例:1.00或自定义单位比例,具体取决于您的生产。

示例文件:AssetsExample_BlenderSize.blend | AssetsExample_UnrealSize.blend

这由插件自动管理,但是如果需要,您可以选择在出口时如何缩放装备。注意:如果您想优化导出时间,我建议使用虚幻单位比例为0.01

UV

您可以在虚幻引擎中校正极端紫外线以获得更好的质量。如果在Blender中使用UVProject修改器,这将很有用。

Blender 插件之 Blender for UE4

 

命名规则

默认情况下,术语是与虚幻引擎管道相关联的定义,但是如果您使用其他管道,则可以对其进行更改。默认情况下,所有资产都导出到Blender(.blend)的位置,可以根据需要进行更改。根据资产,您还可以在“对象属性”面板>“子文件夹”中设置一个子文件夹。术语还包含脚本的名称和其他文件。

 

Blender 插件之 Blender for UE4

 

插件设置

不要忘记查看“插件偏好设置”。

Blender 插件之 Blender for UE4

导出进程

现在我们可以导出所有资产。

  1. 打开导出面板。
  • 您可以选择要导出的对象的类型。
  • 单击检查潜在错误按钮。
  • 这将更新所有层次结构名称,更正错误的属性并显示潜在的错误。

Blender 插件之 Blender for UE4

3.现在单击“导出为UnrealEngine 4”按钮。-动画,姿势和相机可能需要很长时间才能导出。-有关更多信息,请参见Blender系统控制台。-在每次新导出时,旧文件将被覆盖。

Blender 插件之 Blender for UE4

4.默认情况下,文件放置在ExportedFbx文件夹中blender(.blend)文件的位置。

(二)如何将资源从Blender导入UE4

根据对象类型的不同,导入参数也不相同。

根据对象类型,导入参数不同。

  • 对于静态网格物体资产,您需要勾选CombineMeshs。对于静态网格物体资产,您需要标记组合
  • 对于骨骼网格物体资产,如果您使用形状关键点,则需要勾选导入变形目标。对于骨骼网格物体,您需要插入转换变形目标,如果您使用形状键
  • 动画资产应在骨架网格后进口。动画资产应该导入后的骨骼网格
  • 对于动画资产,请取消选中“导入网格”,然后在“骨架”中选择“骨架”。对于动画资产取消插入引入网格并在骷髅中选择你的骷髅

Blender 插件之 Blender for UE4

  • 对于Alembic动画资产,请勾选“合并网格”。对于Alembic动画资产,合并网格
  • 将ImportType设置为Skeletal。将ImportType设置为Skeletal。
  • 将FlipU 设置为False,将 FlipV 设置为 True。将flipboard设置为False,将flipboard设置为True
  • 设置比例为100,-100,100(xyz)。设置比例为100,-100,100(xyz)
  • 将“旋转”设置为90,0,0(xyz)。设置旋转为90,0,0(xyz)
    注意:Alembic的导出和导入可能会花费很多时间。注意:Alembic进出口可能需要很长时间

Blender 插件之 Blender for UE4

Alembic示例: 阿莱姆比克的例子:

Blender 插件之 Blender for UE4

在虚幻引擎Vania python中导入资产

  1. 在Blender中,打开面板“导入脚本”,然后输入要导入资产的位置。
  2. 检查潜在的错误并处理导出。
  3. 打开面板剪贴板复制,然后单击适当的按钮以轻松复制用于导入资产的命令。
  4. 在虚幻引擎中打开输出日志。窗口>开发人员工具>输出日志
  5. 在输出日志中,运行复制的命令:
    1. py "C:\[Folder]\ImportSequencerScript.py" 与您的脚本文件位置。
    2. 默认情况下,文件ImportAssetScript.py放置在文件夹ExportedFbx \中的搅拌器文件的位置。

使用UnrealEnginePython在Unreal引擎中导入资产

  1. 在Blender中,打开面板“导入脚本”,然后输入要导入资产的位置。
  2. 检查潜在的错误并处理导出。
  3. 打开面板剪贴板复制,然后单击适当的按钮以轻松复制用于导入资产的命令。
  4. 安装UnrealEnginePython:https : //http://github.com/20tab/UnrealEnginePython
  5. 在虚幻引擎中打开Python控制台。窗口>开发人员工具> Python控制台
  6. 在Python控制台中,运行复制的命令:
    1. unreal_engine.py_exec(r"C:\[Folder]\ImportSequencerScript.py") 与您的脚本文件位置。
    2. 默认情况下,文件ImportAssetScript.py放置在文件夹ExportedFbx \中的搅拌器文件的位置。

Blender 插件之 Blender for UE4

范例影片:范例影片:https : //youtu.be/FOFBfiE5EEQ

将Blender相机导入UE Vania python

可以通过摄像机剪切管理和动画在特殊轨道(如FOV(FocalLength),光圈(F档)和焦距)上将完整的序列从搅拌机导入到虚幻中。相机剪辑是通过标记https://docs.blender.org/manual/en/dev/animation/markers.html#bind-camera-to-marker生成的Complete sequences can be imported from the blender into the illusion on special tracks (such as Fov (FocalLength) , aperture (f-stop) , and focal length) via camera clipping management and animation. Camera clips are generated by https://docs.blender.org/manual/en/dev/animation/markers.html#bind-camera-to-marker

  1. 在Blender中,打开面板Import Script并使用名称定义要将定序器导入Unreal Engine的位置。在 Blender 中打开面板导入脚本并定义你想导入序列引擎的位置。
  2. 选择场景摄像机,然后在“导出递归”上设置“导出类型”属性。现在,对所有摄像机重复该任务。选择你的场景相机,并在“导出递归”上设置导出类型属性。现在对所有的相机重复这个任务。
  3. 检查潜在的错误并处理导出。检查潜在的错误并处理导出。
  4. 打开面板剪贴板复制,然后单击适当的按钮以轻松复制用于导入音序器的命令。打开面板剪贴板复制,然后点击相应的按钮,轻松复制导入音序器的命令。
  5. 在虚幻引擎中打开输出日志。窗口>开发人员工具>输出日志在虚幻引擎中打开输出日志
  6. 在输出日志中,运行以下命令:在输出日志中运行以下命令:
  • py "C:\[Folder]\ImportSequencerScript.py" 和您的ImportSequencerScript文件位置。
  • 默认情况下,文件ImportAssetScript.py放置在文件夹ExportedFbx \中的搅拌器文件的位置。

使用UnrealEnginePython将Blender相机导入Unreal Sequencer

 

可以通过摄像机剪切管理和动画在特殊轨道(如FOV(FocalLength),光圈(F档)和焦距)上将完整的序列从搅拌机导入到虚幻中。相机剪辑是通过标记https://docs.blender.org/manual/en/dev/animation/markers.html#bind-camera-to-marker生成的

  1. 在Blender中,打开面板Import Script并使用名称定义要将定序器导入Unreal Engine的位置。
  2. 选择场景摄像机,然后在“导出递归”上设置“导出类型”属性。现在,对所有摄像机重复该任务。
  3. 检查潜在的错误并处理导出。
  4. 打开面板剪贴板复制,然后单击适当的按钮以轻松复制用于导入音序器的命令。
  5. 安装UnrealEnginePython:https : //http://github.com/20tab/UnrealEnginePython
  6. 在虚幻引擎中打开Python控制台。窗口>开发人员工具> Python控制台
  7. 在Python控制台中,运行以下命令:
  • unreal_engine.py_exec(r'C:\[Folder]\ImportSequencerScript.py') 和您的ImportSequencerScript文件位置。
  • 默认情况下,文件ImportAssetScript.py放置在文件夹ExportedFbx \中的搅拌器文件的位置。
  • 如果重新导入序列,它将替换之前导入的序列,否则将在其旁边导入另一个名称。

Blender 插件之 Blender for UE4

Blender 插件之 Blender for UE4

范例影片:范例影片:https : //youtu.be/0PQlN-y2h2Q

使用虚幻的Vania python

注意:从0.2.3版开始,您现在可以使用Vania Python,但是某些功能当前不可用。

  1. 在Blender中,在插件首选项中将Use20TabScript设置为False。 在Blender中,在插件首选项中将Use20TabScript设置为False。
  2. 在虚幻引擎中启用Pyton Editor Script 插件,Editor Scripting Utilities and Sequencer Scripting。

Blender 插件之 Blender for UE4

Blender 插件之 Blender for UE4

(三)插件的下载和安装

安装

下载插件:

https://github.com/xavier150/Blender-For-UnrealEngine-Addons/releases/download/v0.2.7/blender-for-unrealengine_2.8.zip

百度网盘:

链接:https://pan.baidu.com/s/18llQOE9M7JmVZywvArrePA 提取码:0beu

  1. 打开用户首选项(Ctrl + Alt + U),然后在“附件”下,单击“从文件安装”。然后导航到您下载的.zip文件并选择它。

Blender 插件之 Blender for UE4

  1. 现在它应该出现在窗口中,您可以勾选右上角的复选框以启用它。
    如果您希望每次启动Blender时都启用加载项,请单击用户设置窗口底部的“保存用户设置”。

Blender 插件之 Blender for UE4

  1. 您可以在右侧面板(N)中找到附加组件

Blender 插件之 Blender for UE4

 

发布于 06-08

Blender

虚幻引擎