Hello . 大家好
今天给大家带来unreal布料和角色的交互
我是木偶心没
Unreal的布料系统从4.16以后,就使用了NVIDIA的NvCloth Solver替换了之前的Apex布料的解算器Solver,但是又仍然兼容了之前的workflow(仍然可以通过第三方软件来制作apx文件然后导入到引擎中)。比如说常见的三方软件是指MAX,MAYA和PhysX SDK自带的ClothingTool。
本次分享主要是在官网动画效果的基础上面,解决布料和人的外部碰撞。最后效果如下图
我们这里因为官网有详细的教程,所以省略掉基本动画的制作过程。参考:https://docs.unrealengine.com/zh-CN/Engine/Physics/Cloth/Overview/index.html
我们在完成好的布料里面运行第三人称游戏发现,当前的角色与布料是没有任何交互,因为当前布料不识别角色的碰撞,所以现在我们先右键布料,然后选择Asset Actions中的Create Blueprint Using This,给布料创建一个蓝图然后双击打开我们的蓝图,选择mesh,右边属性勾选Colide with Environment
完成以后保存编译将新蓝图拉到场景中并运行游戏,
发现角色和布料之间还是没有进行碰撞,但是和我们拉进去的box就会有碰撞效果。这是因为布料只能识别world static的碰撞预设,所以现在我们打开第三人称角色蓝图,勾选mesh的collision presets为BlockAll,然后保存编译 现在我们发现角色依然不能和布料进行碰撞,这是因为游戏过程中布料的碰撞解算并没有一直都在,所以需要打开布料蓝图,然后添加如下节点。 表示我们不断更改布料的位置,每次更改以后都会重新进行布料系统的碰撞计算。(能达到效果的同时也会比较性能的耗费也会比较高)现在我们保存编译并运行游戏 可以看到有了交互效果,由于布料在随时更新位置,所以具体需要看项目需求来进行合理运用。- End -
ABOUT US 关于我们微信群
公众号
知识店铺
喜欢Thepoly的可以通过三种方式与我们建立联系。分别是公众号、微信群以及QQ群。公众号是我们最为官方的窗口,更多内容都必须关注公众号后才能获取。另外现已开通网站:www.thepoly.cn更多精彩请关注我们。