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

来源:互联网 发布:淘宝未18购买虚拟物品 编辑:程序博客网 时间:2024/05/03 08:22

虚幻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 0
原创粉丝点击