如何在2d Java中旋转精灵

时间:2013-05-30 19:16:22

标签: java game-engine

我正在制作一个向导游戏,我从精灵表中加载精灵。我使用像素数组来显示精灵。

这是我的sprite.java https://github.com/thefoothing/Java-2d_game/blob/master/Sprite.java

这是我的game.java https://github.com/thefoothing/Java-2d_game/blob/master/Game.java

如何让我的精灵旋转?

2 个答案:

答案 0 :(得分:1)

不要使用像素阵列来渲染你的游戏......这是不值得的。没有性能提升。你使用所有的CPU功率来渲染图像,更不用说手动更改像素数据是非常密集的。使用具有兼容图像的简单绘制调用可以为您的gpu提供一些负载,并使您可以更好地控制各个精灵,而不是。

相信我,像素渲染更好/更快是一个神话。 :)

答案 1 :(得分:0)

AffineTransform reset = new AffineTransform();
reset.rotate(0,0,0);
Graphics2D g2 = (Graphics)g;
g2.rotate(angle, x, y);
//draw image here
g2.setTransform(reset);

Graphics2D还可以使用基本的Graphics类

完成其他所有操作