【问题标题】:How to rotate an object along a circular path?如何沿圆形路径旋转对象?
【发布时间】:2016-09-22 05:12:01
【问题描述】:

我正在尝试使用 webGL 编程语言实现沿圆形路径移动的自行车。我的问题与自行车本身的旋转有关,它在圆周运动期间不会自行旋转,但它仍保持其初始角度,尽管物体沿轨道以圆形方式正确平移。

为了给自行车提供圆周运动,我使用余弦和正弦函数,并且每次都改变角度。我必须考虑的轴是 x 轴和 z 轴,而 y 轴是固定的。

有什么建议吗?

【问题讨论】:

    标签: javascript rotation webgl translate-animation


    【解决方案1】:

    如果我理解正确的话,你想要的基本上是调整自行车的方向,使其面向运动方向?

    这通常通过计算模型(自行车)的 modelToWorld 矩阵来完成。您的矩阵库可能有一个 .lookAt 函数,您应该使用它来计算 modelToWorld 矩阵。

    您应该能够计算出自行车的前进方向。如果它在一个圆圈中移动,那么它是normalize(cross(normalize(bikePos-circleCenter), UP_VECTOR))

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-10-03
      相关资源
      最近更新 更多