ミサイル砲塔の bufferedImage を回転させて、ターゲットを追っているように見せようとしています。基本的には AffineTransform/ affinetransform で簡単にできます
一言で言えば私の現在のコードは次のとおりです。
public BufferedImage tower = null;
try
{
tower = ImageIO.read(SpriteSheet.class.getResource("/spriteSheet/testTower.png"));
}
catch(IOException e)
{
AffineTransform tx = AffineTransform.getRotateInstance(rotationRequired, locationX, locationY);
AffineTransformOp = op = new AffineTransformOp(tx, AffineTransformOp.TYPE_BILINEAR);
//then I draw it using
g.drawImage(op.filter(tower, null), towerLocationX, towerLocationY, null);
これは機能しますが、私がやりたいのは、bufferedImage を変換 (回転) し、新しく回転したピクセル データをピクセル配列にコピーしてから画面に描画することです。 png を画面に直接表示します。
しかし、私は何を知っていますか。2D ゲームは回転する画像を正確にどのように描画しますか? 私はそれを正しく行っていますか、またはこれを行うためのより良い/よりメモリ効率の良い方法はありますか?