将精灵 os 更改为 LIBGDX 中的矩形
change sprite os a Rectangle in LIBGDX
所以我有一个矩形,我想在不改变其位置的情况下将其精灵顺时针旋转 90 度。
这是我得到的:
//sprites I want to use
Up = new Texture("left.png");
Down = new Texture("right.png");
Left = new Texture("down.png");
Right = new Texture("up.png");
//the Rectangle
square = new Rectangle();
square.x = 630;
square.y = 720 / 2 - 32 /2;
square.width = 32;
square.height = 32;
在渲染器上()
batch.begin();
batch.draw(Right, square.x, square.y);
batch.end();
所以我想用上面的精灵改变矩形精灵。
非常感谢您的帮助!
它将帮助您实际创建带有纹理的精灵。例如:
Sprite upSprite = new Sprite(Up)
精灵原点自动位于左下角,并围绕该点旋转。将原点设置为精灵的中间:
upSprite.setOriginCenter()
然后将精灵旋转 90 度,您可以这样做:
upSprite.setRotation(90)
现在你可以画一样了,不过我建议更新精灵位置:
upSprite.setPosition(square.x, square.y)
这样你只需要做
upSprite.draw(batch)
有关详细信息,请查看 Sprite documentation。
所以我有一个矩形,我想在不改变其位置的情况下将其精灵顺时针旋转 90 度。
这是我得到的:
//sprites I want to use
Up = new Texture("left.png");
Down = new Texture("right.png");
Left = new Texture("down.png");
Right = new Texture("up.png");
//the Rectangle
square = new Rectangle();
square.x = 630;
square.y = 720 / 2 - 32 /2;
square.width = 32;
square.height = 32;
在渲染器上()
batch.begin();
batch.draw(Right, square.x, square.y);
batch.end();
所以我想用上面的精灵改变矩形精灵。 非常感谢您的帮助!
它将帮助您实际创建带有纹理的精灵。例如:
Sprite upSprite = new Sprite(Up)
精灵原点自动位于左下角,并围绕该点旋转。将原点设置为精灵的中间:
upSprite.setOriginCenter()
然后将精灵旋转 90 度,您可以这样做:
upSprite.setRotation(90)
现在你可以画一样了,不过我建议更新精灵位置:
upSprite.setPosition(square.x, square.y)
这样你只需要做
upSprite.draw(batch)
有关详细信息,请查看 Sprite documentation。