UE4:spline模型生成并自主控制。

来源:互联网 发布:c66140数控车床编程 编辑:程序博客网 时间:2024/05/21 20:11

说明:上周搞的项目是铁路的生成和检修,包工头要求要能生成铁路,并且在运行过程中可以随意控制铁路的属性。比如,在任意距离抬高任意距离铁路。其实,生成好生成,关键点在于后面的控制铁路的属性。刚好虚幻商城里面有一个牛逼的铁路系统,我光翻译他的蓝图就翻译了三天,三天下来,一脸蒙蔽。最后把他的铁轨生成系统给摘了出来,然后又简化了很多很多,所以,这篇文章里面介绍的功能不到的原功能的1%。有兴趣的朋友可以去瞅瞅官方商城里面的那个屌爆天的小火车系统。我这个只是在原版的基础上改巴改巴鼓捣出来的,属于低配版的低配版。

1.思路:

  构造函数里面写好铁路的生成,updatemesh函数更新模型,键盘事件添加控制点-splinepoint,tick事件实时调用updatemesh函数。就这样一个简单逻辑。

2.铁路生成:

铁路的生成的原理如图2.1所示:

                                                                                                                                                             图2.1
这是说明一下,为什么限制切线呢,当spline很长的时候,同时点很少的话,会造成过长的切线,同时会使模型发生严重的破损。当添加的了切线限制,会有效的避免模型发生破损。

3.更新铁路函数:



                                                                                                                                                     图 3.1
更新模型的函数里面,需要添加一些本地变量来进行控制。


4.手动添加splinepoint



这里用了addsplinepointatindex节点来给spline添加指定的point。然后键控刚才的point,tick事件实时监测到spline的变化,并把这种变化反馈到update的函数上,更新模型。

总结:我这里只简单的记录下制作思路,具体的内容可能需要大量的篇幅去叙述。有需求的朋友可以自己按照这个思路研究一下。不懂的地方咱们在共同交流一下。

QQ:251221274 


























原创粉丝点击