相对于对象移动背景[关闭]

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了相对于对象移动背景[关闭]相关的知识,希望对你有一定的参考价值。

这是一个Processing 2.x相关问题,但你可以给出一般性答案,我会将其转化为处理草图。我想相对于我在box2d中创建的对象移动我的背景并且遵循一个弹道路径。我希望该对象保留在草图内部,而不是超过草图的宽度。我怎样才能做到这一点?这就是我所尝试的:(显示的图像是一个大图像,是草图宽度的4倍)

void Display(Gulli gulli) {
    imageMode(CENTER);
    if (gulli.isMoving()) {
      Vec2 gulli_pos = gulli.getPosition();
      gulli_pos.mulLocal(-1);  // to move background in opposite direction of the object
      pushMatrix();
      translate(gulli_pos.x+width*1.63, +height/2+gulli_pos.y);
      image(img, pos.x, pos.y);
      popMatrix();
    } else {
      pushMatrix();
      translate(width*1.5, -height/2);
      image(img, pos.x, pos.y);
      popMatrix();
    }
  }
答案

我做了类似的事情,让我试着用这个简单的图画来解释它。

黑色方块是背景图像,灰色是处理的草图屏幕,红色的球是您的移动物体。这样的想法是,当backImage侧面与屏幕侧面之间的距离大于0时,您使用与球相同的速度移动背景图像,但方向相反。如果这种情况发生变化,你就会正常移动球。

希望这可以帮助。关心何塞

以上是关于相对于对象移动背景[关闭]的主要内容,如果未能解决你的问题,请参考以下文章

AS3 - 相对于角度移动阵列对象

当我在屏幕上移动我的 SKEmitterNode 时,如何使 SKEmitter 粒子保持相对于背景?

12个用得着的 JQuery 代码片段

background

如何使对象相对于 image_angle 移动?

速度从另一个移动物体跟踪一个移动物体