在内部和外部点Libgdx周围旋转Sprite

问题描述 投票:0回答:1

如何在同一时间围绕内点和外点旋转Sprite?

如果我喜欢这样:

        sprite.setOrigin(innerX, InnerY);
        sprite.rotate(angle1);
        sprite.setOrigin(outerX, outerY);
        sprite.rotate(angle2);

libgdx围绕外点在angle1 + angle2上旋转精灵。有办法吗?

谢谢

libgdx rotation sprite
1个回答
0
投票

(对不起,我没有足够的评论声誉)你能提供更多信息吗?很难弄清楚这个错误。

截至目前可能的解决方案可能是:

  • 内在价值真的是你期望的价值吗?您是否已记录它们并检查它们是否不同?
  • InnerYstarts与首都'我',这是正确的吗?

编辑:

所以我试图重新创建你的问题,它对我来说很好。也许我的例子可以帮助你:

    sprite = new Sprite(textureAtlas.findRegion("circle14"));
    sprite.setBounds(0, 0 , sprite.getRegionWidth(), sprite.getRegionHeight());

    // This is used to calculate an example innerX and innerY
    sprite.setOrigin(sprite.getWidth()/3f, sprite.getHeight()/3f);
    sprite.rotate(30f);

    // This is used to calculate an example outerX and outerY
    sprite.setOrigin(sprite.getWidth() * 1.5f, sprite.getHeight()*1.5f);
    sprite.rotate(30f);

不要忘记在你的渲染方法中绘制你的精灵,如下所示:

sprite.draw(batch);
© www.soinside.com 2019 - 2024. All rights reserved.