http://blog.csdn.net/shangguanwaner/article/details/50392896

虚幻4 捏脸和换装系统实现

捏脸和换装系统基本上是一个游戏的标配了,这里记录下在虚幻4引擎中实现这样一个系统的具体思路和步骤。 
先看看最终的效果: 

截图来自国外网友的Demo,文章最后会给出下载地址。这个Demo实现了自定义肤色、上下装、肢体 尺寸等等,可以基本满足实际项目的需求。

实现原理

换装系统实现的关键在于建模和绑定,这两个步骤。 
人体建模的时候,先做出裸体模型,然后在裸模的基础上建模头部、服装、饰品、武器等。人体模型和头部、服装、饰品这些不能跟身体是一个模型,必须要分开。 
建模完毕之后,开始绑定。绑定要注意的是,所有的模型都必须绑定同一套人体骨架,即使是一个小小的饰品,最好也关联全部的骨骼。同样绑定也是必须分开的,每个模型分别绑定。 
面部五官的变形以及人体上比如胸部的变形,需要在建模软件中实现顶点变形,虚幻4支持导入这些变形。具体的实现可以参考这里的文档。记得人体做变形之后,它的服装等也要做相应的变形,这样才能配合好。 
最后就是动画了。为了让服装能够配合上身体的动作,人体的动画同样也要复制给服装等其他模型。假如允许修改四肢的尺寸,可能还需要做额外的工作。 
举个例子,比如允许自定义腿的长度,那你动画就需要做腿最短时的动画,腿最长时的动画。虽然也可以在引擎中用顶点变形来实现,不过有时候顶点变形并不一定能达到你想要的效果,这时候这种方法就派上用场了。虽然麻烦点,但是能精确控制最终的结果。 
总结一下,就一点,想做好,全靠美工。 
下面分别说下几个比较关键的地方在虚幻4中如何实现。

模型的组织方式

本人在实践中组织了一种方式,基本可用,截图如下: 
 
上图中,Mesh是角色的模型,UpperCloth是上装模型,LowerCloth是下装模型,Hat是帽子的模型。如需其他的附加物品,都挂到Mesh节点下面。为了简便,角色模型和服装等模型都共用同一个动画蓝图。 
在运行时,根据用户的选择,修改模型和它对应的动画蓝图,就完成了换装。要脱掉,把模型隐藏即可。

自定义胸部大小

做这个的原理和捏脸的原理是一样的,这里我以自定义breast大小为例。 
假定美术已经在建模软件中制作好了breast的顶点变形,并导入了虚幻4编辑器。形式是这样的: 

红圈内是3个顶点变形,分别控制胸部的大小,腿的粗细以及身材的胖瘦。 
接着我们要在这个模型对应的动画蓝图中应用变形。 

第一个SetMorphTarget节点是控制服装变形,第二个节点控制人体的变形。这样给动画蓝图传入不同的Breast Size Morph变量值,就能达到控制Breast大小的效果。 
假如需要更逼真的效果,比如Breast是挺拔还是下垂,可以让美术在这个部位增加更多的变形控制,操作原理是一样的,只不过参数会多一些。

自定义肤色

肤色自定义,有两种,一种是更换材质,一种是动态更新材质实例的参数。

总结

大概的实现原理就是这样,捏脸和换装系统的程序部分是很简单的,主要的工作都在美术建模、绑定那里。所以,最终游戏的效果如何,美术真的是太重要了。

Demo下载 
链接:http://pan.baidu.com/s/1eQRwhGI 密码:5ji2

2

虚幻4 捏脸和换装系统实现相关推荐

  1. 用 UE 虚幻引擎做个捏脸小功能~~

    最近在学习 UE 相关的使用,正好看到一篇文章讲解用 Control Rig 实现简单捏脸功能,这种小而美的完整案例挺适合来练手的,涉及到了 UI.蓝图.动画.骨骼等方面,值得推荐一下. 从这个小功能 ...

  2. 奥特曼html代码,和平精英捏脸代码奥特曼

    和平精英自从更新的新的捏脸玩法之外,玩家们就发明出来了各种各样的脸型,除了明星.小丑之外,还有大家喜爱的奥特曼!最近万几门被奥特曼的信息疯狂洗脑,还去重新看了一遍奥特曼,回忆自己的童年,还想在游戏里看 ...

  3. 游戏角色捏脸原理分析

    通过控制人物脸部骨骼的旋转,缩放和位置,来控制脸部肌肉的变化,以达到变脸和身材改变的效果. 需要注意:一组变化参数可以是多个骨骼组合而成,且每个骨骼应该是有变换的区间限值. 人物的微表情可以通过mor ...

  4. 《赛博朋克2077》是捏脸游戏?上科大学生社团开发了一款赛博“滤镜”

    作者 | eEhyQx 出品 | AI科技大本营 现象级大作<赛博朋克2077>终于没有跳票顺利发布了!你通关了吗? 来自上海科技大学的学生社团GeekPie打造了一款全新的"滤 ...

  5. 骨骼捏脸功能的实现方法

    这是第132篇UWA技术知识分享的推送.今天我们继续为大家精选了若干和开发.优化相关的问题,建议阅读时间10分钟,认真读完必有收获. UWA 问答社区:answer.uwa4d.com UWA QQ群 ...

  6. 爆火“捏脸”APP崽崽ZEPETO,如何开启虚拟世界的社交IP?

    近日,爆火虚拟社交软件「崽崽ZEPETO」在融入国内市场.提升多元化社应用的需求下,与来自网易核心架构的通信与视频服务商「网易云信」达成重要合作. 崽崽ZEPETO是一款超级热门的虚拟社交APP,早在 ...

  7. 服务器不删档的设置_不删档预捏脸开启,快来体验次世代黑科技!

    昨天,执行者们期待的不删档日期正式定档:今天,EVA又要为执行者们带来一个好消息! 首先请跟着EVA回顾一下我们的定档信息: 龙族幻想7月17日开启预下载!7月18日正式不删档开服! 7月17日当天E ...

  8. 天涯明月刀怎么导入php捏脸数据,天涯明月刀捏脸数据怎么导入 天涯明月刀捏脸数据在哪...

    天涯明月刀捏脸系统可谓是一大特色,很多新手表示自己捏的脸总是不合心意,好不容易捏出一个不错脸又不知道如何导出保存.网上下载的捏脸数据不知道怎么导入,捏脸数据的存档位置不知道在哪.别着急,小编为大家做了 ...

  9. rust能捏人不_吃鸡:捏脸系统上线后,玩家们都嗨了

    最近手游吃鸡版本大更新,上线了捏脸系统,这对于吃鸡来说又多了一种趣味性的玩法,话不多说,下面瓜妹就给大家分享下玩家们的骚操作(最后还有数据包哦). 新增自定义脸型功能,玩家的想象力太丰富了 本来吃鸡上 ...

最新文章

  1. Java学习总结:55(偶对象保存:Map接口)
  2. POJ 3041 Asteroids 二分图匹配
  3. SQL server 2008 数据库企业版安装教程图解 (转载)
  4. mysql oneproxy_利用oneproxy实现mysql读写分离搭建笔记
  5. 疯狂html5+css3+javascript讲义 pdf_成为一名优秀的HTML5前端工程师需要掌握哪些技能?...
  6. GBin1专题之Web热点秀#15
  7. 0.Overview----Machine Learning
  8. 如何基于Docker快速搭建Elasticsearch集群?
  9. 算法笔记:简单的字符串模式匹配-KMP算法(与BF算法对比时间复杂度)
  10. 如何查html病毒svchost.exe,小编教你在Win7系统中检查svchost.exe进程是否为病毒的方法步骤...
  11. php+mysql+记账系统_做了个php+mysql简单记账系统
  12. 图形学中画正方形的几种方式
  13. 千脑跳转页面下的安全分析
  14. smart700iev3 程序下载设置_smart 700ie v3下载程序时提示OS更新-工业支持中心-西门子中国...
  15. android wear已停止运行,魔百盒显示“很抱歉CMCCWiMo已停止运行解决方法
  16. 城阳区人才共有产权住房细则
  17. 东莞地铁1号线黄江北站主体结构全面封顶
  18. VMWare安装Mac OS X
  19. 数据模型与业务模型(领域模型)的区别
  20. Javascript中click与blur事件的顺序详析

热门文章

  1. cocos2dx java 乱码_[cocos2d-x] --- 完美解决中文乱码
  2. java查找网站在百度排名_百度网站快排系统 - 网站排名如何优化?
  3. python中search和match的区别_Python中正则表达式match()、search()函数及match()和search()的区别详解...
  4. java executequery_java execute、executeQuery和executeUpdate之间的区别
  5. 自动化测试用例设计的原则
  6. linux history 看更多历史记录_Linux内核5.3+将更多支持F2FS
  7. strip python里面是什么意思_python中的strip是什么意思
  8. c语言文件分类二进制,C语言实现文件版(二进制文件版)通讯录
  9. 未能加载文件或程序集mysql.web.v20__关于MySQL Server影响ASP.NET网站使用的问题:未能加载文件或程序集MySql.Web.v20...
  10. 翻转课堂实践:让学生转换角色试一试