终极曲线解决方案
文档
- 官方文档,edge浏览器有时不能翻译为中文,使用google浏览器翻译中文,结合英文阅读比较好
列车控制
-
列车组件:TrainManager,依赖组件:CurvySpine(轨道路径)
-
车厢组件:CarManager
-
列车由车厢和贯通道的遮蓬拼接而成,实际控制的是车厢,贯通到根据两个切面自动跟随绑定的车厢运动
-
运行原理:控制每个车厢在轨道上的距离,根据当前列车速度计算出单位时间上的距离,更新列车位置
-
列车启动:列车状态变为加速状态,列车速度为0变为列车运行最大速度,列车状态更新为匀速状态,此时,列车不再加速
-
列车刹车:列车状态变为刹车状态,刹车是从当前速度,直到速度为0,列车状态更新为None,此时需要一个刹车距离来求得需要多大的加速度,
-
列车停车:列车状态变为None状态,列车的速度立即设置为0,列车停在当前位置
-
切换运行方向:调换运行方向,切换控制组件的Direction属性,同时切换检测刚体
-
列车检测刚体:在列车的头尾各有一个检测刚体,用于检测轨道上的“刹车触发器”和“停车触发器”,列车上行运行时启用上行检测刚体,下行运行时启用下行检测刚体
注意事项,列车的根节点不会产生位移,只有根节点下的车厢节点会产生移动
连接点
应用场景:轨道道岔切换
创建连接点
-
官网文档 https://curvyeditor.com/documentation/splines/connections
-
简要创建举例
创建:
结果:
连接点控制
https://curvyeditor.com/documentation/splines/connections
使用连接组件,可设置到达连接点后,运行路径
官方文档描述:
仅样条控制器。
这允许您指定样条控制器在到达连接时应如何移动。您可以设置以下行为之一:
-
当前文本样条线:控制器将继续在当前样条线上移动,就好像没有连接一样。
-
Follow Up Spline:控制器将继续在包含 Follow-Up 的样条线上移动(如果有),否则将继续在当前样条线上移动。
-
随机样条线:控制器继续在随机选择的连接样条线之一上移动。
-
Follow Up 否则 Random:控制器将继续在包含 Follow-Up 的样条线上移动(如果有的话),否则将继续在随机选择的连接样条线之一上移动。
-
自定义:定义您自己的连接样条线选择逻辑。您可以通过分配具有继承自 ConnectedControlPointsSelector 的组件的 GameObject 来实现此目的。