前言

“Morph Targets” 指设定一个或多个目标,然后使顶点朝着目标变形。

我查到UE中有两种实现方式:

  • 基于骨骼Mesh的。
  • 基于StaticMesh的。详见Static Mesh Morph Targets。此时变形将通过材质中的顶点偏移实现,而移动的数据将存在UV中,即有几个变形目标则多存几套UV。

本篇的实验是基于骨骼的。
目标是实验 Maya、Houdini、Blender 中导出 Morph Targets 资源到UE的流程。

参考资料:

  • FBX Morph Target Pipeline 是UE官方的文档,其中包含了Maya与3dsMax的流程。
  • Unreal Engine 4 Tutorial - Morph Targets (Blender) 是一个三分钟的视频介绍如何在Blender中设置于导出
  • Houdini Blend Shapes to Unreal Engine Morph Target是一个三分钟的视频介绍如何在Houdini中设置于导出

Maya中的设置与导出

首先,复制出想要变形的几何体。比如我想要对这个正方体变形,并且有两个变形的目标,则复制出两份正方形:

然后,对复制出的几何体做想要的变形。比如这里随便移动一下顶点:

接着,创建BlendShape时:

  1. 先按住Shift按照变形1、变形2、基础几何体的顺序选择几何体。
  2. 然后选择变形下的融合变形(BlendShape),即可创建一个BlendShape
  3. 随后在属性编辑器中可以找到这个BlendShape,可以在其中调整权重值。

整个操作如下:

创建结束后,就可以删掉变形的几何体了。


导出时FBX时,启用动画、变形模型、混合变形

导入到UE

导入FBX时,勾选Skeletal Mesh和Import Morph Targets

随后会生成SkeletalMesh资源,点开后可以在 Morph Target Previewer 中改变 Morph Target 的权重并预览:

Houdini的设置与导出

使用 Blend Shapes 节点将基础几何体、变形1、变形2连接起来。在节点的参数界面应可以改变混合的系数。

然后,可以通过 ROP FBX Output 节点将其输出。

之后的导入设置和之前一样。

导入后效果:

Blender的设置与导出

对于想要变形的几何体,在Properties窗口的Object Data Properties分栏下,点击加号按钮(Add Shape Key)来添加基础的状态以及想要变形的状态。

选择变形的状态,然后对几何体进行变形:

随后导出FBX。

然后,导入UE的设置和之前一样。

学习在UE中导入 Morph Targets 资源相关推荐

  1. 学习在UE中使用RVT(RuntimeVirtualTexture)将物体与地形混合过渡

    前言 当物体放在地形上并与地形有穿插时,其交界处通常会看到硬接缝.在以前,使用RenderTargets是一个解决方案:将地形等信息渲染到贴图上,其他物体就可以采样这张贴图了,随后根据接近地形的程度, ...

  2. 实验观察UE中HDA资源与HDA源文件的关系

    目标 当在UE中通过HoudiniEngine将一个HDA导入引擎后,就会生成一个HDA资源. 然而,这并不意味着后续引擎中的使用,就和 HDA源文件(.hda) 完全无关了. 但也不是说,HDA资源 ...

  3. 学习在Houdini中导出VAT(Vertex Animation Texture)给UE

    前言 主要参考资料是 VAT 3 | Soft Body | Unreal.不过在效果的复杂度上做了简化,只保留VAT相关的最基本操作. 0. 创建测试用动画 这里我的动画很简单. 首先创建一个Sph ...

  4. QML中导入JavaScript资源

    QML中导入JavaScript资源 QML中导入JavaScript资源 从QML文档导入JavaScript资源 在JavaScript资源中导入 从另一个JavaScript资源导入JavaSc ...

  5. Android开发学习:在Eclipse中导入Android项目方法

    在Eclipse中导入Android项目方法的具体步骤如下: 1.启动Eclipse,依次选择File---Import,如下图所示: 2.在弹出的Import窗口中选择Existing Projec ...

  6. python中导入模块队列_【每日学习】Python中模块的导入

    模块的概念: 每一个以扩展名py结束的Python源代码文件都是一个模块 模块名同样也是一个标识符,需要符合标识符的命名规则 在模块中定义的全局变量.函数.类都是提供给外界直接使用的工具 模块就好比工 ...

  7. 学习 MySQL中导入 导出CSV

    MySQL中导出CSV格式数据的SQL语句样本如下: Sql代码   select * from test_info into outfile '/tmp/test.csv' fields termi ...

  8. mysql 导入导出 csv_学习 MySQL中导入 导出CSV

    Sql代码   select * from test_info into outfile '/tmp/test.csv' fields terminated by ',' optionally enc ...

  9. java中的导入gnu,【JAVA学习笔记】静态导入

    1.使用方法 package tips; public interface Constants { public static final int PORT_NUMBER = 90; public s ...

最新文章

  1. m.pythontab.com_python字符串连接的三种方法及其效率、适用场景详解
  2. 基于第四层交换技术的负载均衡
  3. Google 发布 Cloud AutoML 降低机器学习门槛,调参民工前景堪忧
  4. 大数据,正在到来的数据革命——涂子沛
  5. 展望2015把C++版本的掼蛋程序写好
  6. /etc/profile、/etc/bashrc、~/.bash_profile、~/.bashrc和~/.bash_logout
  7. python hello world重复_查找数组中重复的数字-python版
  8. BZOJ_1003_[ZJOI2006]_物流运输_(动态规划+最短路)
  9. 不收费的数据恢复软件_有救了!快收好这7个数据恢复神器
  10. H5/web前端工程简历中的项目经验
  11. 2021金三银四Java面试突击集锦
  12. 8cm等于多少像素_1寸照片尺寸是多少,对应的像素是多少
  13. 突然有一天,我老无所依
  14. 计算机会计期中考试,2017会计从业资格考试《会计电算化》基础阶段备考题
  15. 自动化操作桌面之根据图片移动鼠标
  16. 【java】Integer == Integer?
  17. error C2059: syntax error : 'type'
  18. c语言处理rna序列,RNAseq 完整操作流程以及后续例子操作
  19. linux 查看was端口,Linux如何查看端口状态
  20. H7N9?生活还得继续~~适合边玩边学的HTML5五彩连珠游戏 1

热门文章

  1. 七巧板涂色算法(Python)
  2. java计算机毕业设计小说阅读网站系统源码+lw文档+系统+数据库
  3. [问题记录]js将事件写在函数之前解决IE8的兼容性问题
  4. 计算机少年宫活动记录表,小学乡村少年宫计算机兴趣小组活动记录表.docx
  5. 银联开放平台操作指南合辑
  6. 四则运算——结对项目报告
  7. bat脚本的基本命令语法
  8. 什么是期权期权的简介蕴含着哪些知识
  9. 葫芦岛市一高中2021年高考成绩查询表,【百姓生活】快来看你所在高中的2019高考排名!葫芦岛文、理科前十名单及成绩出炉!...
  10. 【实战】文本驱动的StyleGAN2图像处理(二):潜码映射器(Latent Mapper)