啥是Spline Mesh
虚幻4引擎和Unity3D一个主要的不同就是:虚幻4引擎提供了非常非常多的各种功能。这是因为EPIC也开发游戏,而且是很成功的大作。他们会把游戏项目中一些验证过、可被其他开发者重用的功能整合到引擎层。所以虚幻4引擎要学习的东西非常多,但是如果你掌握的越多,做起项目来很可能就约轻松。:)
本文就介绍虚幻4引擎中的一个很好玩的组件:Spline和Spline Mesh。Spline就是一个曲线,你可以在编辑器中添加控制点,移动控制点,设置控制点的切线等;而Spline Mesh把一个Static Mesh绑定到指定的Spline曲线上,并且根据曲线对Mesh进行扭曲变形。这个功能,可以用来快速制作赛车的车道、河流,管道,绳子/链子等,如下图所示。
上述Demo中的黄色管道是由Spline Mesh Component动态组建的,而初始的素材只是下面这一节管子。
Demo项目代码资源下载
请见CSDN CODE项目:https://code.csdn.net/neil3d/unrealcookbook
打开此项目之后,请见“ SplineMeshDemo”目录。
功能实现详解
上述这个神奇的功能通过一个简单的Blueprint实现。
首先,我们需要创建一个基类为Actor的Blueprint类,然后添加一个Spline组件。这个组件用来在编辑器中编辑曲线。
然后,我们在Construction Script中,检测这个Spline有几段,为每一段动态添加一个SplineMesh组件。如下面的Blueprint所示。新添加的Spline Mesh需要Attach到父节点,并且受到指定其起点、终点、切线等信息。