回到 uni 我记得有一种算法用于计算 2 个关键帧的 x 和 y 值之间的点的 x 和 y 位置,我知道直线的那个
x = ((KeyFrame2.x - KeyFrame1.x)/持续时间)*时间
我的理解是,2 个关键帧之间的差异除以持续时间可以得出每个时间单位(通常为 1 帧)有多少个测量单位(主要是像素),因此您只需乘以该值时间线有多远
即。
x = ((KeyFrame2.x - KeyFrame1.x)/持续时间)*时间
x = ((10 - 0)/10)*3
x = (10/10)*3
x = 1*3
x = 3(在 3 个时间单位后,对象的位置将从 KeyFrame1 沿 x 轴 +3 像素)
这个我理解,但是有人告诉我一个它用于曲线路径,比如一个球向前弹跳,关键帧是当它撞到地面时以及当它处于反弹的顶点时,这就是我已经忘记了,我也不知道我的笔记放哪了
我要问的是用于计算具有这样路径的对象的 x 和 y 位置的算法,我要的是代码相互依赖的数学算法,我想做的是为数字设置动画球体将环绕屏幕中心以获得 Logo ,我已经在代码中移动了对象但是我需要调整关键帧之间的计算
注意:虽然我不是要代码,但这些算法用于动画编程,因此我的问题与一般编程有关
注意 2:KeyFrame2.x 和 KeyFrame1.x 不是代码,我将关键帧视为一个类的实例,它包含诸如 x、y、z、前一帧的持续时间等值
最佳答案
您要求的不是算法,而是方程式。您可以根据要模拟的运动类型使用各种方程式;例如,在重力作用下的弹丸运动可以用抛物线来描述——形式为
的曲线x = a * y^2 + b
对于一些智能力控制的运动,基于高阶多项式或贝塞尔曲线的曲线拟合更为合适。 Google 是您的 friend 。
关于algorithm - 确定某物的 x 和 y 以使其遵循 2 个关键帧之间的曲线的算法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11713986/