不直接实现对象的任何移动。基于事件表事件设置实现自定义运动。
唤境Evkworld中的大多数运动通过操纵两个值来工作:X轴上的速度(dx)和Y轴上的速度(dy)。这些也称为VectorX和VectorY。
自定义运动能力为您存储dx和dy值,并提供有助于轻松实现移动所需的数学和算法的功能
自定义运动每一帧根据dx和dy值调整对象的位置。自定义运动可以使用多个步进,当如果物体移动得非常快,可以帮助更准确地检测碰撞。有三个步进的检测方式:线性,先水平再垂直,先垂直再水平。
设置步进模式,根据移动步长属性来确定步数(非无模式)。举例来说,运动对象和碰撞对象碰撞 0.1秒检查一次,然后如果对象速度非常快,导致检查不到这次碰撞(对象就已经超过碰撞对象了),那么运动对象就会视为穿透了碰撞对象。所以提高检查次数(也就是改变step),比如改成 0.01检查一次,就能避免这个问题。
无:根据速度每一帧判断一次
线性:将对象沿直线朝向目标位置,根据移动步长,检测是否发生碰撞
先水平再垂直:将首先在X轴上触发对象到目的地(触发水平步骤),然后在Y轴上触发(触发垂直步骤)
先垂直再水平:将首先在Y轴上触发对象到目的地(触发垂直步骤),然后在X轴上触发(触发水平步骤)。
如果步进模式不是“无”,则这是每个步骤朝向目标位置的每个刻度的像素距离。默认值为5,如果对象在刻度线中移动20个像素,则它将以四个五像素步长移动。
初始化时启用还是禁用该能力。如果禁用,则可以使用“启用能力”动作在运行时启用它。
当对象正在移动时为真
比较对象的当前速度
当步进移动时、水平步进移动时、当垂直步进移动时触发
将对象的速度设置为0
将对象向当前运动方向的反向运动
设置对象的当前速度
令对象向前或沿某个轴加速
令对象朝某一方向加速
令对象朝某一位置加速
设置对象当前的运动角度
将对象的运动角度顺时针旋转、逆时针旋转
停止对象当前的步进移动,令其在当前帧内不再触发步进信号
当对象与刚体重叠时,将其移动到其他位置
设置是否启用该能力
当前运动在垂直方向上的速度
当前运动在水平方向上的速度
当前对象的运动速度
当前运动的方向