Spline Component(不是SplineMesh)是UE4常用的样条曲线组件,是生成各种可视化路径、控制物体运行轨迹、生成排列组合模型等的基础。
Spline可以不断增加控制点,以生成复杂的曲线,每个控制点都有两个调整角点进行样条曲线调整。
SplineMesh Component是UE4提供的一种按样条曲线和模型模板生成路径模型的组件,通过样条曲线起点-终点和两个调节角点(一共四个节点)生成一段曲线路径模型。
给SplineMesh Component指定Mesh模型
生成指定路径模型通过调整四个角点,可以扭曲模型(需要放置于场景中)
Spline Mesh只能通过起点-终点生成一段路径模型,如果需要生成连续的道路、管道等复杂曲线模型,需要借助Spline Component和蓝图帮助SplineMesh Component生成多段连续的路径模型。
方法如下:
-
创建一个空Actor
-
添加一个Spline Component(注意不是Spline Mesh Component)
-
在Construction添加构造蓝图
Spline Component每个Segment分段循环,借助分段的四个角点创建Spline Mesh Component并动态加入Root Scene Component。
-
指定SplineMesh Component模型
选中Add Spline Mesh Component蓝图节点,右侧Details面板中可以指定生成模型,调整方向等
-
编译后在预览中就可以看到动态生成的连续模型了
-
将蓝图Actor放置于场景,动态编辑Spline Component,生成多段Spline Mesh连续路径模型
-
如果对于模型大小不满意,可以调整模型缩放比例
注意我们不能直接调整节点的缩放Scale,需要调整模型本身尺寸,一种办法是重新调整模型再导入,更好的办法是借助UE4的模型修改工具
选择模板模型,进入模型编辑界面,在Details面板上有Build Scale属性,可以重新修正模型尺寸
注意,沿路径方向的缩放值不要调整
-
创建模型碰撞体
模型碰撞默认采用Simple Collision简单碰撞,对于管道类路径模型就不适合了,需要修改为Complex Collision复杂模型碰撞检测。方法是在模板模型的Details面板的Collision中选中Use Complex Collision As Simple。(不指定Complex Collision Mesh的情况下,模型使用Simple Collision简单碰撞检测,Use Complex Collision As Simple就是用模型自身碰撞检测替代简单模型检测)