【发布时间】:2017-12-22 02:27:41
【问题描述】:
我通过在 sprite 上调用 draw 并在之后立即在 SpriteBatch 上调用 draw 来绘制相同的 sprite。
target.sprite.draw(game.batch);
game.batch.draw(target.sprite, target.sprite.getX(), target.sprite.getY(),
target.sprite.getOriginX(), target.sprite.getOriginY(),
target.sprite.getWidth(), target.sprite.getHeight(),
target.sprite.getScaleX(), target.sprite.getScaleY(),
target.sprite.getRotation(), false);
...但是第二个调用与第一个调用相比以 90 度角绘制精灵。当我减去 90 度进行补偿时,精灵不会对齐,因为它们相对于屏幕围绕同一点旋转,但相对于它们自身的点不同(使用 SpriteBatch.draw() 调用绘制的点围绕原点旋转用 Sprite.draw()) 绘制的那个。
如何进行等效的Sprite.Batch.draw() 呼叫?
【问题讨论】:
-
您能否详细说明您为什么要这样做?
-
我需要使用动画而不是精灵,所以我必须在游戏批次而不是精灵上调用 draw。但由于动画未对齐,我尝试使用相同的精灵而不是动画进行调用,以消除动画作为嫌疑人。
标签: libgdx